From 0dc1b00e542d816992d6294365ea6e432e499f1d Mon Sep 17 00:00:00 2001 From: olton Date: Sun, 31 Dec 2023 10:43:23 +0200 Subject: [PATCH 01/40] upd watch command --- easydata.js/packs/core/package.json | 4 ++-- easydata.js/packs/core/rollup.config.mjs | 2 +- easydata.js/packs/crud/package.json | 4 ++-- easydata.js/packs/crud/rollup.config.mjs | 2 +- easydata.js/packs/ui/package.json | 4 ++-- easydata.js/packs/ui/rollup.config.mjs | 2 +- lerna.json | 5 +++-- nx.json | 5 +++++ package.json | 8 ++++---- playground/EasyDataAspNetCoreTest01/package.json | 2 +- playground/EasyDataAspNetCoreTest02/package.json | 2 +- 11 files changed, 23 insertions(+), 17 deletions(-) diff --git a/easydata.js/packs/core/package.json b/easydata.js/packs/core/package.json index b97b8e9b..f5a70d24 100644 --- a/easydata.js/packs/core/package.json +++ b/easydata.js/packs/core/package.json @@ -7,8 +7,8 @@ "module": "./dist/easydata.core.es.js", "scripts": { "clear": "shx rm -rf dist/* docs/*", - "build": "npm run clear && rollup --config", - "watch": "npm run clear && rollup --config -w", + "build": "npm run clear && rollup -c", + "watch": "rollup -c -w", "docs": "typedoc src/public_api.ts --out ./docs", "test": "vitest run" }, diff --git a/easydata.js/packs/core/rollup.config.mjs b/easydata.js/packs/core/rollup.config.mjs index ec35bef6..d996c6a2 100644 --- a/easydata.js/packs/core/rollup.config.mjs +++ b/easydata.js/packs/core/rollup.config.mjs @@ -26,7 +26,7 @@ export default [ { input: './src/public_api.ts', watch: { - include: 'src/**/*.ts', + include: 'src/**', clearScreen: false }, plugins: [ diff --git a/easydata.js/packs/crud/package.json b/easydata.js/packs/crud/package.json index 43614b4c..c51cd6bf 100644 --- a/easydata.js/packs/crud/package.json +++ b/easydata.js/packs/crud/package.json @@ -8,8 +8,8 @@ "scripts": { "test": "vitest run", "clear": "shx rm -rf dist/* docs/* lib/*", - "build": "npm run clear && rollup --config", - "watch": "npm run clear && rollup --config -w", + "build": "npm run clear && rollup -c", + "watch": "rollup -c -w", "docs": "typedoc src/public_api.ts --out ./docs" }, "author": "Korzh.com", diff --git a/easydata.js/packs/crud/rollup.config.mjs b/easydata.js/packs/crud/rollup.config.mjs index b9273f5b..1f223d23 100644 --- a/easydata.js/packs/crud/rollup.config.mjs +++ b/easydata.js/packs/crud/rollup.config.mjs @@ -29,7 +29,7 @@ export default [ { input: './src/public_api.ts', watch: { - include: 'src/**/*.ts', + include: 'src/**', clearScreen: false }, plugins: [ diff --git a/easydata.js/packs/ui/package.json b/easydata.js/packs/ui/package.json index 044b4002..1c76cb9f 100644 --- a/easydata.js/packs/ui/package.json +++ b/easydata.js/packs/ui/package.json @@ -8,8 +8,8 @@ "scripts": { "test": "vitest run", "clear": "shx rm -rf dist/* docs/*", - "build": "npm run clear && rollup --config", - "watch": "npm run clear && rollup --config -w", + "build": "npm run clear && rollup -c", + "watch": "rollup -c -w", "docs": "typedoc src/public_api.ts --out ./docs" }, "author": "Korzh.com", diff --git a/easydata.js/packs/ui/rollup.config.mjs b/easydata.js/packs/ui/rollup.config.mjs index 0209caca..ea4099df 100644 --- a/easydata.js/packs/ui/rollup.config.mjs +++ b/easydata.js/packs/ui/rollup.config.mjs @@ -29,7 +29,7 @@ export default [ { input: './src/public_api.ts', watch: { - include: 'src/**/*.ts', + include: 'src/**', clearScreen: false }, plugins: [ diff --git a/lerna.json b/lerna.json index d990918d..968f9ddf 100644 --- a/lerna.json +++ b/lerna.json @@ -1,8 +1,9 @@ { "$schema": "node_modules/lerna/schemas/lerna-schema.json", - "version": "0.1.0", + "version": "independent", "packages": [ - "easydata.js/packs/*", "playground/*" + "easydata.js/packs/*", + "playground/*" ], "command": { "run": { diff --git a/nx.json b/nx.json index a17d0dba..6c2bf2a1 100644 --- a/nx.json +++ b/nx.json @@ -16,6 +16,11 @@ "dependsOn": [ "^build" ] + }, + "watch": { + "dependsOn": [ + "^build" + ] } } } diff --git a/package.json b/package.json index cffa878b..15b7c2d2 100644 --- a/package.json +++ b/package.json @@ -1,14 +1,14 @@ { - "name": "easydata.js", + "name": "@easydata/root", "private": true, "workspaces": [ - "easydata.js/packs/*", "playground/*" + "easydata.js/packs/*", + "playground/*" ], "scripts": { "clean": "lerna clean", "test": "lerna run test", - "watch": "lerna run watch --parallel --scope=@easydata/*", - "watch:all": "lerna run watch --parallel", + "watch": "lerna run build --scope=@easydata/* && lerna watch --scope=@easydata/* -- lerna run build --since --include-dependents", "watch:core": "lerna run watch --scope=@easydata/core", "watch:crud": "lerna run watch --scope=@easydata/crud", "watch:ui": "lerna run watch --scope=@easydata/ui", diff --git a/playground/EasyDataAspNetCoreTest01/package.json b/playground/EasyDataAspNetCoreTest01/package.json index f0a9e632..c374a929 100644 --- a/playground/EasyDataAspNetCoreTest01/package.json +++ b/playground/EasyDataAspNetCoreTest01/package.json @@ -6,7 +6,7 @@ "license": "ISC", "scripts": { "build": "rollup --config", - "watch": "rollup --config -w" + "watch1": "rollup --config -w" }, "dependencies": { "@easydata/ui": "*", diff --git a/playground/EasyDataAspNetCoreTest02/package.json b/playground/EasyDataAspNetCoreTest02/package.json index 55856435..a4a466b8 100644 --- a/playground/EasyDataAspNetCoreTest02/package.json +++ b/playground/EasyDataAspNetCoreTest02/package.json @@ -6,7 +6,7 @@ "license": "ISC", "scripts": { "build": "rollup --config", - "watch": "rollup --config -w" + "watch1": "rollup --config -w" }, "dependencies": { "@easydata/crud": "*" From cc56e40379b90be37aa54680b563b6f1be317cab Mon Sep 17 00:00:00 2001 From: olton Date: Sun, 31 Dec 2023 16:01:16 +0200 Subject: [PATCH 02/40] upd banner --- easydata.js/packs/core/rollup.config.mjs | 2 +- easydata.js/packs/crud/rollup.config.mjs | 4 +--- easydata.js/packs/ui/rollup.config.mjs | 5 +---- 3 files changed, 3 insertions(+), 8 deletions(-) diff --git a/easydata.js/packs/core/rollup.config.mjs b/easydata.js/packs/core/rollup.config.mjs index d996c6a2..7ba66ac4 100644 --- a/easydata.js/packs/core/rollup.config.mjs +++ b/easydata.js/packs/core/rollup.config.mjs @@ -19,7 +19,7 @@ const banner = ` * EasyData.JS Core * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT - !*/ + */ ` export default [ diff --git a/easydata.js/packs/crud/rollup.config.mjs b/easydata.js/packs/crud/rollup.config.mjs index 1f223d23..61c32949 100644 --- a/easydata.js/packs/crud/rollup.config.mjs +++ b/easydata.js/packs/crud/rollup.config.mjs @@ -22,7 +22,7 @@ const banner = ` * EasyData.JS CRUD * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT - !*/ + */ ` export default [ @@ -93,7 +93,6 @@ export default [ ], output: { file: './lib/easydata.min.css', - banner, }, onwarn: message => { if (/Generated an empty chunk/.test(message)) return; @@ -124,7 +123,6 @@ export default [ ], output: { file: './lib/easydata.css', - banner, }, onwarn: message => { if (/Generated an empty chunk/.test(message)) return; diff --git a/easydata.js/packs/ui/rollup.config.mjs b/easydata.js/packs/ui/rollup.config.mjs index ea4099df..8ab7fa31 100644 --- a/easydata.js/packs/ui/rollup.config.mjs +++ b/easydata.js/packs/ui/rollup.config.mjs @@ -22,7 +22,7 @@ const banner = ` * EasyData.JS UI * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT - !*/ + */ ` export default [ @@ -92,7 +92,6 @@ export default [ ], output: { dir: './dist/assets/css', - banner, }, onwarn: message => { if (/Generated an empty chunk/.test(message)) return; @@ -122,7 +121,6 @@ export default [ ], output: { dir: './dist/assets/css', - banner, }, onwarn: message => { if (/Generated an empty chunk/.test(message)) return; @@ -152,7 +150,6 @@ export default [ ], output: { dir: './dist/assets/css', - banner, }, onwarn: message => { if (/Generated an empty chunk/.test(message)) return; From bed1b94eb0b3076a1c284c2391002ca73ebf441b Mon Sep 17 00:00:00 2001 From: olton Date: Sun, 31 Dec 2023 16:11:02 +0200 Subject: [PATCH 03/40] upd banner --- easydata.js/packs/core/rollup.config.mjs | 3 ++- easydata.js/packs/crud/rollup.config.mjs | 3 ++- easydata.js/packs/ui/rollup.config.mjs | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/easydata.js/packs/core/rollup.config.mjs b/easydata.js/packs/core/rollup.config.mjs index 7ba66ac4..07bf2a1a 100644 --- a/easydata.js/packs/core/rollup.config.mjs +++ b/easydata.js/packs/core/rollup.config.mjs @@ -6,6 +6,7 @@ import typescript from '@rollup/plugin-typescript' import typedoc from '@olton/rollup-plugin-typedoc' import * as path from "path"; import { fileURLToPath } from 'url'; +import pkg from './package.json' assert { type: 'json' }; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); @@ -16,7 +17,7 @@ const const banner = ` /*! - * EasyData.JS Core + * EasyData.JS Core v${pkg.version} * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT */ diff --git a/easydata.js/packs/crud/rollup.config.mjs b/easydata.js/packs/crud/rollup.config.mjs index 61c32949..5d0f4fa1 100644 --- a/easydata.js/packs/crud/rollup.config.mjs +++ b/easydata.js/packs/crud/rollup.config.mjs @@ -9,6 +9,7 @@ import { fileURLToPath } from 'url'; import noEmit from 'rollup-plugin-no-emit' import postcss from 'rollup-plugin-postcss' import autoprefixer from "autoprefixer" +import pkg from './package.json' assert { type: 'json' }; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); @@ -19,7 +20,7 @@ const const banner = ` /*! - * EasyData.JS CRUD + * EasyData.JS CRUD v${pkg.version} * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT */ diff --git a/easydata.js/packs/ui/rollup.config.mjs b/easydata.js/packs/ui/rollup.config.mjs index 8ab7fa31..56ab6c56 100644 --- a/easydata.js/packs/ui/rollup.config.mjs +++ b/easydata.js/packs/ui/rollup.config.mjs @@ -9,6 +9,7 @@ import typedoc from '@olton/rollup-plugin-typedoc' import noEmit from 'rollup-plugin-no-emit' import * as path from "path"; import { fileURLToPath } from 'url'; +import pkg from './package.json' assert { type: 'json' }; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); @@ -19,7 +20,7 @@ const const banner = ` /*! - * EasyData.JS UI + * EasyData.JS UI v${pkg.version} * Copyright ${new Date().getFullYear()} Korzh.com * Licensed under MIT */ From b0db57c0d282e5aa350a894a0e3708703ddf9afe Mon Sep 17 00:00:00 2001 From: olton Date: Sun, 31 Dec 2023 16:19:16 +0200 Subject: [PATCH 04/40] upd bundler --- easydata.js/packs/crud/lib/easydata.js | 32 +++++++++---------- easydata.js/packs/crud/lib/easydata.min.js | 32 +++++++++---------- .../packs/crud/lib/easydata.min.js.map | 2 +- package.json | 6 ++-- 4 files changed, 36 insertions(+), 36 deletions(-) diff --git a/easydata.js/packs/crud/lib/easydata.js b/easydata.js/packs/crud/lib/easydata.js index 7ff084c3..69456113 100644 --- a/easydata.js/packs/crud/lib/easydata.js +++ b/easydata.js/packs/crud/lib/easydata.js @@ -1,18 +1,18 @@ /*! - * EasyData.JS CRUD + * EasyData.JS CRUD v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ var easydata = (function (exports) { 'use strict'; /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ var t$2,e$2;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(t$2||(t$2={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(e$2||(e$2={}));const s$2={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};let i$2 = class i{constructor(t){t instanceof Date?this.date=t:this._name=t;}asTime(t){if(this.date)return this.date;u$2.getDateByName(this._name);}get name(){return this.name}};let n$2 = class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let s=e.getDay();return s=0==s?6:s-1,e.setDate(e.getDate()-s),e}FirstDayOfPrevWeek(t){let e=new Date,s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()-s),e}FirstDayOfNextWeek(t){let e=new Date;var s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()+s),e}};var r$2,o$2,a$2,h$2,l$2,u$2=new n$2;function c$2(t){u$2=t;}!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(r$2||(r$2={}));let d$2 = class d{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data;}setHeader(t,e){this.headers[t]=e;}setQueryParam(t,e){this.queryParams[t]=e;}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const s of t){const t=s.split(": "),i=t.shift(),n=t.join(": ");e[i]=n;}return e}return {}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t]);}abort(){this.xhr.abort();}};!function(e){e.getAllDataTypes=function(){return Object.values(t$2).filter((t=>"number"==typeof t))},e.getDateDataTypes=function(){return [t$2.Time,t$2.Date,t$2.DateTime]},e.getStringDataTypes=function(){return [t$2.String,t$2.Memo,t$2.FixedChar]};const s=[t$2.Byte,t$2.Word,t$2.Int32,t$2.Int64,t$2.Float,t$2.Currency,t$2.Autoinc];e.getNumericDataTypes=function(){return s};const i=[t$2.Byte,t$2.Word,t$2.Int32,t$2.Int64,t$2.Autoinc];function n(t,e,s){e||(e={});for(let i of s)if(i)for(let s in i)if(i.hasOwnProperty(s)){let o=i[s];null!==o&&"object"==typeof o?t.has(o)?e[s]=t.get(o):Array.isArray(o)?(e[s]=r(o),t.set(o,e[s])):(void 0!==e[s]&&null!=e[s]||(e[s]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[s]),n(t,e[s],[o])):e[s]=o;}return e}function r(t){let e=[];for(let s of t)e.push(s);return e}e.assign=function(t,...e){for(let s=0;s=t.length)throw "Index out of bounds: "+e;s>=t.length&&(s=t.length-1);let i=t.splice(e,1)[0];t.splice(s,0,i);},e.removeArrayItem=function(t,e){let s=t.indexOf(e);if(-1!=s)return t.splice(s,1)[0]},e.insertArrayItem=function(t,e,s){t.splice(e,0,s);},e.fillArray=function(t,e,s=0,i){let n=t.length>>>0;var r=s>>0,o=r<0?Math.max(n+r,0):Math.min(r,n),a=void 0===i?n:i>>0;let h=a<0?Math.max(n+a,0):Math.min(a,n);for(;oi&&(r=i-n-10,t+r<0&&(r=10-t)),r},e.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},e.isNumericType=function(t){return s.indexOf(t)>=0},e.isIntType=function(t){return i.indexOf(t)>=0},e.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,s){return void 0===e||void 0===s||e==t$2.Unknown||s==t$2.Unknown||e==s||e==t$2.Date&&s==t$2.DateTime||e==t$2.DateTime&&s==t$2.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function a(t,e){const s=t.length;if(s>e){let i=s/e,n="";n+=t[0];let r,o=i;for(let e=1;eo&&(n+=r,o+=i);return n}return t}function h(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}e.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let s=t.split("-"),i=1,n=e;s.length0&&(e+="-");var s=o[h(0,o.length)]+o[h(0,o.length)]+o[h(0,o.length)],i=h(0,1e4);return e+s+function(t,e=36){var s="",i=t;do{s=o[i%e]+s,i=Math.floor(i/=e);}while(i>0);return s}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-i)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const s=t.replace(/[^a-zA-Z0-9_]/g,"-"),i=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=s.split("-"),r=i.indexOf("MM"),o=i.indexOf("dd"),a=i.indexOf("yyyy"),h=i.indexOf("HH"),u=i.indexOf("mm"),c=i.indexOf("ss"),d=new Date;try{const t=a>-1&&a-1&&r11)throw "";const s=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const i=h>-1&&h23)throw "";const g=u>-1&&u59)throw "";const f=c>-1&&c59)throw "";return new Date(t,e,s,i,g,f)}catch(e){throw `${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw "";const s=e.length>1?l(e[1]):0;if(s>59)throw "";const i=e.length>1?l(e[1]):0;if(i>59)throw "";return new Date(0,0,0,t,s,i)}catch(e){throw `${t} is not a valid time.`}};}(o$2||(o$2={}));let g$2 = class g{constructor(t,e){this.request=t,this.promise=e;}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}};let f$2 = class f extends Error{constructor(t,e){super(e),this.status=t;}};let m$2 = class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0;}get(t,e){return this.send(r$2.Get,t,null,e)}post(t,e,s){return this.send(r$2.Post,t,e,s)}put(t,e,s){return this.send(r$2.Put,t,e,s)}delete(t,e,s){return this.send(r$2.Delete,t,e,s)}send(t,e,s,i){const n=(i=i||{}).dataType||"json",r=i.contentType||"form-data"!==n?"application/json":null;s&&"form-data"!=n&&this.customPayload&&(s.data=o$2.assignDeep(s.data||{},this.customPayload));const a=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),i.headers||{}),queryParams:i.queryParams||{},data:s};r&&(h.headers["Content-Type"]=r);const l=new d$2(a,h);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const u=l.data&&"string"!=typeof l.data&&"json"==n?JSON.stringify(l.data):l.data;return l.open(),new g$2(l,new Promise(((t,s)=>{i.responseType&&(a.responseType=i.responseType),a.onerror=t=>{s(new f$2(a.status,a.responseText));},a.onreadystatechange=()=>{if(4!=a.readyState)return;const i=a.getResponseHeader("Content-Type")||"",n=a.status;if(0===n)s(new f$2(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===a.responseType||"blob"===a.responseType?a.response:0==i.indexOf("application/json")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e);}else {("arraybuffer"===a.responseType||"blob"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const r=0==i.indexOf("application/json")?JSON.parse(t):t;this._responseBody=r;const o=r.message||(404==n?`No such endpoint: ${e}`:r);s(new f$2(n,o));}));}},a.send(u);})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((s=>{e.onloadend=function(){e.readyState==FileReader.DONE&&s(e.result);},e.readAsText(new Blob([t]));}))}};!function(e){let s,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},r={"en-US":n};const a=[];function h(t){for(const e of a)e(t);}function l(){return s.localeId}function u(t){const e=r[t];e?o$2.assignDeep(s,e):(s.englishName=t,s.displayName=t,s.texts=o$2.assignDeep({},n.texts)),s.localeId=t;}function c(){return s.settings}function d(t){s.settings||(s.settings=o$2.assignDeep({},i)),s.settings=o$2.assignDeep(s.settings,t);}function g(t,e){h(e);let i=s;t&&(e.localeId||(e.localeId=t),i=r[t],i||(i=o$2.assignDeep({},n),r[t]=i)),o$2.assignDeep(i,e);}function f(){!function(t){const e=new Date(2020,5,7,19,34,56,88),i=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let r=i.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");s.settings||(s.settings={}),d({shortDateFormat:r,shortTimeFormat:o});}("object"==typeof navigator?navigator.language:void 0);}e.addMapper=function(t){a.push(t);},e.getLocales=function(){let t=[];for(let e in r)t.push({locale:e,englishName:r[e].englishName,displayName:r[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=l,e.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),u(t);},e.setCurrentLocale=u,e.getText=function(...t){let e=s.texts,i="";if(t&&t.length){const s=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.updateLocaleSettings=d,e.updateLocaleTexts=function(t){"object"==typeof t?(h({localeId:s.localeId,texts:t}),o$2.assignDeep(s.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},e.updateDefaultTexts=function(t){for(let e in r){let s=r[e];s.texts=o$2.assignDeep({},t,s.texts);}s.texts=o$2.assignDeep({},t,s.texts);},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e);},e.resetLocales=function(){s||(s=o$2.assignDeep({},n),f());};const m=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(t,s){const i=t.getFullYear().toString(),n=t.getMonth()+1,r=t.getDate(),o=t.getHours(),a=t.getMinutes(),h=t.getSeconds(),l=o%12||12,u=o>11,c={yyyy:i,yy:i.substring(i.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:r<10?"0"+r:r.toString(),d:r.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:l<10?"0"+l:l.toString(),h:l.toString(),tt:u?"PM":"AM",mm:a<10?"0"+a:a.toString(),ss:h<10?"0"+h:h.toString()};return s.replace(m,((t,e)=>e||c[t]))}function y(e){const s=c();let i;switch(e){case t$2.Date:i=s.shortDateFormat;break;case t$2.Time:i=s.shortTimeFormat;break;default:i=s.shortDateFormat+" "+s.shortTimeFormat;}return i}function D(e){const s=c();let i;switch(e){case t$2.Date:i=s.longDateFormat;break;case t$2.Time:i=s.longTimeFormat;break;default:i=s.longDateFormat+" "+s.longTimeFormat;}return i}e.dateTimeToStr=p,e.dateTimeToStrEx=function(e,s,i){return i?"d"==i?i=y(t$2.Date):"D"==i?i=D(t$2.Date):"f"==i?i=y(t$2.DateTime):"F"==i&&(i=D(t$2.DateTime)):i=y(s),p(e,i)},e.numberToStr=function(t,s,i){if(s&&s.length>0){const i=s.charAt(0).toUpperCase();if("S"===i)return function(t,s){if(!w[s]){const t=s.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(w[s]={},t.length>0)if(t[0].length>1)for(const e of t)w[s][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{w[s][e]=t[0];}));}const i=w[s];if(void 0!==i[t]){const s=i[t];return e.getText(s)||s}return t.toString()}(t,s.slice(1));if(["D","F","C"].indexOf(i)>=0){const e=l();return t.toLocaleString(e,function(t){const e=c(),s=t[0].toUpperCase(),i=t.length>1?Number.parseInt(t.slice(1)):"D"==s?1:2;switch(s){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:i};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:i};default:return {style:"decimal",minimumFractionDigits:i,maximumFractionDigits:i}}}(s))}return function(t,e){let s=t.toString(),i="",n=s.length-1;for(let t=e.length-1;t>=0;t--){const r=e.charAt(t);"#"===r||"0"===r?n>=0?(i+=s.charAt(n),n--):"0"===r&&(i+=0):i+=r;}return i.split("").reverse().join("")}(Math.trunc(t),s)}const n=c();return i=i||n.decimalSeparator,t.toString().replace(".",i)},e.booleanToStr=function(t,s){if(s&&s.length>0){if("S"===s.charAt(0).toUpperCase()){const i=s.slice(1).split("|");if(i.length>1){const s=i[t?1:0];return e.getText(s)||s}}}return `${t}`};const w={};}(a$2||(a$2={}));let p$2 = class p{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array;}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let s=0;s{if(e&&e(n,s),n.attributes){let e=n.attributes.length;for(let i=0;it.isPrimaryKey))}};let y$2 = class y{constructor(s){this.id="",this.caption="{Unrecognized attribute}",this.dataType=t$2.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=s,this.kind=e$2.Data;}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const s=o$2.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&s?new Date(e.defVal):e.defVal,this.isNullable=o$2.getIfDefined(e.nul,this.isNullable),this.isEditable=o$2.getIfDefined(e.ied,this.isEditable),this.showOnView=o$2.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o$2.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o$2.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o$2.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor());}}};let D$2 = class D{constructor(){this.id="",this.tag=s$2.Unknown,this.resType=t$2.Unknown,this.defValue="";}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values));}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let s of this.values)t.indexOf(s.id)>=0&&(e+=s.text+",");else for(let s of this.values)s.id===t&&(e+=s.text+",");return e&&(e=e.substring(0,e.length-1)),e}};let w$2 = class w{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map;}getMainEntity(){return this.mainEntity}createEntity(t){return new p$2(t)}createEntityAttr(t){return new y$2(t)}createValueEditor(){return new D$2}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e);}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t);}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let s=this.getAttributeById(t);if(s){if(void 0===s[e])throw "No such property: "+e;return !!s[e]||!!s.lookupAttr&&(t=s.lookupAttr,s=this.getAttributeById(t),s&&s[e])}return !1}getEntityAttrById(t,e){let s,i;if(t.attributes){let i=t.attributes.length;for(s=0;s0&&i.push(t);}}let r=null;if(t.attributes){let n=t.attributes.length;for(let h=0;h0&&n.push(t);}}let l=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),r.sort(c)),u=e.attrPlacement&&0!=e.attrPlacement?r.concat(n):n.concat(r),2==e.attrPlacement&&u.sort(c),e.includeRootData?(i=a$2.getText("Entities",t.name),i||(i=t.caption),{id:t.name,text:i,items:u}):u}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version="";}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor("_DTE",s$2.Edit,t$2.String),e.defValue="",this.addOrUpdateValueEditor("_DPDE",s$2.DateTime,t$2.DateTime),this.addOrUpdateValueEditor("_DPTE",s$2.DateTime,t$2.DateTime);}addOrUpdateValueEditor(t,e,s){let i=o$2.findItemById(this.editors,t);return i||(i=this.createValueEditor(),i.id=t,this.editors.push(i)),i.tag=e,i.resType=s,i}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,s,i){if(!t)return "";s=s||" ";let n="";if(t.caption&&!i){let e=a$2.getText("Entities",t.caption);n=e||t.caption;}if(t.attributes){let s=t.attributes.length;for(let i=0;i(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return !(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear();}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups){if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return !0}for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return !0;return !1}needAggrCalculation(){return (this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return {groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)));}buildGroupKey(t,e){const s=!this.caseSensitiveGroups;let i={};if(t)for(const n of t.columns){let t=e.getValue(n);s&&"string"==typeof t&&(t=t.toLowerCase()),i[n]=t;}return i}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){if(t instanceof Date)return t.getTime()===e.getTime();return ("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}};!function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(h$2||(h$2={}));let x$2 = class x{constructor(e){if(!e)throw Error("Options are required");if(!e.id)throw Error("Field Id is required");if(!e.label)throw Error("Label is required");this.id=e.id,this.type=o$2.getIfDefined(e.type,t$2.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0;}};let E$2 = class E{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[];}get count(){return this.items.length}add(e){let s;s=e instanceof x$2?e:new x$2(e);const i=this.items.length;return this.items.push(s),this.mapper[s.id]=i,[t$2.Date,t$2.DateTime,t$2.Time].indexOf(s.type)>=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t$2.Date,t$2.DateTime,t$2.Time].indexOf(e.type)>=0)).map(((t,e)=>e));}put(t,e){t>=0&&t=0&&s!=e&&(o$2.moveArrayItem(this.items,s,e),this.updateDateColumnIdx());}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(s,1),delete this.mapper[e.id];}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={};}};let b$2 = class b{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let s;if("string"==typeof t){if(s=this.columns.getIndex(t),void 0===s)throw new RangeError(`No column with id '${t}'`)}else s=t;if(s>=this.values.length)throw new RangeError("Out of range: "+s);this.values[s]=e;}};let C$2 = class C{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new E$2,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t);}this.needTotal=!this._elasticChunks;}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}getRows(t){let e=0,s=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),s=t.pageSize):(e=t.offset,s=t.limit));let i=e+s;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);i>this.total&&(i=this.total);}if(this.isInMemory&&i>this.cachedRows.length&&(i=this.cachedRows.length),i<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,i));if(!this.loader)throw `Loader is not defined. Can't get the rows from ${e} to ${i}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let r=this.cachedRows.length,o=i-r;o{if(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),i>this.cachedRows.length&&(i=this.cachedRows.length),this.elasticChunks){t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1;}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated();}createRow(t){const e=this._columns.getDateColumnIndexes(),s=new Array(this._columns.count),i=t instanceof b$2?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=i(t.id),r=this.columns.getIndex(t.id);s[r]=e.indexOf(r)>=0?this.mapDate(n,t.type):n;})),new b$2(this._columns,s)}mapDate(e,s){if(e){let i=new Date(e);return isNaN(i.getTime())&&s==t$2.Time&&(i=o$2.strToTime(e)),i}return null}addRow(t){let e;if(Array.isArray(t)){let s=t;const i=this._columns.getDateColumnIndexes();if(i.length>0)for(const t of i)s[t]&&(s[t]=this.mapDate(s[t],this._columns.get(t).type));e=new b$2(this._columns,s);}else e=this.createRow(t);this.cachedRows.push(e);const s=this.getCachedCount();return s>this.total&&(this.total=s),e}getCachedRows(){return this.cachedRows}totalIsKnown(){if(this.elasticChunks){return this.getCachedCount()===this.total}return !this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this);}};let I$2 = class I{static newGuid(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return ("x"==t?e:3&e|8).toString(16)}))}};let A$2 = class A{constructor(t){this.silentMode=0,this.events=new Array,this.source=t;}subscribe(t,e){let s=this.getEventRecByType(t);const i={id:I$2.newGuid(),callback:e};return s?s.eventCallbacks.push(i):(s={type:t,eventCallbacks:new Array(i)},this.events.push(s)),i.id}unsubscribe(t,e){let s=this.getEventRecByType(t);if(s){let t=-1;for(t=0;t=0&&s.eventCallbacks.splice(t,1);}}fire(t,e,s=0,i=!1){if(this.silentMode&&!i)return;let n=this.getEventRecByType(t);if(n){const i={type:t,source:this.source,data:e};let r=()=>{for(let t of n.eventCallbacks)t.callback(i);};s>0?setTimeout(r,s):r();}}enterSilentMode(){this.silentMode++;}exitSilentMode(){this.silentMode&&this.silentMode--;}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}};function v$2(t,e){return t.repeat(e)}function F$2(t){return t.split("").reverse().join("")}function S$2(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function M$2(t,e){let s=t;return null!=s&&s.length>0?("/"!=s.charAt(s.length-1)&&(s+="/"),s+=e):s=e,s}!function(t){t.renderLiquidTemplate=function(t,e){let s=t;if(e)for(let t in e){const i=new RegExp("{{"+t+"}}","g");s=s.replace(i,e[t]);}return s};}(l$2||(l$2={})),a$2.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}); var easydata_core_es = /*#__PURE__*/Object.freeze({ @@ -49,15 +49,15 @@ var easydata = (function (exports) { }); /*! - * EasyData.JS UI + * EasyData.JS UI v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ var t$1,e$1,i$1,s$1,n$1,a$1,o$1,r$1;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(t$1||(t$1={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(e$1||(e$1={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(i$1||(i$1={})),function(e){e.getAllDataTypes=function(){return Object.values(t$1).filter((t=>"number"==typeof t))},e.getDateDataTypes=function(){return [t$1.Time,t$1.Date,t$1.DateTime]},e.getStringDataTypes=function(){return [t$1.String,t$1.Memo,t$1.FixedChar]};const i=[t$1.Byte,t$1.Word,t$1.Int32,t$1.Int64,t$1.Float,t$1.Currency,t$1.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t$1.Byte,t$1.Word,t$1.Int32,t$1.Int64,t$1.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o;}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw "Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s);},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i);},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},e.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t$1.Unknown||i==t$1.Unknown||e==i||e==t$1.Date&&i==t$1.DateTime||e==t$1.DateTime&&i==t$1.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}e.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e);}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),h=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw "";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const s=l>-1&&l23)throw "";const g=h>-1&&h59)throw "";const p=c>-1&&c59)throw "";return new Date(t,e,i,s,g,p)}catch(e){throw `${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?d(e[0]):0;if(t>23)throw "";const i=e.length>1?d(e[1]):0;if(i>59)throw "";const s=e.length>1?d(e[1]):0;if(s>59)throw "";return new Date(0,0,0,t,i,s)}catch(e){throw `${t} is not a valid time.`}};}(s$1||(s$1={})),function(e){let i,n={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},a={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:n},o={"en-US":a};const r=[];function l(t){for(const e of r)e(t);}function d(){return i.localeId}function h(t){const e=o[t];e?s$1.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=s$1.assignDeep({},a.texts)),i.localeId=t;}function c(){return i.settings}function u(t){i.settings||(i.settings=s$1.assignDeep({},n)),i.settings=s$1.assignDeep(i.settings,t);}function g(t,e){l(e);let n=i;t&&(e.localeId||(e.localeId=t),n=o[t],n||(n=s$1.assignDeep({},a),o[t]=n)),s$1.assignDeep(n,e);}e.addMapper=function(t){r.push(t);},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),h(t);},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){"object"==typeof t?(l({localeId:i.localeId,texts:t}),s$1.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=s$1.assignDeep({},t,i.texts);}i.texts=s$1.assignDeep({},t,i.texts);},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e);},e.resetLocales=function(){i||(i=s$1.assignDeep({},a),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o});}("object"==typeof navigator?navigator.language:void 0));};const p=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,a=t.getDate(),o=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=o%12||12,h=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:h?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t$1.Date:s=i.shortDateFormat;break;case t$1.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat;}return s}function D(e){const i=c();let s;switch(e){case t$1.Date:s=i.longDateFormat;break;case t$1.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat;}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?"d"==s?s=f(t$1.Date):"D"==s?s=D(t$1.Date):"f"==s?s=f(t$1.DateTime):"F"==s&&(s=D(t$1.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(t,i){if(!y[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(y[i]={},t.length>0)if(t[0].length>1)for(const e of t)y[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{y[i][e]=t[0];}));}const s=y[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:s};default:return {style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a;}return s.split("").reverse().join("")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(".",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return `${t}`};const y={};}(n$1||(n$1={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(a$1||(a$1={}));let l$1 = class l{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e;}};let d$1 = class d{static newGuid(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return ("x"==t?e:3&e|8).toString(16)}))}};let h$1 = class h{constructor(t){this.silentMode=0,this.events=new Array,this.source=t;}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:d$1.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1);}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s);};i>0?setTimeout(a,i):a();}}enterSilentMode(){this.silentMode++;}exitSilentMode(){this.silentMode&&this.silentMode--;}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}};function c$1(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild);}function u$1(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s}function g$1(t,e){t.className=t.className?t.className+" "+e:e;}function p$1(t){t.style.display="none";}function m$1(t,e){e||(e=""),t.style.display=e;}function f$1(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),p$1(t),m$1(e,i.display),i.complete&&i.complete();}function D$1(t){return "none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function y$1(t){var e;return "function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e}function v$1(){return {width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function w$1(){if(r$1.IsIE())return b$1();return {width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function C$1(){const t=document.body,e=document.documentElement;return {top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function T$1(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect();}catch(t){i=e;}const s=document.body,n=document.documentElement,a=C$1(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+o-l,c=i.left+r-d;return {top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top};}return e}function b$1(){return {width:window.innerWidth,height:window.innerHeight}}function E$1(t,e,i){t.style.removeProperty("display");let s=window.getComputedStyle(t).display;"none"===s&&(s="block"),t.style.display=s;let n=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=n+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i();}),e);}function x$1(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i();}),e);}(o$1||(o$1={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t]);}return i},n$1.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1;}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return !s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1;}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e);};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i);},t.onMobileModeChanged=function(t){a=t;},t.getMobileCssClass=function(){return l()?"k-mobile":null};}(r$1||(r$1={}));const S$1="eqjs",M$1="eqjs-mobile";function I$1(t,e){const i={9:"[0-9]",a:"[a-z]"},s=e.split(""),n=e=>{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_");}else n.push(e);})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a;};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_");}else e===o-1&&o--,a-1===e&&a--,n.push(l);}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let d=new RegExp(i[e],"i").test(l);a.push(d?l:"_"),d&&o===s&&r++;}else a.push(e),r===s&&r++,o===s&&o++;})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("input",n),t.addEventListener("focus",n);}let R$1 = class R{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element);}addChild(t,e){const i=L$1(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return !!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new H$1(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t);},s=t=>{this.mouseMoveDragListener(t);},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=L$1("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=N$1.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new $$1(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0);},a=t=>{k$1&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new H$1(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o);};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t);},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new $$1(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===N$1.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s));}finally{t.onDragLeave&&t.onDragLeave(i,s);}}}finally{try{const i=new $$1(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i);}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o);}}};}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t);}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)s$1.removeArrayItem(this.containerDescriptors,t);}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t);}else {const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1);}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $$1(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s);}}}updateCusror(t){switch(t){case N$1.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case N$1.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing");}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case N$1.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case N$1.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case N$1.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`);}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new $$1(this.draggableItem,this.dragImage,t);s.dropEffect=N$1.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}else this.dropEffect!==N$1.Forbid&&(this.dropEffect=N$1.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect));}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $$1(this.draggableItem,this.dragImage,t);s.dropEffect=N$1.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}}detectDragEnterEvent(t,e){const i=T$1(t),s=new H$1(e);return !(s.yi.y+t.offsetHeight)&&!(s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=T$1(t),s=new H$1(e);return !(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&s$1.moveArrayItem(this.items,i,e);}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==B$1.NONE&&i.classList.add(`${z$1}-cell-value-align-left`);},q$1=(t,e,i,s)=>{let a=(t||"").toString();"number"==typeof t&&(a=e.dataColumn&&e.dataColumn.displayFormat&&V$1.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(V$1,((e,i)=>n$1.numberToStr(t,i))):t.toLocaleString()),i.innerText=a,i.title=a,e.align==B$1.NONE&&i.classList.add(`${z$1}-cell-value-align-right`);},K$1=(e,i,s,a)=>{const o="[object Date]"===Object.prototype.toString.call(e);let r=(e||"").toString();if(o)if(i.dataColumn&&i.dataColumn.displayFormat&&V$1.test(i.dataColumn.displayFormat))r=i.dataColumn.displayFormat.replace(V$1,((t,s)=>n$1.dateTimeToStrEx(e,i.type,s)));else {const s=n$1.getCurrentLocale(),a={hour:"numeric",minute:"numeric",second:"numeric"};switch(i.type){case t$1.Date:r=e.toLocaleDateString(s);break;case t$1.Time:r=e.toLocaleTimeString(s,a);break;case t$1.DateTime:r=`${e.toLocaleDateString(s)} ${e.toLocaleTimeString(s,a)}`;}}s.innerText=r,s.title=r,i.align==B$1.NONE&&s.classList.add(`${z$1}-cell-value-align-right`);},Q$1=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&V$1.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(V$1,((e,i)=>n$1.booleanToStr(t,i)));return j$1(s,e,i)}i.classList.add(`${z$1}-cell-value-bool`),i.classList.add(`${z$1}-${t?"cell-value-true":"cell-value-false"}`);};let J$1 = class J{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",j$1),this.setDefaultRenderer(U$1.STRING,j$1),this.registerRenderer("NumberDefault",q$1),this.setDefaultRenderer(U$1.NUMBER,q$1),this.registerRenderer("DateTimeDefault",K$1),this.setDefaultRenderer(U$1.DATETIME,K$1),this.registerRenderer("BoolDefault",Q$1),this.setDefaultRenderer(U$1.BOOL,Q$1);}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[U$1[e]]}getDefaultRendererByType(t){return this.defaultRenderers[U$1[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[U$1[t]]=e);}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e;}getCellType(e){switch(e){case t$1.Autoinc:case t$1.Byte:case t$1.Word:case t$1.Currency:case t$1.Float:case t$1.Int32:case t$1.Int64:return U$1.NUMBER;case t$1.Date:case t$1.DateTime:case t$1.Time:return U$1.DATETIME;case t$1.Bool:return U$1.BOOL;default:return U$1.STRING}}};let X$1 = class X{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:Y$1.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=L$1("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(L$1("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=s$1.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new h$1(this),this.cellRendererStore=new J$1(t),this.columns=new G$1(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options);}mergeOptions(t){const e=s$1.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=s$1.assignDeep({},this.defaultDataGridOptions.paging,t.paging),n=s$1.assign({},this.defaultDataGridOptions,t);return n.columnWidths=e,n.paging=i,n}processColumnWidthsOptions(){const e=this.options.columnWidths;if(!e)return;s$1.getStringDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.stringColumns),e[t]);})),s$1.getNumericDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.numberColumns),e[t]);})),e[t$1.Bool]=Object.assign(Object.assign({},e.boolColumns),e[t$1.Bool]),s$1.getDateDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.dateColumns),e[t]);}));const i=[...s$1.getStringDataTypes(),...s$1.getNumericDataTypes(),...s$1.getDateDataTypes(),t$1.Bool];s$1.getAllDataTypes().forEach((t=>{t in i||(e[t]=Object.assign(Object.assign({},e.otherColumns),e[t]));})),e[t$1.Unknown]=e.otherColumns;}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else {if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0]);}}}else this.slot=t;}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),s$1.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&_$1.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${S$1}-drophover`),this.showLandingSlot(e.pageX,e.pageY);},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY);},onDragLeave:(t,e)=>{e.dropEffect=N$1.Forbid,this.slot.classList.remove(`${S$1}-drophover`),this.hideLandingSlot();},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex});}}),this.refresh(),this.fireEvent("init");}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t);}setData(t){this.dataTable=t,this.clear(),this.refresh();}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML="";}refresh(){this.clearDOM(),this.render();}clearDOM(){this.slot.innerHTML="";}clear(){this.pagination.page=1,this.clearDOM();}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==Y$1.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null;})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns();}));}),100);}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return L$1(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,L$1(this.bodyViewportDiv).setStyle("height",`${i}px`),t();}),100)}this.containerInitialHeight,t();})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`);}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=L$1("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=L$1("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=L$1("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=L$1("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&L$1(i).addChildElement(this.renderHeaderButtons());}));const t=this.getContainerWidth();L$1(this.headerCellContainerDiv).setStyle("width",`${t}px`);}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=L$1("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return L$1("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||L$1("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&L$1("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&_$1.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i);},onDragStart:t=>{t.dropEffect=N$1.Allow;}}),s}renderBody(){this.bodyDiv=L$1("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=L$1("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=L$1("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{L$1(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`);})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this));}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return !1;const t=this.options.aggregates.settings;return (t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new l$1(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i);}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t);}this.prevRowTotals=e;}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=L$1("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n));}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d="";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h));}let u="";if(t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u){d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,a[i.COUNT_FIELD_NAME]);}}const c=this.renderCell(r,l,d,n);n.appendChild(c);}));})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o);}}getRowsToRender(){return !1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=L$1("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e);}));}renderPageInfoBlock(t){const e=L$1("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let a=this.dataTable.getTotal().toString();if(this.dataTable.elasticChunks){this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(a="?");}e.innerHTML=n$1.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${a}`);}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=L$1("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i});})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i});}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n));})),n}renderCell(t,e,i,s){const n=L$1("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==B$1.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==B$1.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==B$1.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(L$1("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(U$1.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus();}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t);}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else {if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else {let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e;}l.className=`${e}page-link`,l.addEventListener("click",i);}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n);}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let d=document.createElement("ul");d.className=`${e}pagination`;let h=s(r-1,"«",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,"»",l==n,!0,!1),d.appendChild(h),t.appendChild(d);}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh();},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const a=document.createElement("select"),o=this.options.paging.pageSizeItems||[],r=new Set(o);r.add(this.options.paging.pageSize||20),Array.from(r).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),a.appendChild(e);})),a.value=(this.pagination.pageSize||20).toString(),s.appendChild(a),a.addEventListener("change",e);const l=document.createElement("div");l.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(l);const d=document.createElement("span");d.innerText=n$1.getText("GridItemsPerPage"),l.appendChild(d),t.appendChild(i);}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e);}renderHeaderButtons(){return this.options.showPlusButton?L$1("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t});})))).toDOM():L$1("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=T$1(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot);}),10);}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)});}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`);}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex));}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let d=0;if(r>0)e+=r,o.width=r,l.forEach((t=>{t.parentElement.style.width=`${r}px`;})),n[a].style.width=`${r}px`;else if(0==l.length&&(n[a].style.width=null,n[a].style.whiteSpace="nowrap"),d=n[a].offsetWidth,l.length>0){l.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>d&&(d=e);})),d+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;d>t&&(d=t),d{t.parentElement.style.width=`${d}px`;})),n[a].style.width=`${d}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=d);}else e+=d;a++;}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style");}};let Z$1 = class Z{get cssPrefix(){return "kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10");}setDate(t){this.currentDate=new Date(t);}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t);}};let tt$1 = class tt{get cssPrefix(){return "kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render();}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime);}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime);}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged();}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date);}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=T$1(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px";}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy();}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy();}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot);}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime);}};let et$1 = class et extends Z$1{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),L$1(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=L$1("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM();}getInputDateFormat(){const t=n$1.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=L$1("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=s$1.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1);}catch(t){e.addClass("error");}finally{this.isManualInputChanging=!1;}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0));})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0;}),50);})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=n$1.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus();}}else if(this.headerTextElem){const t=n$1.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"});}}renderCalendarButtons(){return L$1("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev();})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value));}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM();})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth);})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next();})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth();}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth();}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i);}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth();}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{L$1("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t);}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection);}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)]);}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=L$1("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),this.slot}updateDisplayedTime(){const t=n$1.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e;}};let nt$1 = class nt extends tt$1{render(){const t=L$1("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0};}renderButtons(){const t=L$1("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(n$1.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(n$1.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(n$1.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()));}createCalendar(t){return this.calendarSlot=L$1("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new et$1(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=L$1("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new st$1(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=T$1(t||document.body),i=T$1(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px";}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0);}),1);}};var at$1;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(at$1||(at$1={}));const ot$1="kdlg";let rt$1 = class rt{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
${e}
`};return i?(s.onSubmit=()=>{i(!0);},s.onCancel=()=>{i(!1);},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0);},s.onCancel=()=>{t(!1);},this.open(s);}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
\n
\n \n \n
\n
`,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${ot$1}-dialog-form-input`);i&&(t.value=i),t.focus();}},a=t=>{const e=document.getElementById(`${ot$1}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("");},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("");},this.open(n);}))}open(t,e){const i=new lt$1(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t);},i.open(),this.track(i),i}createSet(t){return new ht$1(t,this)}untrack(t){const e=rt.openDialogs.indexOf(t);e>=0&&rt.openDialogs.splice(e,1);}track(t){rt.openDialogs.push(t);}openProgress(t){const e=new dt$1(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t);},e.open(),this.track(e),e}getAllDialogs(){return Array.from(rt.openDialogs)}closeAllDialogs(){for(const t of Array.from(rt.openDialogs))t.close();}};rt$1.openDialogs=[];let lt$1 = class lt{constructor(t,e){this.options=t,this.submitHandler=t=>(!this.options.onSubmit||!1!==this.options.onSubmit(this,t))&&(this.destroy(),!0),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy();},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=s$1.generateId("dlg"),this.data=e,this.slot=L$1("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${ot$1}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${ot$1}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${ot$1}-header`).addChild("p",(e=>e.addClass(`${ot$1}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${ot$1}-modal-close`).on("click",(()=>{this.cancelHandler();})).focus()));})).addChild("div",(t=>{t.addClass(`${ot$1}-alert-container`),this.alertElement=t.toDOM();})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${ot$1}-body`).toDOM(),"string"==typeof t.body){const s=o$1.renderLiquidTemplate(t.body,e);i.addHtml(s);}else i.addChildElement(t.body);})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==at$1.Center?"align-center":"align-right",this.footerElement=e.addClass(`${ot$1}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||n$1.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t);}));})):this.submitHandler();}))):e.on("click",(t=>{this.submitHandler();})),e.focus();})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||n$1.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler();})))));})).toDOM())).toDOM();}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),L$1(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${ot$1}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this);})))),this.options.onShow&&this.options.onShow(this);}submit(){this.submitHandler();}cancel(){this.cancelHandler();}close(){this.destroy();}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0));}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1));}showAlert(t,e,i){let s=L$1("div").addClass(`${ot$1}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${ot$1}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e);})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s);}clearAlert(){this.alertElement.innerHTML="";}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this));}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${ot$1}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate");}));})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s;}updateContent(t){this.contentElement.innerText=t;}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit();}),500);}in01(t){return t>1?1:t<0?0:t}};let ht$1 = class ht{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e;}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close();}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null);}};var ct$1,ut$1;n$1.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4";}(ct$1||(ct$1={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9";}(ut$1||(ut$1={}));let gt$1 = class gt extends lt$1{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog();},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)]);}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent();}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=L$1("div").addClass("tsp__container").addChild("div",(t=>{t.addClass("tsp__intervals").addChild("button",(t=>t.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(ct$1.THIS_WEEK);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(ct$1.LAST_WEEK);})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(ct$1.THIS_MONTH);})))).addChild("button",(t=>t.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(ct$1.FIRST_MONTH);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(ct$1.LAST_MONTH);})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(ct$1.THIS_YEAR);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(ct$1.QUARTER_1);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(ct$1.QUARTER_2);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(ct$1.QUARTER_3);})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(ct$1.QUARTER_4);}))));})).addChild("div",(t=>{t.addClass("tsp__form").addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Start");})).addChild("select",(t=>{t.addOption({value:ut$1.UNDEF,title:"Jump To"}).addOption({value:ut$1.TODAY,title:"Today"}).addOption({value:ut$1.YESTERDAY,title:"Yesterday"}).addOption({value:ut$1.TOMORROW,title:"Tomorrow"}).addOption({value:ut$1.WEEK_START,title:"Week Start"}).addOption({value:ut$1.WEEK_END,title:"Week End"}).addOption({value:ut$1.MONTH_START,title:"Month Start"}).addOption({value:ut$1.MONTH_END,title:"Month End"}).addOption({value:ut$1.YEAR_START,title:"Year Start"}).addOption({value:ut$1.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(1,t.target.value,t.target);}));}));})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new et$1(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range");}});}));})).addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish");})).addChild("select",(t=>{t.addOption({value:ut$1.UNDEF,title:"Jump To"}).addOption({value:ut$1.TODAY,title:"Today"}).addOption({value:ut$1.YESTERDAY,title:"Yesterday"}).addOption({value:ut$1.TOMORROW,title:"Tomorrow"}).addOption({value:ut$1.WEEK_START,title:"Week Start"}).addOption({value:ut$1.WEEK_END,title:"Week End"}).addOption({value:ut$1.MONTH_START,title:"Month Start"}).addOption({value:ut$1.MONTH_END,title:"Month End"}).addOption({value:ut$1.YEAR_START,title:"Year Start"}).addOption({value:ut$1.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(2,t.target.value,t.target);}));}));})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new et$1(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent();},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range");}});}));}));})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?"from":"to";const a=new Date;switch(e){case ut$1.TODAY:s=a;break;case ut$1.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case ut$1.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case ut$1.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case ut$1.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case ut$1.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case ut$1.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case ut$1.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case ut$1.YEAR_END:s=new Date(a.getFullYear(),12,0);}s=this.alignDate(s),i.value=ut$1.UNDEF,"from"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent();}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to);}select(t){switch(t){case ct$1.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct$1.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct$1.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case ct$1.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case ct$1.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case ct$1.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case ct$1.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case ct$1.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case ct$1.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case ct$1.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent();}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return `\${{${e}}}`;return n$1.dateTimeToStr(t,n$1.getLocaleSettings().editDateFormat)}};const pt$1=t=>new gt$1(t).open(),mt$1=new rt$1; var easydata_ui_es = /*#__PURE__*/Object.freeze({ @@ -117,26 +117,26 @@ var easydata = (function (exports) { }); /*! - * EasyData.JS CRUD + * EasyData.JS CRUD v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ var t,e;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(t||(t={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(e||(e={}));const i="Unknown",s="EDIT",n="DATETIME",o="LIST",a="FILE";var r,l,d,h,c;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data;}setHeader(t,e){this.headers[t]=e;}setQueryParam(t,e){this.queryParams[t]=e;}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n;}return e}return {}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t]);}abort(){this.xhr.abort();}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>"number"==typeof t))},e.getDateDataTypes=function(){return [t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return [t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&"object"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a;}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw "Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s);},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i);},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}e.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o="";for(let t=0;t0&&(e+="-");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e);}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),o=s.indexOf("MM"),a=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),h=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&o11)throw "";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const s=l>-1&&l23)throw "";const p=h>-1&&h59)throw "";const g=c>-1&&c59)throw "";return new Date(t,e,i,s,p,g)}catch(e){throw `${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?d(e[0]):0;if(t>23)throw "";const i=e.length>1?d(e[1]):0;if(i>59)throw "";const s=e.length>1?d(e[1]):0;if(s>59)throw "";return new Date(0,0,0,t,i,s)}catch(e){throw `${t} is not a valid time.`}};}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e;}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t;}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0;}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||"json",o=s.contentType||"form-data"!==n?"application/json":null;i&&"form-data"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers["Content-Type"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&"string"!=typeof d.data&&"json"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText));},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader("Content-Type")||"",n=a.status;if(0===n)i(new g(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===a.responseType||"blob"===a.responseType?a.response:0==s.indexOf("application/json")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e);}else ("arraybuffer"===a.responseType||"blob"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf("application/json")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a));}));},a.send(h);})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result);},e.readAsText(new Blob([t]));}))}}!function(e){let i,s={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:s},o={"en-US":n};const a=[];function r(t){for(const e of a)e(t);}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t;}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t);}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e);}e.addMapper=function(t){a.push(t);},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),h(t);},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){"object"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts);}i.texts=l.assignDeep({},t,i.texts);},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e);},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let o=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),a=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a});}("object"==typeof navigator?navigator.language:void 0));};const g=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:o<10?"0"+o:o.toString(),d:o.toString(),HH:a<10?"0"+a:a.toString(),H:a.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:h?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat;}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat;}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?"d"==s?s=f(t.Date):"D"==s?s=y(t.Date):"f"==s?s=f(t.DateTime):"F"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(t,i){if(!D[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0];}));}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:s};default:return {style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);"#"===o||"0"===o?n>=0?(s+=i.charAt(n),n--):"0"===o&&(s+=0):s+=o;}return s.split("").reverse().join("")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(".",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return `${t}`};const D={};}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array;}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id="",this.caption="{Unrecognized attribute}",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=i,this.kind=e.Data;}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor());}}}class D{constructor(){this.id="",this.tag=i,this.resType=t.Unknown,this.defValue="";}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values));}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map;}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e);}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t);}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw "No such property: "+e;return !!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return !1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t);}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t);}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version="";}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor("_DTE",s,t.String),e.defValue="",this.addOrUpdateValueEditor("_DPDE",n,t.DateTime),this.addOrUpdateValueEditor("_DPTE",n,t.DateTime);}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return "";i=i||" ";let n="";if(t.caption&&!s){n=d.getText("Entities",t.caption)||t.caption;}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e));}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx());}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id];}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={};}}class T{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e;}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t);}this.needTotal=!this._elasticChunks;}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total);}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw `Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1;}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated();}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n;})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i);}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this);}};function x(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t]);}return i},d.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue="",this.justServerSide=!1;}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return !0}}return !1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i);}))}} /*! - * EasyData.JS UI + * EasyData.JS UI v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(I||(I={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(S||(S={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return [I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return [I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&"object"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a;}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw "Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s);},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i);},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function a(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o="";for(let t=0;t0&&(e+="-");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e);}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),o=s.indexOf("MM"),a=s.indexOf("dd"),r=s.indexOf("yyyy"),d=s.indexOf("HH"),h=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&o11)throw "";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const s=d>-1&&d23)throw "";const p=h>-1&&h59)throw "";const g=c>-1&&c59)throw "";return new Date(t,e,i,s,p,g)}catch(e){throw `${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw "";const i=e.length>1?l(e[1]):0;if(i>59)throw "";const s=e.length>1?l(e[1]):0;if(s>59)throw "";return new Date(0,0,0,t,i,s)}catch(e){throw `${t} is not a valid time.`}};}(R||(R={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const o=[];function a(t){for(const e of o)e(t);}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t;}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t);}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i);}t.addMapper=function(t){o.push(t);},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t);},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){"object"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts);}e.texts=R.assignDeep({},t,e.texts);},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e);},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let o=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),a=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a});}("object"==typeof navigator?navigator.language:void 0));};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:o<10?"0"+o:o.toString(),d:o.toString(),HH:a<10?"0"+a:a.toString(),H:a.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:h?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat;}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat;}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=g(I.Date):"D"==i?i=m(I.Date):"f"==i?i=g(I.DateTime):"F"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0];}));}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:s};default:return {style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);"#"===o||"0"===o?n>=0?(s+=i.charAt(n),n--):"0"===o&&(s+=0):s+=o;}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return `${e}`};const f={};}(k||(k={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e;}}class L{static newGuid(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return ("x"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t;}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1);}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s);};i>0?setTimeout(o,i):o();}}enterSilentMode(){this.silentMode++;}exitSilentMode(){this.silentMode&&this.silentMode--;}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect();}catch(t){i=e;}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return {top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return {top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top};}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t]);}return i},k.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1;}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return !s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1;}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&o&&o(e);};function l(){return void 0!==n?n:a}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i);},t.onMobileModeChanged=function(t){o=t;},t.getMobileCssClass=function(){return l()?"k-mobile":null};}(O||(O={}));const B="eqjs";class H{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element);}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return !!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if("focus"===e.type&&""!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(o?t.value.charAt(s):"_");}else n.push(e);})),t.value=n.join(""),t.selectionStart=t.selectionEnd=o;};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):"_");}else e===a-1&&a--,o-1===e&&o--,n.push(l);}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],"i").test(l);o.push(d?l:"_"),d&&a===s&&r++;}else o.push(e),r===s&&r++,a===s&&a++;})),t.value=o.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("input",n),t.addEventListener("focus",n);}(this.element,t),this}}class W extends H{constructor(t,e){super(t||"select",e);}addOption(t){const e=document.createElement("option");return "string"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return "div"===t||t instanceof HTMLDivElement||"span"===t||t instanceof HTMLSpanElement||"a"===t||t instanceof HTMLAnchorElement||"button"===t||t instanceof HTMLButtonElement||"img"===t||t instanceof HTMLImageElement?new H(t,e):"input"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):"textarea"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):"select"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j="undefined"!=typeof TouchEvent;var G;!function(t){t.None="none",t.Allow="allow",t.Forbid="forbid";}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY);}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY);}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix="eqjs-drop",this.DRAG_DISABLED_ATTR="drag-disabled";}registerDraggableItem(t){const e=t.element;if(!e)throw Error("Element in draggle item is null or undefined");e.ondragstart=function(){return !1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t);},s=t=>{this.mouseMoveDragListener(t);},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0);},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",a),document.addEventListener("touchend",a);};e.addEventListener("mousedown",o),e.addEventListener("touchstart",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t);},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s));}finally{t.onDragLeave&&t.onDragLeave(i,s);}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i);}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",a),document.removeEventListener("touchend",a);}}};}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t);}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t);}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t);}else {const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1);}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s);}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case G.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing");}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`);}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect));}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return !(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return !(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e);}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`);},st=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`);},nt=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let o=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else {const i=k.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`;}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`);},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?"cell-value-true":"cell-value-false"}`);};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer("NumberDefault",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer("DateTimeDefault",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer("BoolDefault",ot),this.setDefaultRenderer(et.BOOL,ot);}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e);}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e;}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options);}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e]);})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e]);})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e]);}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]));})),t[I.Unknown]=t.otherColumns;}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else {if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0]);}}}else this.slot=t;}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY);},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY);},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot();},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex});}}),this.refresh(),this.fireEvent("init");}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t);}setData(t){this.dataTable=t,this.clear(),this.refresh();}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML="";}refresh(){this.clearDOM(),this.render();}clearDOM(){this.slot.innerHTML="";}clear(){this.pagination.page=1,this.clearDOM();}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null;})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns();}));}),100);}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle("height",`${i}px`),t();}),100)}this.containerInitialHeight,t();})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`);}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons());}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle("width",`${t}px`);}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return z("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i);},onDragStart:t=>{t.dropEffect=G.Allow;}}),s}renderBody(){this.bodyDiv=z("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=z("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{z(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`);})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this));}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return !1;const t=this.options.aggregates.settings;return (t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i);}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t);}this.prevRowTotals=e;}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o="";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=". . . . . ."),n.appendChild(this.renderCell(t,i,o,n));}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d="";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h));}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]));}const c=this.renderCell(r,l,d,n);n.appendChild(c);}));})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a);}}getRowsToRender(){return !1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e);}));}renderPageInfoBlock(t){const e=z("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=k.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`);}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i});})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i});}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n));})),n}renderCell(t,e,i,s){const n=z("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus();}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t);}},s=(t,s,n,o,a)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!o){a&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else {if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else {let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e;}l.className=`${e}page-link`,l.addEventListener("click",i);}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let o=s(i-1,"«",1==i,!0,!1);n.appendChild(o),o=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n);}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement("ul");d.className=`${e}pagination`;let h=s(r-1,"«",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,"»",l==n,!0,!1),d.appendChild(h),t.appendChild(d);}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh();},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e);})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=k.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i);}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e);}renderHeaderButtons(){return this.options.showPlusButton?z("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t});})))).toDOM():z("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot);}),10);}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)});}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`);}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex));}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`;})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e);})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`;})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l);}else e+=l;n++;}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style");}}class lt{get cssPrefix(){return "kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10");}setDate(t){this.currentDate=new Date(t);}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t);}}class dt{get cssPrefix(){return "kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render();}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime);}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime);}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged();}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date);}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px";}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy();}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy();}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot);}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime);}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM();}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1);}catch(t){e.addClass("error");}finally{this.isManualInputChanging=!1;}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0));})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0;}),50);})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus();}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"});}}renderCalendarButtons(){return z("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev();})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value));}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM();})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth);})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next();})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth();}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth();}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i);}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth();}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t);}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection);}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)]);}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e;}}class pt extends dt{render(){const t=z("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0};}renderButtons(){const t=z("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()));}createCalendar(t){return this.calendarSlot=z("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px";}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0);}),1);}}var gt;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(gt||(gt={}));const mt="kdlg";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
${e}
`};return i?(s.onSubmit=()=>{i(!0);},s.onCancel=()=>{i(!1);},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0);},s.onCancel=()=>{t(!1);},this.open(s);}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
\n
\n \n \n
\n
`,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus();}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s("");},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t("");},this.open(n);}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t);},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1);}track(t){ft.openDialogs.push(t);}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t);},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close();}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy();},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=R.generateId("dlg"),this.data=e,this.slot=z("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${mt}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild("p",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${mt}-modal-close`).on("click",(()=>{this.cancelHandler();})).focus()));})).addChild("div",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM();})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),"string"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s);}else i.addChildElement(t.body);})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?"align-center":"align-right",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||k.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t);}));})):this.submitHandler();}))):e.on("click",(t=>{this.submitHandler();})),e.focus();})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||k.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler();})))));})).toDOM())).toDOM();}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this);})))),this.options.onShow&&this.options.onShow(this);}submit(){this.submitHandler();}cancel(){this.cancelHandler();}close(){this.destroy();}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0));}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1));}showAlert(t,e,i){let s=z("div").addClass(`${mt}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${mt}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e);})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s);}clearAlert(){this.alertElement.innerHTML="";}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this));}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${mt}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate");}));})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s;}updateContent(t){this.contentElement.innerText=t;}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit();}),500);}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e;}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close();}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null);}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4";}(Ct||(Ct={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9";}(wt||(wt={}));const Tt="yyyy-MM-dd",bt="HH:mm",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"));};class It{}class St extends It{constructor(){super(),this.name="DateTime";}validate(t,e){if(!l.IsDefinedAndNotNull(e)||""==e)return {successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i);}catch(t){return {successed:!1,messages:[d.getText("DateTimeError")]}}return {successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St];}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block");}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if("checkbox"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild("ul"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `;}this.markInputValid(i,s.successed);}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll("input, select, textarea"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(".")+1),s=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?n[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value);}Promise.all(i).then((()=>t(n))).catch((t=>e(t)));}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(",")+1));},s.onerror=t=>i(t);}))}useValidator(...t){this.useValidators(t);}useValidators(t){this.validators=this.validators.concat(t);}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid");}));}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid");}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages));}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render();}render(){const t=O.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",d.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this));})),e||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this));}));})),this.options.instantMode||z(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(d.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus();}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0);}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0);}),this.options.instantTimeout);}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0);}searchButtonClickHandler(){this.applyFilter(!0);}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return (!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t);})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n);}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++;}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1);}else t++;}const e=document.createElement("div");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let r;z(t).addChild("div",(t=>{t.addClass(a).addChild("input",(t=>{r=t.toDOM(),t.attr("readonly",""),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():"");})),i||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",d.getText("NavigationBtnTitle")).addText("...").on("click",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t);}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(d.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>a=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(".")+1)])(t,e.id)}`)).join(", ");};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity);})).catch((t=>{console.error(t);}));}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t);}));}});o.open({title:d.getText("LookupDlgCaption").replace("{entity}",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0});},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus();}});}));}))));}));}setupDateTimeField(e,i,s,n,o){const a=kt?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",r=xt(i.dataType);let h;const c=r.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");z(e).addChild("div",(e=>{e.addClass(a).addChild("input",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?"hidden":this.resolveInputType(i.dataType)),n?t.attr("readonly",""):(t.mask(c),t.on("keypress",(t=>this.applySumbit(t))).on("input",(e=>{t.removeClass("is-invalid");try{l.strToDateTime(h.value,r);}catch(e){t.addClass("is-invalid");}})).on("blur",(t=>{h.value===c.replace(/[9]/g,"_")&&(h.value="");}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):"");})),n||e.addChild("button",(e=>e.addClass("kfrm-button").attr("title",d.getText(i.dataType!==t.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(e=>e.addClass(i.dataType!==t.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0));}catch(t){s=new Date((new Date).setSeconds(0));}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r);}},o=new pt(n);o.setDateTime(s),o.show(e.target);})).toDOM()));}));}setupListField(t,e,i,s,n){z(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",s);}));}setupTextField(e,i,s,n,o){z(e).addChild("input",(e=>{n&&e.attr("readonly",""),e.type(o?"hidden":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr("checked",""):e.on("keypress",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():"");}));}setupTextArea(t,e,i,s){z(t).addChild("textarea",(t=>{s&&t.attr("readonly",""),t.attr("name",e.id),t.setStyle("height","120px"),t.value(l.IsDefinedAndNotNull(i)?i.toString():"");}));}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z("div",t).addClass("kfrm-field-ie").toDOM()),z(t).addChild("label",(t=>{t.attr("for",i.id),t.addHtml(`${i.caption} ${d?'*':""}: `),i.description&&t.addChild("div",(t=>t.attr("title",i.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")));}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h);}else this.setupLookupField(t,i,l,s);}resolveInputType(e){return e===t.Bool?"checkbox":e===t.Blob?"file":"text"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(""+(kt?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right")),t=e;})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar");}show(){this.slot.style.removeProperty("display");}hide(){this.slot.style.display="none";}}class Ot{constructor(t){this.context=t;}loadChunk(t){const e=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess();}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||"__default",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata");}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0];}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess();}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e);}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e);}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if("modelId"==s)n=this.model.getId();else {if("sourceId"!=s)throw `Parameter [${s}] is not defined`;n=this.activeEntity.id;}i=i.replace(t,n);}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart();}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd();}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",x(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",x(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",x(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",x(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",x(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",x(t,"models/{modelId}/sources/{sourceId}/delete"));}}class Lt extends It{constructor(){super(),this.name="Type";}validate(t,e){if(!l.IsDefinedAndNotNull(e)||""==e)return {successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return {successed:!1,messages:[d.getText("NumberError")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return {successed:!1,messages:[d.getText("IntNumberError")]}}return {successed:!0}}}class Ft extends It{constructor(){super(),this.name="Required";}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&""!==e?{successed:!0}:{successed:!1,messages:[d.getText("RequiredError")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw "Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${d.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),Et(this.basePath);})))),this.renderGrid();}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView);}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement("div");if(this.slot.appendChild(e),e.id="Grid",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s);}}));}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z("div",i).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&n.addChild("a",(t=>t.attr("href","javascript:void(0)").text(d.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(s.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(d.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute("data-row-idx")))))));}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText("AddDlgCaption").replace("{entity}",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return !1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}});}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t);}));}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText("EditDlgCaption").replace("{entity}",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return !1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}});}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row);}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText("DeleteDlgCaption").replace("{entity}",e.caption),d.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}));}}));}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1});}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh();}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText("RootViewTitle")}

    `,this.renderEntitySelector();}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild("div",(e=>e.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(d.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`);})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption);})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`);}));}));}));}))));}}class Ht{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView();},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation);},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement("div"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()});}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw "Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0]);}else "#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t;}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView();})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath);}clear(){this.container.innerHTML="",this.context.getData().clear();}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation);}}d.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."}); + */var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(I||(I={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(S||(S={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return [I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return [I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&"object"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a;}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw "Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s);},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i);},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function a(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o="";for(let t=0;t0&&(e+="-");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e);}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),o=s.indexOf("MM"),a=s.indexOf("dd"),r=s.indexOf("yyyy"),d=s.indexOf("HH"),h=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&o11)throw "";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const s=d>-1&&d23)throw "";const p=h>-1&&h59)throw "";const g=c>-1&&c59)throw "";return new Date(t,e,i,s,p,g)}catch(e){throw `${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw "";const i=e.length>1?l(e[1]):0;if(i>59)throw "";const s=e.length>1?l(e[1]):0;if(s>59)throw "";return new Date(0,0,0,t,i,s)}catch(e){throw `${t} is not a valid time.`}};}(R||(R={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const o=[];function a(t){for(const e of o)e(t);}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t;}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t);}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i);}t.addMapper=function(t){o.push(t);},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t);},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){"object"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts);}e.texts=R.assignDeep({},t,e.texts);},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e);},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let o=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),a=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a});}("object"==typeof navigator?navigator.language:void 0));};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:o<10?"0"+o:o.toString(),d:o.toString(),HH:a<10?"0"+a:a.toString(),H:a.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:h?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat;}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat;}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=g(I.Date):"D"==i?i=m(I.Date):"f"==i?i=g(I.DateTime):"F"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0];}));}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:s};default:return {style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);"#"===o||"0"===o?n>=0?(s+=i.charAt(n),n--):"0"===o&&(s+=0):s+=o;}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return `${e}`};const f={};}(k||(k={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e;}}class L{static newGuid(){return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return ("x"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t;}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1);}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s);};i>0?setTimeout(o,i):o();}}enterSilentMode(){this.silentMode++;}exitSilentMode(){this.silentMode&&this.silentMode--;}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect();}catch(t){i=e;}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return {top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return {top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top};}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t]);}return i},k.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1;}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return !s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1;}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&o&&o(e);};function l(){return void 0!==n?n:a}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i);},t.onMobileModeChanged=function(t){o=t;},t.getMobileCssClass=function(){return l()?"k-mobile":null};}(O||(O={}));const B="eqjs";class H{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element);}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return !!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if("focus"===e.type&&""!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(o?t.value.charAt(s):"_");}else n.push(e);})),t.value=n.join(""),t.selectionStart=t.selectionEnd=o;};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):"_");}else e===a-1&&a--,o-1===e&&o--,n.push(l);}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],"i").test(l);o.push(d?l:"_"),d&&a===s&&r++;}else o.push(e),r===s&&r++,a===s&&a++;})),t.value=o.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l);}})),t.addEventListener("input",n),t.addEventListener("focus",n);}(this.element,t),this}}class W extends H{constructor(t,e){super(t||"select",e);}addOption(t){const e=document.createElement("option");return "string"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return "div"===t||t instanceof HTMLDivElement||"span"===t||t instanceof HTMLSpanElement||"a"===t||t instanceof HTMLAnchorElement||"button"===t||t instanceof HTMLButtonElement||"img"===t||t instanceof HTMLImageElement?new H(t,e):"input"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):"textarea"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):"select"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j="undefined"!=typeof TouchEvent;var G;!function(t){t.None="none",t.Allow="allow",t.Forbid="forbid";}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY);}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY);}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix="eqjs-drop",this.DRAG_DISABLED_ATTR="drag-disabled";}registerDraggableItem(t){const e=t.element;if(!e)throw Error("Element in draggle item is null or undefined");e.ondragstart=function(){return !1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t);},s=t=>{this.mouseMoveDragListener(t);},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0);},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",a),document.addEventListener("touchend",a);};e.addEventListener("mousedown",o),e.addEventListener("touchstart",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t);},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s));}finally{t.onDragLeave&&t.onDragLeave(i,s);}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i);}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",a),document.removeEventListener("touchend",a);}}};}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t);}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t);}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t);}else {const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1);}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s);}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case G.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing");}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`);}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect));}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect);}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return !(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return !(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e);}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`);},st=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`);},nt=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let o=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else {const i=k.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`;}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`);},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?"cell-value-true":"cell-value-false"}`);};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer("NumberDefault",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer("DateTimeDefault",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer("BoolDefault",ot),this.setDefaultRenderer(et.BOOL,ot);}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e);}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e;}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options);}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e]);})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e]);})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e]);}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]));})),t[I.Unknown]=t.otherColumns;}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else {if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0]);}}}else this.slot=t;}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY);},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY);},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot();},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex});}}),this.refresh(),this.fireEvent("init");}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t);}setData(t){this.dataTable=t,this.clear(),this.refresh();}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML="";}refresh(){this.clearDOM(),this.render();}clearDOM(){this.slot.innerHTML="";}clear(){this.pagination.page=1,this.clearDOM();}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null;})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns();}));}),100);}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle("height",`${i}px`),t();}),100)}this.containerInitialHeight,t();})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`);}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons());}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle("width",`${t}px`);}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return z("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i);},onDragStart:t=>{t.dropEffect=G.Allow;}}),s}renderBody(){this.bodyDiv=z("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=z("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{z(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`);})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this));}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return !1;const t=this.options.aggregates.settings;return (t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i);}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t);}this.prevRowTotals=e;}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o="";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=". . . . . ."),n.appendChild(this.renderCell(t,i,o,n));}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d="";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h));}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]));}const c=this.renderCell(r,l,d,n);n.appendChild(c);}));})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a);}}getRowsToRender(){return !1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e);}));}renderPageInfoBlock(t){const e=z("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=k.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`);}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i});})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i});}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n));})),n}renderCell(t,e,i,s){const n=z("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus();}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t);}},s=(t,s,n,o,a)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!o){a&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else {if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else {let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e;}l.className=`${e}page-link`,l.addEventListener("click",i);}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let o=s(i-1,"«",1==i,!0,!1);n.appendChild(o),o=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n);}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement("ul");d.className=`${e}pagination`;let h=s(r-1,"«",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,"»",l==n,!0,!1),d.appendChild(h),t.appendChild(d);}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh();},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e);})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=k.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i);}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e);}renderHeaderButtons(){return this.options.showPlusButton?z("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t});})))).toDOM():z("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot);}),10);}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)});}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`);}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex));}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`;})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e);})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`;})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l);}else e+=l;n++;}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style");}}class lt{get cssPrefix(){return "kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10");}setDate(t){this.currentDate=new Date(t);}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t);}}class dt{get cssPrefix(){return "kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render();}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime);}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime);}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged();}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date);}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px";}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy();}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy();}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot);}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime);}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM();}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1);}catch(t){e.addClass("error");}finally{this.isManualInputChanging=!1;}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0));})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0;}),50);})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus();}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"});}}renderCalendarButtons(){return z("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev();})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value));}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM();})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth);})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next();})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth();}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth();}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i);}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth();}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t);}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection);}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)]);}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged();})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e;}}class pt extends dt{render(){const t=z("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0};}renderButtons(){const t=z("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()));}createCalendar(t){return this.calendarSlot=z("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px";}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0);}),1);}}var gt;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right";}(gt||(gt={}));const mt="kdlg";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0);},s.onCancel=()=>{i(!1);},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0);},s.onCancel=()=>{t(!1);},this.open(s);}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus();}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s("");},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t("");},this.open(n);}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t);},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1);}track(t){ft.openDialogs.push(t);}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t);},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close();}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy();},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=R.generateId("dlg"),this.data=e,this.slot=z("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${mt}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild("p",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${mt}-modal-close`).on("click",(()=>{this.cancelHandler();})).focus()));})).addChild("div",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM();})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),"string"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s);}else i.addChildElement(t.body);})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?"align-center":"align-right",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||k.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t);}));})):this.submitHandler();}))):e.on("click",(t=>{this.submitHandler();})),e.focus();})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||k.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler();})))));})).toDOM())).toDOM();}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this);})))),this.options.onShow&&this.options.onShow(this);}submit(){this.submitHandler();}cancel(){this.cancelHandler();}close(){this.destroy();}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0));}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1));}showAlert(t,e,i){let s=z("div").addClass(`${mt}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${mt}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e);})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s);}clearAlert(){this.alertElement.innerHTML="";}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this));}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${mt}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate");}));})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s;}updateContent(t){this.contentElement.innerText=t;}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit();}),500);}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e;}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close();}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null);}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4";}(Ct||(Ct={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9";}(wt||(wt={}));const Tt="yyyy-MM-dd",bt="HH:mm",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"));};class It{}class St extends It{constructor(){super(),this.name="DateTime";}validate(t,e){if(!l.IsDefinedAndNotNull(e)||""==e)return {successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i);}catch(t){return {successed:!1,messages:[d.getText("DateTimeError")]}}return {successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St];}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block");}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if("checkbox"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild("ul"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `;}this.markInputValid(i,s.successed);}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll("input, select, textarea"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(".")+1),s=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?n[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value);}Promise.all(i).then((()=>t(n))).catch((t=>e(t)));}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(",")+1));},s.onerror=t=>i(t);}))}useValidator(...t){this.useValidators(t);}useValidators(t){this.validators=this.validators.concat(t);}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid");}));}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid");}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages));}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render();}render(){const t=O.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",d.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this));})),e||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this));}));})),this.options.instantMode||z(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(d.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus();}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0);}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0);}),this.options.instantTimeout);}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0);}searchButtonClickHandler(){this.applyFilter(!0);}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return (!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t);})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n);}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++;}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1);}else t++;}const e=document.createElement("div");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let r;z(t).addChild("div",(t=>{t.addClass(a).addChild("input",(t=>{r=t.toDOM(),t.attr("readonly",""),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():"");})),i||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",d.getText("NavigationBtnTitle")).addText("...").on("click",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t);}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(d.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>a=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(".")+1)])(t,e.id)}`)).join(", ");};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity);})).catch((t=>{console.error(t);}));}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t);}));}});o.open({title:d.getText("LookupDlgCaption").replace("{entity}",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0});},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus();}});}));}))));}));}setupDateTimeField(e,i,s,n,o){const a=kt?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",r=xt(i.dataType);let h;const c=r.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");z(e).addChild("div",(e=>{e.addClass(a).addChild("input",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?"hidden":this.resolveInputType(i.dataType)),n?t.attr("readonly",""):(t.mask(c),t.on("keypress",(t=>this.applySumbit(t))).on("input",(e=>{t.removeClass("is-invalid");try{l.strToDateTime(h.value,r);}catch(e){t.addClass("is-invalid");}})).on("blur",(t=>{h.value===c.replace(/[9]/g,"_")&&(h.value="");}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):"");})),n||e.addChild("button",(e=>e.addClass("kfrm-button").attr("title",d.getText(i.dataType!==t.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(e=>e.addClass(i.dataType!==t.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0));}catch(t){s=new Date((new Date).setSeconds(0));}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r);}},o=new pt(n);o.setDateTime(s),o.show(e.target);})).toDOM()));}));}setupListField(t,e,i,s,n){z(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",s);}));}setupTextField(e,i,s,n,o){z(e).addChild("input",(e=>{n&&e.attr("readonly",""),e.type(o?"hidden":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr("checked",""):e.on("keypress",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():"");}));}setupTextArea(t,e,i,s){z(t).addChild("textarea",(t=>{s&&t.attr("readonly",""),t.attr("name",e.id),t.setStyle("height","120px"),t.value(l.IsDefinedAndNotNull(i)?i.toString():"");}));}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z("div",t).addClass("kfrm-field-ie").toDOM()),z(t).addChild("label",(t=>{t.attr("for",i.id),t.addHtml(`${i.caption} ${d?'*':""}: `),i.description&&t.addChild("div",(t=>t.attr("title",i.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")));}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h);}else this.setupLookupField(t,i,l,s);}resolveInputType(e){return e===t.Bool?"checkbox":e===t.Blob?"file":"text"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(""+(kt?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right")),t=e;})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar");}show(){this.slot.style.removeProperty("display");}hide(){this.slot.style.display="none";}}class Ot{constructor(t){this.context=t;}loadChunk(t){const e=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess();}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||"__default",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata");}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0];}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess();}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e);}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e);}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if("modelId"==s)n=this.model.getId();else {if("sourceId"!=s)throw `Parameter [${s}] is not defined`;n=this.activeEntity.id;}i=i.replace(t,n);}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart();}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd();}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",x(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",x(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",x(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",x(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",x(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",x(t,"models/{modelId}/sources/{sourceId}/delete"));}}class Lt extends It{constructor(){super(),this.name="Type";}validate(t,e){if(!l.IsDefinedAndNotNull(e)||""==e)return {successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return {successed:!1,messages:[d.getText("NumberError")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return {successed:!1,messages:[d.getText("IntNumberError")]}}return {successed:!0}}}class Ft extends It{constructor(){super(),this.name="Required";}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&""!==e?{successed:!0}:{successed:!1,messages:[d.getText("RequiredError")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw "Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${d.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),Et(this.basePath);})))),this.renderGrid();}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView);}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement("div");if(this.slot.appendChild(e),e.id="Grid",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s);}}));}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z("div",i).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&n.addChild("a",(t=>t.attr("href","javascript:void(0)").text(d.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(s.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(d.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute("data-row-idx")))))));}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText("AddDlgCaption").replace("{entity}",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return !1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}});}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t);}));}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText("EditDlgCaption").replace("{entity}",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return !1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}});}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row);}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText("DeleteDlgCaption").replace("{entity}",e.caption),d.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t);}));}));}}));}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1});}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh();}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText("RootViewTitle")}

    `,this.renderEntitySelector();}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild("div",(e=>e.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(d.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`);})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption);})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`);}));}));}));}))));}}class Ht{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView();},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation);},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement("div"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()});}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw "Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0]);}else "#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t;}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView();})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath);}clear(){this.container.innerHTML="",this.context.getData().clear();}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation);}}d.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."}); var easydata_crud_es = /*#__PURE__*/Object.freeze({ __proto__: null, diff --git a/easydata.js/packs/crud/lib/easydata.min.js b/easydata.js/packs/crud/lib/easydata.min.js index 2a59ffde..4be299b1 100644 --- a/easydata.js/packs/crud/lib/easydata.min.js +++ b/easydata.js/packs/crud/lib/easydata.min.js @@ -1,42 +1,42 @@ /*! - * EasyData.JS CRUD + * EasyData.JS CRUD v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ var easydata=function(t){"use strict"; /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/var e,i;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(e||(e={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(i||(i={}));const s={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};let n=class{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let i=e.getDay();return i=0==i?6:i-1,e.setDate(e.getDate()-i),e}FirstDayOfPrevWeek(t){let e=new Date,i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()-i),e}FirstDayOfNextWeek(t){let e=new Date;var i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()+i),e}};var a,o,r,l,h,d=new n;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(a||(a={}));let c=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(e).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[e.Time,e.Date,e.DateTime]},t.getStringDataTypes=function(){return[e.String,e.Memo,e.FixedChar]};const i=[e.Byte,e.Word,e.Int32,e.Int64,e.Float,e.Currency,e.Autoinc];t.getNumericDataTypes=function(){return i};const s=[e.Byte,e.Word,e.Int32,e.Int64,e.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return i.indexOf(t)>=0},t.isIntType=function(t){return s.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,i){return void 0===t||void 0===i||t==e.Unknown||i==e.Unknown||t==i||t==e.Date&&i==e.DateTime||t==e.DateTime&&i==e.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function h(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=l>-1&&l23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?h(e[0]):0;if(t>23)throw"";const i=e.length>1?h(e[1]):0;if(i>59)throw"";const s=e.length>1?h(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));let u=class{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}},g=class extends Error{constructor(t,e){super(e),this.status=t}};!function(t){let i,s={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:s},a={"en-US":n};const r=[];function l(t){for(const e of r)e(t)}function h(){return i.localeId}function d(t){const e=a[t];e?o.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=o.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=o.assignDeep({},s)),i.settings=o.assignDeep(i.settings,t)}function g(t,e){l(e);let s=i;t&&(e.localeId||(e.localeId=t),s=a[t],s||(s=o.assignDeep({},n),a[t]=s)),o.assignDeep(s,e)}t.addMapper=function(t){r.push(t)},t.getLocales=function(){let t=[];for(let e in a)t.push({locale:e,englishName:a[e].englishName,displayName:a[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=h,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),d(t)},t.setCurrentLocale=d,t.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=u,t.updateLocaleTexts=function(t){"object"==typeof t?(l({localeId:i.localeId,texts:t}),o.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in a){let i=a[e];i.texts=o.assignDeep({},t,i.texts)}i.texts=o.assignDeep({},t,i.texts)},t.updateLocaleInfo=g,t.addLocale=function(t,e){g(t,e)},t.resetLocales=function(){i||(i=o.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const p=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(t){const i=c();let s;switch(t){case e.Date:s=i.shortDateFormat;break;case e.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat}return s}function y(t){const i=c();let s;switch(t){case e.Date:s=i.longDateFormat;break;case e.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat}return s}t.dateTimeToStr=m,t.dateTimeToStrEx=function(t,i,s){return s?"d"==s?s=f(e.Date):"D"==s?s=y(e.Date):"f"==s?s=f(e.DateTime):"F"==s&&(s=y(e.DateTime)):s=f(i),m(t,s)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!D[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=h();return e.toLocaleString(t,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=c();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const D={}}(r||(r={}));let p=class{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}},m=class{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=e.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=i.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}},f=class{constructor(){this.id="",this.tag=s.Unknown,this.resType=e.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}};!function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(l||(l={}));let y=class{constructor(t){if(!t)throw Error("Options are required");if(!t.id)throw Error("Field Id is required");if(!t.label)throw Error("Label is required");this.id=t.id,this.type=o.getIfDefined(t.type,e.String),this.label=t.label,this.originAttrId=t.originAttrId,this.isAggr=t.isAggr||!1,this.displayFormat=t.dfmt,this.groupFooterColumnTemplate=t.gfct,this.style=t.style||{},this.description=t.description,this.calculatedWidth=0}},D=class{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(t){let i;i=t instanceof y?t:new y(t);const s=this.items.length;return this.items.push(i),this.mapper[i.id]=s,[e.Date,e.DateTime,e.Time].indexOf(i.type)>=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[e.Date,e.DateTime,e.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(o.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}},w=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},v=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}};!function(t){t.renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i}}(h||(h={})),r.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});var C,T,b,E,x,I,S,M,R=Object.freeze({__proto__:null,AggregationSettings:class{constructor(t){this.colStore=t,this.aggregates=[],this.groups=[],this.useGrandTotals=!1,this.useRecordCount=!1,this._caseSensitiveGroups=!1,this.COUNT_FIELD_NAME="GRPRECCNT"}get caseSensitiveGroups(){return this._caseSensitiveGroups}set caseSensitiveGroups(t){this._caseSensitiveGroups=t,this.updateCompareProc()}updateCompareProc(){this.compareValues=this._caseSensitiveGroups?this.strictCompare:this.caseInsensitiveCompare}addGroup(t){const e=t.columns||this.colStore.getColumnIds(t.from,t.to);if(!this.colStore.validateColumns(e))throw"Invalid columns: "+e;if(this.hasColumnsInUse(e))throw"Can't add same columns to different groups/aggregates";return this.groups.push(Object.assign({columns:e},t)),this}addAggregateColumn(t,e){const i="string"==typeof t?t:this.colStore.getColumnIds(t,t)[0];if(this.hasColumnsInUse([i])||!this.colStore.validateAggregate(i,e))throw"Invalid aggregation function for the column: "+i;return this.aggregates.push({colId:i,funcId:e}),this}addGrandTotals(){return this.useGrandTotals=!0,this}addCounts(){return this.useRecordCount=!0,this}getGroups(){let t=[];return this.groups.map((e=>(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups)if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0;for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const i=!this.caseSensitiveGroups;let s={};if(t)for(const n of t.columns){let t=e.getValue(n);i&&"string"==typeof t&&(t=t.toLowerCase()),s[n]=t}return s}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}},get ColumnAlignment(){return l},DataColumn:y,DataColumnList:D,DataRow:w,get DataType(){return e},EasyDataTable:class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new D,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof w?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new w(this._columns,i)}mapDate(t,i){if(t){let s=new Date(t);return isNaN(s.getTime())&&i==e.Time&&(s=o.strToTime(t)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new w(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}},EasyGuid:v,EditorTag:s,get EntityAttrKind(){return i},EventEmitter:class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:v.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}},HttpClient:class t{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(a.Get,t,null,e)}post(t,e,i){return this.send(a.Post,t,e,i)}put(t,e,i){return this.send(a.Put,t,e,i)}delete(t,e,i){return this.send(a.Delete,t,e,i)}send(e,i,s,n){const a=(n=n||{}).dataType||"json",r=n.contentType||"form-data"!==a?"application/json":null;s&&"form-data"!=a&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const l=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:e,url:i,headers:Object.assign(Object.assign({},this.defaultHeaders),n.headers||{}),queryParams:n.queryParams||{},data:s};r&&(h.headers["Content-Type"]=r);const d=new c(l,h);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const p=d.data&&"string"!=typeof d.data&&"json"==a?JSON.stringify(d.data):d.data;return d.open(),new u(d,new Promise(((e,s)=>{n.responseType&&(l.responseType=n.responseType),l.onerror=t=>{s(new g(l.status,l.responseText))},l.onreadystatechange=()=>{if(4!=l.readyState)return;const n=l.getResponseHeader("Content-Type")||"",a=l.status;if(0===a)s(new g(a,"Network error or the request was aborted"));else if(a>=200&&a<400){const t="arraybuffer"===l.responseType||"blob"===l.responseType?l.response:0==n.indexOf("application/json")?JSON.parse(l.responseText):l.responseText;this._responseBody=t,this.onResponse&&this.onResponse(l),e(t)}else("arraybuffer"===l.responseType||"blob"===l.responseType?t.decodeArrayBuffer(l.response):Promise.resolve(l.responseText)).then((t=>{const e=0==n.indexOf("application/json")?JSON.parse(t):t;this._responseBody=e;const o=e.message||(404==a?`No such endpoint: ${i}`:e);s(new g(a,o))}))},l.send(p)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}},get HttpMethod(){return a},HttpRequest:c,HttpResponseError:g,MetaData:class{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new m(t)}createValueEditor(){return new f}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let l=0;l0&&n.push(t)}}let h=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),a.sort(c)),d=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&d.sort(c),e.includeRootData?(s=r.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:d}):d}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",s.Edit,e.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",s.DateTime,e.DateTime),this.addOrUpdateValueEditor("_DPTE",s.DateTime,e.DateTime)}addOrUpdateValueEditor(t,e,i){let s=o.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s){n=r.getText("Entities",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i},get i18n(){return r},get liquid(){return h},registerSpecialDatesResolver:function(t){d=t},repeatString:function(t,e){return t.repeat(e)},reverseString:function(t){return t.split("").reverse().join("")},strEndsWith:function(t,e){return t&&t.lastIndexOf(e)==t.length-e.length},get utils(){return o}}); + */var e,i;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(e||(e={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(i||(i={}));const s={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};let n=class{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let i=e.getDay();return i=0==i?6:i-1,e.setDate(e.getDate()-i),e}FirstDayOfPrevWeek(t){let e=new Date,i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()-i),e}FirstDayOfNextWeek(t){let e=new Date;var i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()+i),e}};var a,o,r,l,h,d=new n;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(a||(a={}));let c=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(e).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[e.Time,e.Date,e.DateTime]},t.getStringDataTypes=function(){return[e.String,e.Memo,e.FixedChar]};const i=[e.Byte,e.Word,e.Int32,e.Int64,e.Float,e.Currency,e.Autoinc];t.getNumericDataTypes=function(){return i};const s=[e.Byte,e.Word,e.Int32,e.Int64,e.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return i.indexOf(t)>=0},t.isIntType=function(t){return s.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,i){return void 0===t||void 0===i||t==e.Unknown||i==e.Unknown||t==i||t==e.Date&&i==e.DateTime||t==e.DateTime&&i==e.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function h(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=l>-1&&l23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?h(e[0]):0;if(t>23)throw"";const i=e.length>1?h(e[1]):0;if(i>59)throw"";const s=e.length>1?h(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));let u=class{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}},g=class extends Error{constructor(t,e){super(e),this.status=t}};!function(t){let i,s={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:s},a={"en-US":n};const r=[];function l(t){for(const e of r)e(t)}function h(){return i.localeId}function d(t){const e=a[t];e?o.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=o.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=o.assignDeep({},s)),i.settings=o.assignDeep(i.settings,t)}function g(t,e){l(e);let s=i;t&&(e.localeId||(e.localeId=t),s=a[t],s||(s=o.assignDeep({},n),a[t]=s)),o.assignDeep(s,e)}t.addMapper=function(t){r.push(t)},t.getLocales=function(){let t=[];for(let e in a)t.push({locale:e,englishName:a[e].englishName,displayName:a[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=h,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),d(t)},t.setCurrentLocale=d,t.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=u,t.updateLocaleTexts=function(t){"object"==typeof t?(l({localeId:i.localeId,texts:t}),o.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in a){let i=a[e];i.texts=o.assignDeep({},t,i.texts)}i.texts=o.assignDeep({},t,i.texts)},t.updateLocaleInfo=g,t.addLocale=function(t,e){g(t,e)},t.resetLocales=function(){i||(i=o.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const p=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(t){const i=c();let s;switch(t){case e.Date:s=i.shortDateFormat;break;case e.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat}return s}function y(t){const i=c();let s;switch(t){case e.Date:s=i.longDateFormat;break;case e.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat}return s}t.dateTimeToStr=m,t.dateTimeToStrEx=function(t,i,s){return s?"d"==s?s=f(e.Date):"D"==s?s=y(e.Date):"f"==s?s=f(e.DateTime):"F"==s&&(s=y(e.DateTime)):s=f(i),m(t,s)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!D[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=h();return e.toLocaleString(t,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=c();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const D={}}(r||(r={}));let p=class{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}},m=class{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=e.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=i.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}},f=class{constructor(){this.id="",this.tag=s.Unknown,this.resType=e.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}};!function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(l||(l={}));let y=class{constructor(t){if(!t)throw Error("Options are required");if(!t.id)throw Error("Field Id is required");if(!t.label)throw Error("Label is required");this.id=t.id,this.type=o.getIfDefined(t.type,e.String),this.label=t.label,this.originAttrId=t.originAttrId,this.isAggr=t.isAggr||!1,this.displayFormat=t.dfmt,this.groupFooterColumnTemplate=t.gfct,this.style=t.style||{},this.description=t.description,this.calculatedWidth=0}},D=class{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(t){let i;i=t instanceof y?t:new y(t);const s=this.items.length;return this.items.push(i),this.mapper[i.id]=s,[e.Date,e.DateTime,e.Time].indexOf(i.type)>=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[e.Date,e.DateTime,e.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(o.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}},w=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},v=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}};!function(t){t.renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i}}(h||(h={})),r.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});var C,T,b,E,x,I,S,M,R=Object.freeze({__proto__:null,AggregationSettings:class{constructor(t){this.colStore=t,this.aggregates=[],this.groups=[],this.useGrandTotals=!1,this.useRecordCount=!1,this._caseSensitiveGroups=!1,this.COUNT_FIELD_NAME="GRPRECCNT"}get caseSensitiveGroups(){return this._caseSensitiveGroups}set caseSensitiveGroups(t){this._caseSensitiveGroups=t,this.updateCompareProc()}updateCompareProc(){this.compareValues=this._caseSensitiveGroups?this.strictCompare:this.caseInsensitiveCompare}addGroup(t){const e=t.columns||this.colStore.getColumnIds(t.from,t.to);if(!this.colStore.validateColumns(e))throw"Invalid columns: "+e;if(this.hasColumnsInUse(e))throw"Can't add same columns to different groups/aggregates";return this.groups.push(Object.assign({columns:e},t)),this}addAggregateColumn(t,e){const i="string"==typeof t?t:this.colStore.getColumnIds(t,t)[0];if(this.hasColumnsInUse([i])||!this.colStore.validateAggregate(i,e))throw"Invalid aggregation function for the column: "+i;return this.aggregates.push({colId:i,funcId:e}),this}addGrandTotals(){return this.useGrandTotals=!0,this}addCounts(){return this.useRecordCount=!0,this}getGroups(){let t=[];return this.groups.map((e=>(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups)if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0;for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const i=!this.caseSensitiveGroups;let s={};if(t)for(const n of t.columns){let t=e.getValue(n);i&&"string"==typeof t&&(t=t.toLowerCase()),s[n]=t}return s}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}},get ColumnAlignment(){return l},DataColumn:y,DataColumnList:D,DataRow:w,get DataType(){return e},EasyDataTable:class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new D,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof w?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new w(this._columns,i)}mapDate(t,i){if(t){let s=new Date(t);return isNaN(s.getTime())&&i==e.Time&&(s=o.strToTime(t)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new w(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}},EasyGuid:v,EditorTag:s,get EntityAttrKind(){return i},EventEmitter:class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:v.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}},HttpClient:class t{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(a.Get,t,null,e)}post(t,e,i){return this.send(a.Post,t,e,i)}put(t,e,i){return this.send(a.Put,t,e,i)}delete(t,e,i){return this.send(a.Delete,t,e,i)}send(e,i,s,n){const a=(n=n||{}).dataType||"json",r=n.contentType||"form-data"!==a?"application/json":null;s&&"form-data"!=a&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const l=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:e,url:i,headers:Object.assign(Object.assign({},this.defaultHeaders),n.headers||{}),queryParams:n.queryParams||{},data:s};r&&(h.headers["Content-Type"]=r);const d=new c(l,h);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const p=d.data&&"string"!=typeof d.data&&"json"==a?JSON.stringify(d.data):d.data;return d.open(),new u(d,new Promise(((e,s)=>{n.responseType&&(l.responseType=n.responseType),l.onerror=t=>{s(new g(l.status,l.responseText))},l.onreadystatechange=()=>{if(4!=l.readyState)return;const n=l.getResponseHeader("Content-Type")||"",a=l.status;if(0===a)s(new g(a,"Network error or the request was aborted"));else if(a>=200&&a<400){const t="arraybuffer"===l.responseType||"blob"===l.responseType?l.response:0==n.indexOf("application/json")?JSON.parse(l.responseText):l.responseText;this._responseBody=t,this.onResponse&&this.onResponse(l),e(t)}else("arraybuffer"===l.responseType||"blob"===l.responseType?t.decodeArrayBuffer(l.response):Promise.resolve(l.responseText)).then((t=>{const e=0==n.indexOf("application/json")?JSON.parse(t):t;this._responseBody=e;const o=e.message||(404==a?`No such endpoint: ${i}`:e);s(new g(a,o))}))},l.send(p)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}},get HttpMethod(){return a},HttpRequest:c,HttpResponseError:g,MetaData:class{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new m(t)}createValueEditor(){return new f}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let l=0;l0&&n.push(t)}}let h=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),a.sort(c)),d=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&d.sort(c),e.includeRootData?(s=r.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:d}):d}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",s.Edit,e.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",s.DateTime,e.DateTime),this.addOrUpdateValueEditor("_DPTE",s.DateTime,e.DateTime)}addOrUpdateValueEditor(t,e,i){let s=o.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s){n=r.getText("Entities",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i},get i18n(){return r},get liquid(){return h},registerSpecialDatesResolver:function(t){d=t},repeatString:function(t,e){return t.repeat(e)},reverseString:function(t){return t.split("").reverse().join("")},strEndsWith:function(t,e){return t&&t.lastIndexOf(e)==t.length-e.length},get utils(){return o}}); /*! - * EasyData.JS UI + * EasyData.JS UI v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(C||(C={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(T||(T={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(b||(b={})),function(t){t.getAllDataTypes=function(){return Object.values(C).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[C.Time,C.Date,C.DateTime]},t.getStringDataTypes=function(){return[C.String,C.Memo,C.FixedChar]};const e=[C.Byte,C.Word,C.Int32,C.Int64,C.Float,C.Currency,C.Autoinc];t.getNumericDataTypes=function(){return e};const i=[C.Byte,C.Word,C.Int32,C.Int64,C.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==C.Unknown||e==C.Unknown||t==e||t==C.Date&&e==C.DateTime||t==C.DateTime&&e==C.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(E||(E={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?E.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=E.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=E.assignDeep({},i)),e.settings=E.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=E.assignDeep({},s),n[t]=a)),E.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),E.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=E.assignDeep({},t,i.texts)}e.texts=E.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=E.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case C.Date:i=e.shortDateFormat;break;case C.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case C.Date:i=e.longDateFormat;break;case C.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(C.Date):"D"==i?i=m(C.Date):"f"==i?i=p(C.DateTime):"F"==i&&(i=m(C.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(x||(x={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(I||(I={}));let O=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},A=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}},k=class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:A.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}};function P(t){t.style.display="none"}function N(t,e){e||(e=""),t.style.display=e}function L(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function F(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=L(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,h=n.clientLeft||s.clientLeft||0,d=i.top+o-l,c=i.left+r-h;return{top:Math.round(d),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function $(){return{width:window.innerWidth,height:window.innerHeight}}(S||(S={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},x.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?"k-mobile":null}}(M||(M={}));const B="eqjs";function H(t,e){const i={9:"[0-9]",a:"[a-z]"},s=e.split(""),n=e=>{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_")}else n.push(e)})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let h=new RegExp(i[e],"i").test(l);a.push(h?l:"_"),h&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("input",n),t.addEventListener("focus",n)}let _=class{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=Y(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=Y("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new j(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0)},a=t=>{z&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o)};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new j(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===U.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new j(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)E.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case U.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case U.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case U.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case U.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case U.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==U.Forbid&&(this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=F(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=F(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&E.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-left`)},at=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(it,((e,i)=>x.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},ot=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let a=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat))a=e.dataColumn.displayFormat.replace(it,((i,s)=>x.dateTimeToStrEx(t,e.type,s)));else{const i=x.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case C.Date:a=t.toLocaleDateString(i);break;case C.Time:a=t.toLocaleTimeString(i,s);break;case C.DateTime:a=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=a,i.title=a,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},rt=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(it,((e,i)=>x.booleanToStr(t,i)));return nt(s,e,i)}i.classList.add(`${et}-cell-value-bool`),i.classList.add(`${et}-${t?"cell-value-true":"cell-value-false"}`)};let lt=class{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",nt),this.setDefaultRenderer(st.STRING,nt),this.registerRenderer("NumberDefault",at),this.setDefaultRenderer(st.NUMBER,at),this.registerRenderer("DateTimeDefault",ot),this.setDefaultRenderer(st.DATETIME,ot),this.registerRenderer("BoolDefault",rt),this.setDefaultRenderer(st.BOOL,rt)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[st[e]]}getDefaultRendererByType(t){return this.defaultRenderers[st[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[st[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case C.Autoinc:case C.Byte:case C.Word:case C.Currency:case C.Float:case C.Int32:case C.Int64:return st.NUMBER;case C.Date:case C.DateTime:case C.Time:return st.DATETIME;case C.Bool:return st.BOOL;default:return st.STRING}}},ht=class{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}},dt=class{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}},ct=class extends ht{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),Y(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=Y("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=x.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=Y("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=E.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=x.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=x.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return Y("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{Y("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=Y("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=x.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e}};var pt;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(pt||(pt={}));const mt="kdlg";let ft=class t{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new wt(t,this)}untrack(e){const i=t.openDialogs.indexOf(e);i>=0&&t.openDialogs.splice(i,1)}track(e){t.openDialogs.push(e)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(t.openDialogs)}closeAllDialogs(){for(const e of Array.from(t.openDialogs))e.close()}};ft.openDialogs=[];let yt=class{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=E.generateId("dlg"),this.data=e,this.slot=Y("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${mt}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild("p",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${mt}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),"string"==typeof t.body){const s=S.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==pt.Center?"align-center":"align-right",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||x.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on("click",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||x.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),Y(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=Y("div").addClass(`${mt}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${mt}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${mt}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}},wt=class{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}};var vt,Ct;x.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4"}(vt||(vt={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9"}(Ct||(Ct={}));let Tt=class extends yt{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=Y("div").addClass("tsp__container").addChild("div",(t=>{t.addClass("tsp__intervals").addChild("button",(t=>t.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(vt.THIS_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(vt.LAST_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(vt.THIS_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(vt.FIRST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(vt.LAST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(vt.THIS_YEAR)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(vt.QUARTER_1)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(vt.QUARTER_2)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(vt.QUARTER_3)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(vt.QUARTER_4)}))))})).addChild("div",(t=>{t.addClass("tsp__form").addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Start")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))})).addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?"from":"to";const a=new Date;switch(e){case Ct.TODAY:s=a;break;case Ct.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case Ct.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case Ct.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case Ct.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case Ct.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case Ct.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case Ct.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case Ct.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=Ct.UNDEF,"from"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case vt.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case vt.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case vt.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case vt.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case vt.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case vt.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case vt.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case vt.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\${{${e}}}`;return x.dateTimeToStr(t,x.getLocaleSettings().editDateFormat)}};const bt=new ft;var Et,xt,It=Object.freeze({__proto__:null,get AutoResizeColumns(){return X},Calendar:ht,get CellRendererType(){return st},DFMT_REGEX:it,DateTimePicker:dt,DefaultCalendar:ct,DefaultDateTimePicker:class extends dt{render(){const t=Y("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=Y("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(x.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(x.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(x.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ct(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new gt(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body),i=F(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}},DefaultDialog:yt,DefaultDialogService:ft,DefaultDialogSet:wt,DefaultProgressDialog:Dt,DefaultTimePicker:gt,get DialogFooterAlignment(){return pt},DomElementBuilder:_,DomInputElementBuilder:V,DomSelectElementBuilder:G,DomTextAreaElementBuilder:W,DragManager:K,get DropEffect(){return U},EasyGrid:class{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:X.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=Y("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(Y("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=E.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new k(this),this.cellRendererStore=new lt(t),this.columns=new tt(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=E.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=E.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=E.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;E.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),E.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[C.Bool]=Object.assign(Object.assign({},t.boolColumns),t[C.Bool]),E.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...E.getStringDataTypes(),...E.getNumericDataTypes(),...E.getDateDataTypes(),C.Bool];E.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[C.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),E.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&J.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=U.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==X.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return Y(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,Y(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=Y("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=Y("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=Y("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=Y("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&Y(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();Y(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=Y("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return Y("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||Y("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&Y("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&J.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=U.Allow}}),s}renderBody(){this.bodyDiv=Y("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=Y("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=Y("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{Y(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new O(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let h="";const d=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==d,(i>=0||n>=0)&&(h=e.getValue(d))}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(h=this.renderCell(r,l,h,n).firstChild.innerHTML,h=this.applyGroupColumnTemplate(u,h,a[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,h,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=Y("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=Y("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=x.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=Y("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==Q.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==Q.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==Q.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(Y("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(st.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener("click",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let h=document.createElement("ul");h.className=`${e}pagination`;let d=s(r-1,"«",1==r,!0,!1);h.appendChild(d);for(let t=r;t<=l;t++)d=s(t,t.toString(),!1,!1,t==i),h.appendChild(d);d=s(l+1,"»",l==n,!0,!1),h.appendChild(d),t.appendChild(h)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),a=this.options.paging.pageSizeItems||[],o=new Set(a);o.add(this.options.paging.pageSize||20),Array.from(o).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=x.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?Y("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():Y("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=F(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(o>0)e+=o,a.width=o,r.forEach((t=>{t.parentElement.style.width=`${o}px`})),s[n].style.width=`${o}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}},EqDragEvent:j,GridCellRendererStore:lt,GridColumn:Z,get GridColumnAlign(){return Q},GridColumnList:tt,get JUMP_TO(){return Ct},get PRE_SELECT(){return vt},TimePicker:ut,TimeSpanPicker:Tt,addCssClass:function(t,e){t.className=t.className?t.className+" "+e:e},addElement:function(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s},get browserUtils(){return M},createBrowserEvent:function(t){var e;return"function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e},dialogs:bt,domel:Y,eqCssMobile:"eqjs-mobile",eqCssPrefix:B,eqDragManager:J,getDocSize:function(){return M.IsIE()?$():{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}},getElementAbsolutePos:F,getScrollPos:L,getViewportSize:function(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}},getWinSize:$,hideElement:P,isVisible:function(t){return"none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight},mask:H,showElement:N,showTimeSpanPicker:t=>new Tt(t).open(),slideDown:function(t,e,i){t.style.removeProperty("display");let s=window.getComputedStyle(t).display;"none"===s&&(s="block"),t.style.display=s;let n=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=n+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},slideUp:function(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},toggleVisibility:function(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),P(t),N(e,i.display),i.complete&&i.complete()},wrapInner:function(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}}); + */!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(C||(C={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(T||(T={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(b||(b={})),function(t){t.getAllDataTypes=function(){return Object.values(C).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[C.Time,C.Date,C.DateTime]},t.getStringDataTypes=function(){return[C.String,C.Memo,C.FixedChar]};const e=[C.Byte,C.Word,C.Int32,C.Int64,C.Float,C.Currency,C.Autoinc];t.getNumericDataTypes=function(){return e};const i=[C.Byte,C.Word,C.Int32,C.Int64,C.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==C.Unknown||e==C.Unknown||t==e||t==C.Date&&e==C.DateTime||t==C.DateTime&&e==C.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(E||(E={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?E.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=E.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=E.assignDeep({},i)),e.settings=E.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=E.assignDeep({},s),n[t]=a)),E.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),E.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=E.assignDeep({},t,i.texts)}e.texts=E.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=E.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case C.Date:i=e.shortDateFormat;break;case C.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case C.Date:i=e.longDateFormat;break;case C.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(C.Date):"D"==i?i=m(C.Date):"f"==i?i=p(C.DateTime):"F"==i&&(i=m(C.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(x||(x={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(I||(I={}));let O=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},A=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}},k=class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:A.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}};function P(t){t.style.display="none"}function N(t,e){e||(e=""),t.style.display=e}function L(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function F(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=L(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,h=n.clientLeft||s.clientLeft||0,d=i.top+o-l,c=i.left+r-h;return{top:Math.round(d),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function $(){return{width:window.innerWidth,height:window.innerHeight}}(S||(S={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},x.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?"k-mobile":null}}(M||(M={}));const B="eqjs";function H(t,e){const i={9:"[0-9]",a:"[a-z]"},s=e.split(""),n=e=>{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_")}else n.push(e)})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let h=new RegExp(i[e],"i").test(l);a.push(h?l:"_"),h&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("input",n),t.addEventListener("focus",n)}let _=class{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=Y(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=Y("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new j(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0)},a=t=>{z&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o)};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new j(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===U.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new j(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)E.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case U.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case U.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case U.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case U.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case U.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==U.Forbid&&(this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=F(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=F(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&E.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-left`)},at=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(it,((e,i)=>x.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},ot=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let a=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat))a=e.dataColumn.displayFormat.replace(it,((i,s)=>x.dateTimeToStrEx(t,e.type,s)));else{const i=x.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case C.Date:a=t.toLocaleDateString(i);break;case C.Time:a=t.toLocaleTimeString(i,s);break;case C.DateTime:a=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=a,i.title=a,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},rt=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(it,((e,i)=>x.booleanToStr(t,i)));return nt(s,e,i)}i.classList.add(`${et}-cell-value-bool`),i.classList.add(`${et}-${t?"cell-value-true":"cell-value-false"}`)};let lt=class{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",nt),this.setDefaultRenderer(st.STRING,nt),this.registerRenderer("NumberDefault",at),this.setDefaultRenderer(st.NUMBER,at),this.registerRenderer("DateTimeDefault",ot),this.setDefaultRenderer(st.DATETIME,ot),this.registerRenderer("BoolDefault",rt),this.setDefaultRenderer(st.BOOL,rt)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[st[e]]}getDefaultRendererByType(t){return this.defaultRenderers[st[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[st[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case C.Autoinc:case C.Byte:case C.Word:case C.Currency:case C.Float:case C.Int32:case C.Int64:return st.NUMBER;case C.Date:case C.DateTime:case C.Time:return st.DATETIME;case C.Bool:return st.BOOL;default:return st.STRING}}},ht=class{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}},dt=class{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}},ct=class extends ht{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),Y(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=Y("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=x.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=Y("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=E.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=x.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=x.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return Y("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{Y("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=Y("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=x.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e}};var pt;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(pt||(pt={}));const mt="kdlg";let ft=class t{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new wt(t,this)}untrack(e){const i=t.openDialogs.indexOf(e);i>=0&&t.openDialogs.splice(i,1)}track(e){t.openDialogs.push(e)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(t.openDialogs)}closeAllDialogs(){for(const e of Array.from(t.openDialogs))e.close()}};ft.openDialogs=[];let yt=class{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=E.generateId("dlg"),this.data=e,this.slot=Y("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${mt}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild("p",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${mt}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),"string"==typeof t.body){const s=S.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==pt.Center?"align-center":"align-right",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||x.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on("click",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||x.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),Y(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=Y("div").addClass(`${mt}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${mt}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${mt}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}},wt=class{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}};var vt,Ct;x.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4"}(vt||(vt={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9"}(Ct||(Ct={}));let Tt=class extends yt{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=Y("div").addClass("tsp__container").addChild("div",(t=>{t.addClass("tsp__intervals").addChild("button",(t=>t.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(vt.THIS_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(vt.LAST_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(vt.THIS_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(vt.FIRST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(vt.LAST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(vt.THIS_YEAR)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(vt.QUARTER_1)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(vt.QUARTER_2)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(vt.QUARTER_3)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(vt.QUARTER_4)}))))})).addChild("div",(t=>{t.addClass("tsp__form").addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Start")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))})).addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?"from":"to";const a=new Date;switch(e){case Ct.TODAY:s=a;break;case Ct.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case Ct.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case Ct.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case Ct.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case Ct.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case Ct.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case Ct.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case Ct.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=Ct.UNDEF,"from"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case vt.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case vt.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case vt.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case vt.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case vt.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case vt.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case vt.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case vt.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\${{${e}}}`;return x.dateTimeToStr(t,x.getLocaleSettings().editDateFormat)}};const bt=new ft;var Et,xt,It=Object.freeze({__proto__:null,get AutoResizeColumns(){return X},Calendar:ht,get CellRendererType(){return st},DFMT_REGEX:it,DateTimePicker:dt,DefaultCalendar:ct,DefaultDateTimePicker:class extends dt{render(){const t=Y("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=Y("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(x.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(x.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(x.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ct(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new gt(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body),i=F(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}},DefaultDialog:yt,DefaultDialogService:ft,DefaultDialogSet:wt,DefaultProgressDialog:Dt,DefaultTimePicker:gt,get DialogFooterAlignment(){return pt},DomElementBuilder:_,DomInputElementBuilder:V,DomSelectElementBuilder:G,DomTextAreaElementBuilder:W,DragManager:K,get DropEffect(){return U},EasyGrid:class{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:X.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=Y("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(Y("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=E.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new k(this),this.cellRendererStore=new lt(t),this.columns=new tt(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=E.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=E.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=E.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;E.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),E.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[C.Bool]=Object.assign(Object.assign({},t.boolColumns),t[C.Bool]),E.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...E.getStringDataTypes(),...E.getNumericDataTypes(),...E.getDateDataTypes(),C.Bool];E.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[C.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),E.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&J.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=U.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==X.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return Y(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,Y(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=Y("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=Y("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=Y("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=Y("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&Y(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();Y(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=Y("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return Y("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||Y("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&Y("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&J.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=U.Allow}}),s}renderBody(){this.bodyDiv=Y("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=Y("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=Y("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{Y(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new O(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let h="";const d=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==d,(i>=0||n>=0)&&(h=e.getValue(d))}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(h=this.renderCell(r,l,h,n).firstChild.innerHTML,h=this.applyGroupColumnTemplate(u,h,a[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,h,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=Y("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=Y("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=x.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=Y("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==Q.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==Q.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==Q.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(Y("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(st.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener("click",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let h=document.createElement("ul");h.className=`${e}pagination`;let d=s(r-1,"«",1==r,!0,!1);h.appendChild(d);for(let t=r;t<=l;t++)d=s(t,t.toString(),!1,!1,t==i),h.appendChild(d);d=s(l+1,"»",l==n,!0,!1),h.appendChild(d),t.appendChild(h)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),a=this.options.paging.pageSizeItems||[],o=new Set(a);o.add(this.options.paging.pageSize||20),Array.from(o).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=x.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?Y("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():Y("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=F(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(o>0)e+=o,a.width=o,r.forEach((t=>{t.parentElement.style.width=`${o}px`})),s[n].style.width=`${o}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}},EqDragEvent:j,GridCellRendererStore:lt,GridColumn:Z,get GridColumnAlign(){return Q},GridColumnList:tt,get JUMP_TO(){return Ct},get PRE_SELECT(){return vt},TimePicker:ut,TimeSpanPicker:Tt,addCssClass:function(t,e){t.className=t.className?t.className+" "+e:e},addElement:function(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s},get browserUtils(){return M},createBrowserEvent:function(t){var e;return"function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e},dialogs:bt,domel:Y,eqCssMobile:"eqjs-mobile",eqCssPrefix:B,eqDragManager:J,getDocSize:function(){return M.IsIE()?$():{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}},getElementAbsolutePos:F,getScrollPos:L,getViewportSize:function(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}},getWinSize:$,hideElement:P,isVisible:function(t){return"none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight},mask:H,showElement:N,showTimeSpanPicker:t=>new Tt(t).open(),slideDown:function(t,e,i){t.style.removeProperty("display");let s=window.getComputedStyle(t).display;"none"===s&&(s="block"),t.style.display=s;let n=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=n+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},slideUp:function(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},toggleVisibility:function(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),P(t),N(e,i.display),i.complete&&i.complete()},wrapInner:function(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}}); /*! - * EasyData.JS CRUD + * EasyData.JS CRUD v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(Et||(Et={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(xt||(xt={}));const St="Unknown",Mt="EDIT",Rt="DATETIME";var Ot,At,kt,Pt,Nt;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(Ot||(Ot={}));let Lt=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(Et).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[Et.Time,Et.Date,Et.DateTime]},t.getStringDataTypes=function(){return[Et.String,Et.Memo,Et.FixedChar]};const e=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Float,Et.Currency,Et.Autoinc];t.getNumericDataTypes=function(){return e};const i=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==Et.Unknown||e==Et.Unknown||t==e||t==Et.Date&&e==Et.DateTime||t==Et.DateTime&&e==Et.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(At||(At={}));class Ft{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class $t extends Error{constructor(t,e){super(e),this.status=t}}class Bt{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(Ot.Get,t,null,e)}post(t,e,i){return this.send(Ot.Post,t,e,i)}put(t,e,i){return this.send(Ot.Put,t,e,i)}delete(t,e,i){return this.send(Ot.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||"json",a=s.contentType||"form-data"!==n?"application/json":null;i&&"form-data"!=n&&this.customPayload&&(i.data=At.assignDeep(i.data||{},this.customPayload));const o=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};a&&(r.headers["Content-Type"]=a);const l=new Lt(o,r);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const h=l.data&&"string"!=typeof l.data&&"json"==n?JSON.stringify(l.data):l.data;return l.open(),new Ft(l,new Promise(((t,i)=>{s.responseType&&(o.responseType=s.responseType),o.onerror=t=>{i(new $t(o.status,o.responseText))},o.onreadystatechange=()=>{if(4!=o.readyState)return;const s=o.getResponseHeader("Content-Type")||"",n=o.status;if(0===n)i(new $t(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===o.responseType||"blob"===o.responseType?o.response:0==s.indexOf("application/json")?JSON.parse(o.responseText):o.responseText;this._responseBody=e,this.onResponse&&this.onResponse(o),t(e)}else("arraybuffer"===o.responseType||"blob"===o.responseType?Bt.decodeArrayBuffer(o.response):Promise.resolve(o.responseText)).then((t=>{const a=0==s.indexOf("application/json")?JSON.parse(t):t;this._responseBody=a;const o=a.message||(404==n?`No such endpoint: ${e}`:a);i(new $t(n,o))}))},o.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?At.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=At.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=At.assignDeep({},i)),e.settings=At.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=At.assignDeep({},s),n[t]=a)),At.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),At.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=At.assignDeep({},t,i.texts)}e.texts=At.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=At.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case Et.Date:i=e.shortDateFormat;break;case Et.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case Et.Date:i=e.longDateFormat;break;case Et.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(Et.Date):"D"==i?i=m(Et.Date):"f"==i?i=p(Et.DateTime):"F"==i&&(i=m(Et.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(kt||(kt={}));class Ht{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class _t{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=Et.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=xt.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=At.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=At.getIfDefined(e.nul,this.isNullable),this.isEditable=At.getIfDefined(e.ied,this.isEditable),this.showOnView=At.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=At.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=At.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=At.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class Wt{constructor(){this.id="",this.tag=St,this.resType=Et.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class Vt{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new Ht(t)}createEntityAttr(t){return new _t(t)}createValueEditor(){return new Wt}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let o=0;o0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(h),a.sort(h)),l=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&l.sort(h),e.includeRootData?(s=kt.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:l}):l}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",Mt,Et.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",Rt,Et.DateTime),this.addOrUpdateValueEditor("_DPTE",Rt,Et.DateTime)}addOrUpdateValueEditor(t,e,i){let s=At.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s&&(n=kt.getText("Entities",t.caption)||t.caption),t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[Et.Date,Et.DateTime,Et.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(At.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class zt{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}let Ut=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new Yt,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof zt?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new zt(this._columns,i)}mapDate(t,e){if(t){let i=new Date(t);return isNaN(i.getTime())&&e==Et.Time&&(i=At.strToTime(t)),i}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new zt(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function jt(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}(Nt||(Nt={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},kt.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class qt{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue="",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>At.isNumericType(t.type)||At.getStringDataTypes().indexOf(t.type)>=0)),a=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())a(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}} + */!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(Et||(Et={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(xt||(xt={}));const St="Unknown",Mt="EDIT",Rt="DATETIME";var Ot,At,kt,Pt,Nt;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(Ot||(Ot={}));let Lt=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(Et).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[Et.Time,Et.Date,Et.DateTime]},t.getStringDataTypes=function(){return[Et.String,Et.Memo,Et.FixedChar]};const e=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Float,Et.Currency,Et.Autoinc];t.getNumericDataTypes=function(){return e};const i=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==Et.Unknown||e==Et.Unknown||t==e||t==Et.Date&&e==Et.DateTime||t==Et.DateTime&&e==Et.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(At||(At={}));class Ft{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class $t extends Error{constructor(t,e){super(e),this.status=t}}class Bt{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(Ot.Get,t,null,e)}post(t,e,i){return this.send(Ot.Post,t,e,i)}put(t,e,i){return this.send(Ot.Put,t,e,i)}delete(t,e,i){return this.send(Ot.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||"json",a=s.contentType||"form-data"!==n?"application/json":null;i&&"form-data"!=n&&this.customPayload&&(i.data=At.assignDeep(i.data||{},this.customPayload));const o=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};a&&(r.headers["Content-Type"]=a);const l=new Lt(o,r);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const h=l.data&&"string"!=typeof l.data&&"json"==n?JSON.stringify(l.data):l.data;return l.open(),new Ft(l,new Promise(((t,i)=>{s.responseType&&(o.responseType=s.responseType),o.onerror=t=>{i(new $t(o.status,o.responseText))},o.onreadystatechange=()=>{if(4!=o.readyState)return;const s=o.getResponseHeader("Content-Type")||"",n=o.status;if(0===n)i(new $t(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===o.responseType||"blob"===o.responseType?o.response:0==s.indexOf("application/json")?JSON.parse(o.responseText):o.responseText;this._responseBody=e,this.onResponse&&this.onResponse(o),t(e)}else("arraybuffer"===o.responseType||"blob"===o.responseType?Bt.decodeArrayBuffer(o.response):Promise.resolve(o.responseText)).then((t=>{const a=0==s.indexOf("application/json")?JSON.parse(t):t;this._responseBody=a;const o=a.message||(404==n?`No such endpoint: ${e}`:a);i(new $t(n,o))}))},o.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?At.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=At.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=At.assignDeep({},i)),e.settings=At.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=At.assignDeep({},s),n[t]=a)),At.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),At.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=At.assignDeep({},t,i.texts)}e.texts=At.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=At.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case Et.Date:i=e.shortDateFormat;break;case Et.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case Et.Date:i=e.longDateFormat;break;case Et.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(Et.Date):"D"==i?i=m(Et.Date):"f"==i?i=p(Et.DateTime):"F"==i&&(i=m(Et.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(kt||(kt={}));class Ht{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class _t{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=Et.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=xt.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=At.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=At.getIfDefined(e.nul,this.isNullable),this.isEditable=At.getIfDefined(e.ied,this.isEditable),this.showOnView=At.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=At.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=At.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=At.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class Wt{constructor(){this.id="",this.tag=St,this.resType=Et.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class Vt{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new Ht(t)}createEntityAttr(t){return new _t(t)}createValueEditor(){return new Wt}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let o=0;o0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(h),a.sort(h)),l=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&l.sort(h),e.includeRootData?(s=kt.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:l}):l}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",Mt,Et.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",Rt,Et.DateTime),this.addOrUpdateValueEditor("_DPTE",Rt,Et.DateTime)}addOrUpdateValueEditor(t,e,i){let s=At.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s&&(n=kt.getText("Entities",t.caption)||t.caption),t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[Et.Date,Et.DateTime,Et.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(At.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class zt{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}let Ut=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new Yt,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof zt?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new zt(this._columns,i)}mapDate(t,e){if(t){let i=new Date(t);return isNaN(i.getTime())&&e==Et.Time&&(i=At.strToTime(t)),i}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new zt(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function jt(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}(Nt||(Nt={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},kt.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class qt{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue="",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>At.isNumericType(t.type)||At.getStringDataTypes().indexOf(t.type)>=0)),a=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())a(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}} /*! - * EasyData.JS UI + * EasyData.JS UI v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/ + */ /*! - * EasyData.JS Core + * EasyData.JS Core v1.4.20 * Copyright 2023 Korzh.com * Licensed under MIT - !*/var Kt,Jt,Xt,Qt,Zt,te,ee,ie;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(Kt||(Kt={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(Jt||(Jt={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(Xt||(Xt={})),function(t){t.getAllDataTypes=function(){return Object.values(Kt).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[Kt.Time,Kt.Date,Kt.DateTime]},t.getStringDataTypes=function(){return[Kt.String,Kt.Memo,Kt.FixedChar]};const e=[Kt.Byte,Kt.Word,Kt.Int32,Kt.Int64,Kt.Float,Kt.Currency,Kt.Autoinc];t.getNumericDataTypes=function(){return e};const i=[Kt.Byte,Kt.Word,Kt.Int32,Kt.Int64,Kt.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==Kt.Unknown||e==Kt.Unknown||t==e||t==Kt.Date&&e==Kt.DateTime||t==Kt.DateTime&&e==Kt.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(Qt||(Qt={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?Qt.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=Qt.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=Qt.assignDeep({},i)),e.settings=Qt.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=Qt.assignDeep({},s),n[t]=a)),Qt.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),Qt.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=Qt.assignDeep({},t,i.texts)}e.texts=Qt.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=Qt.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case Kt.Date:i=e.shortDateFormat;break;case Kt.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case Kt.Date:i=e.longDateFormat;break;case Kt.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(Kt.Date):"D"==i?i=m(Kt.Date):"f"==i?i=p(Kt.DateTime):"F"==i&&(i=m(Kt.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(Zt||(Zt={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(te||(te={}));class se{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}class ne{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}}class ae{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:ne.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function oe(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,h=n.clientLeft||s.clientLeft||0,d=i.top+o-l,c=i.left+r-h;return{top:Math.round(d),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(ee||(ee={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},Zt.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?"k-mobile":null}}(ie||(ie={}));const re="eqjs";class le{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=ue(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_")}else n.push(e)})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let h=new RegExp(i[e],"i").test(l);a.push(h?l:"_"),h&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("input",n),t.addEventListener("focus",n)}(this.element,t),this}}class ce extends le{constructor(t,e){super(t||"select",e)}addOption(t){const e=document.createElement("option");return"string"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function ue(t,e){return"div"===t||t instanceof HTMLDivElement||"span"===t||t instanceof HTMLSpanElement||"a"===t||t instanceof HTMLAnchorElement||"button"===t||t instanceof HTMLButtonElement||"img"===t||t instanceof HTMLImageElement?new le(t,e):"input"===t||t instanceof HTMLInputElement?new de(t instanceof HTMLInputElement?t:null,e):"textarea"===t||t instanceof HTMLTextAreaElement?new he(t instanceof HTMLTextAreaElement?t:null,e):"select"===t||t instanceof HTMLSelectElement?new ce(t instanceof HTMLSelectElement?t:null,e):new le(t,e)}const ge="undefined"!=typeof TouchEvent;var pe;!function(t){t.None="none",t.Allow="allow",t.Forbid="forbid"}(pe||(pe={}));class me{constructor(t,e,i){this.dropEffect=pe.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&ge&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class fe{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&ge&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const ye=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=pe.None,this.classPrefix="eqjs-drop",this.DRAG_DISABLED_ATTR="drag-disabled"}registerDraggableItem(t){const e=t.element;if(!e)throw Error("Element in draggle item is null or undefined");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new fe(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=ue("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=pe.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new me(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0)},a=t=>{ge&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new fe(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o)};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new me(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===pe.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new me(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)Qt.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case pe.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case pe.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case pe.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case pe.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case pe.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=pe.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==pe.Forbid&&(this.dropEffect=pe.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=pe.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=oe(t),s=new fe(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=oe(t),s=new fe(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&Qt.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-left`)},Ie=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(be,((e,i)=>Zt.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-right`)},Se=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let a=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat))a=e.dataColumn.displayFormat.replace(be,((i,s)=>Zt.dateTimeToStrEx(t,e.type,s)));else{const i=Zt.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case Kt.Date:a=t.toLocaleDateString(i);break;case Kt.Time:a=t.toLocaleTimeString(i,s);break;case Kt.DateTime:a=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=a,i.title=a,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-right`)},Me=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(be,((e,i)=>Zt.booleanToStr(t,i)));return xe(s,e,i)}i.classList.add(`${Te}-cell-value-bool`),i.classList.add(`${Te}-${t?"cell-value-true":"cell-value-false"}`)};class Re{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",xe),this.setDefaultRenderer(Ee.STRING,xe),this.registerRenderer("NumberDefault",Ie),this.setDefaultRenderer(Ee.NUMBER,Ie),this.registerRenderer("DateTimeDefault",Se),this.setDefaultRenderer(Ee.DATETIME,Se),this.registerRenderer("BoolDefault",Me),this.setDefaultRenderer(Ee.BOOL,Me)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[Ee[e]]}getDefaultRendererByType(t){return this.defaultRenderers[Ee[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[Ee[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case Kt.Autoinc:case Kt.Byte:case Kt.Word:case Kt.Currency:case Kt.Float:case Kt.Int32:case Kt.Int64:return Ee.NUMBER;case Kt.Date:case Kt.DateTime:case Kt.Time:return Ee.DATETIME;case Kt.Bool:return Ee.BOOL;default:return Ee.STRING}}}class Oe{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:De.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=ue("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(ue("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=Qt.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new ae(this),this.cellRendererStore=new Re(t),this.columns=new Ce(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=Qt.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=Qt.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=Qt.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;Qt.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),Qt.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[Kt.Bool]=Object.assign(Object.assign({},t.boolColumns),t[Kt.Bool]),Qt.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...Qt.getStringDataTypes(),...Qt.getNumericDataTypes(),...Qt.getDateDataTypes(),Kt.Bool];Qt.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[Kt.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),Qt.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&ye.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${re}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=pe.Forbid,this.slot.classList.remove(`${re}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==De.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return ue(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,ue(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=ue("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=ue("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=ue("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=ue("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&ue(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();ue(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=ue("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return ue("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||ue("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&ue("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&ye.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=pe.Allow}}),s}renderBody(){this.bodyDiv=ue("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=ue("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=ue("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{ue(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new se(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=ue("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let h="";const d=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==d,(i>=0||n>=0)&&(h=e.getValue(d))}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(h=this.renderCell(r,l,h,n).firstChild.innerHTML,h=this.applyGroupColumnTemplate(u,h,a[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,h,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=ue("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=ue("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=Zt.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=ue("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=ue("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==we.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==we.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==we.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(ue("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(Ee.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener("click",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let h=document.createElement("ul");h.className=`${e}pagination`;let d=s(r-1,"«",1==r,!0,!1);h.appendChild(d);for(let t=r;t<=l;t++)d=s(t,t.toString(),!1,!1,t==i),h.appendChild(d);d=s(l+1,"»",l==n,!0,!1),h.appendChild(d),t.appendChild(h)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),a=this.options.paging.pageSizeItems||[],o=new Set(a);o.add(this.options.paging.pageSize||20),Array.from(o).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=Zt.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?ue("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():ue("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=oe(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(o>0)e+=o,a.width=o,r.forEach((t=>{t.parentElement.style.width=`${o}px`})),s[n].style.width=`${o}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}}class Ae{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class ke{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=oe(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class Pe extends Ae{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),ue(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=ue("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=Zt.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=ue("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=Qt.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=Zt.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=Zt.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return ue("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{ue("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=ue("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=Zt.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e}}class Fe extends ke{render(){const t=ue("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=ue("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(Zt.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(Zt.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(Zt.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=ue("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new Pe(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=ue("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new Le(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=oe(t||document.body),i=oe(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}}var $e;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}($e||($e={}));const Be="kdlg";class He{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${Be}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${Be}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("")},this.open(n)}))}open(t,e){const i=new _e(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new Ve(t,this)}untrack(t){const e=He.openDialogs.indexOf(t);e>=0&&He.openDialogs.splice(e,1)}track(t){He.openDialogs.push(t)}openProgress(t){const e=new We(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(He.openDialogs)}closeAllDialogs(){for(const t of Array.from(He.openDialogs))t.close()}}He.openDialogs=[];class _e{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=Qt.generateId("dlg"),this.data=e,this.slot=ue("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${Be}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${Be}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${Be}-header`).addChild("p",(e=>e.addClass(`${Be}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${Be}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${Be}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${Be}-body`).toDOM(),"string"==typeof t.body){const s=ee.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==$e.Center?"align-center":"align-right",this.footerElement=e.addClass(`${Be}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||Zt.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on("click",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||Zt.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),ue(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${Be}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=ue("div").addClass(`${Be}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${Be}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${Be}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class Ve{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ge,Ye;Zt.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4"}(Ge||(Ge={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9"}(Ye||(Ye={}));const ze="yyyy-MM-dd",Ue="HH:mm",je=t=>{const e=kt.getLocaleSettings();return t==Et.Date?e.editDateFormat:t==Et.Time?e.editTimeFormat:`${e.editDateFormat} ${e.editTimeFormat}`},qe=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"))};class Ke{}class Je extends Ke{constructor(){super(),this.name="DateTime"}validate(t,e){if(!At.IsDefinedAndNotNull(e)||""==e)return{successed:!0};if(At.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=je(t.dataType);At.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[kt.getText("DateTimeError")]}}return{successed:!0}}}class Xe{constructor(t){this.context=t,this.validators=[new Je]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if("checkbox"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&ue(this.errorsDiv).addChild("ul"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll("input, select, textarea"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(".")+1),s=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?n[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(",")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(t,e){if(At.getDateDataTypes().indexOf(t)>=0){if(t!==Et.Time&&e&&e.length){const s=je(t),n=(i=t)==Et.Date?ze:i==Et.Time?Ue:`${ze}T${Ue}`,a=At.strToDateTime(e,s);return kt.dateTimeToStr(a,n)}return e&&e.length?e:null}var i;return At.isIntType(t)?parseInt(e):At.isNumericType(t)?parseFloat(e):e}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid")}))}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Qe{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=At.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(Ee.STRING);this.grid.cellRendererStore.setDefaultRenderer(Ee.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const a=this.grid.cellRendererStore.getDefaultRendererByType(Ee.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(Ee.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(a,t,e,i,s))),this.render()}render(){const t=ie.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",e=ie.IsIE()||ie.IsEdge();ue(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",kt.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this))})),e||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||ue(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(kt.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return!(t&&e==this.filterInput.value||(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),0))}highlightCellRenderer(t,e,i,s,n){if((At.isNumericType(i.type)||At.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&be.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(be,((t,i)=>kt.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),a=t+o.length):a++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement("div");for(let i=0;it.id==e.lookupEntity))[0],a=this.context.getMetaData().getAttributeById(e.dataAttr);if(!a)return;i=i||!a.isEditable,s=this.params.values?this.params.values.getValue(a.id):void 0;const o=Ze?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let r;ue(t).addChild("div",(t=>{t.addClass(o).addChild("input",(t=>{r=t.toDOM(),t.attr("readonly",""),t.name(a.id),t.type(this.resolveInputType(a.dataType)),t.value(At.IsDefinedAndNotNull(s)?s.toString():"")})),i||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",kt.getText("NavigationBtnTitle")).addText("...").on("click",(i=>{const s=new Ut({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup))).length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const a=new He;let o,l=null,h=null;const d=ue("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(kt.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>o=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>l=t.toDOM())))).toDOM();let c=r.value;const u=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof zt?t.getValue(e):t[e.substring(e.lastIndexOf(".")+1)])(t,e.id)}`)).join(", ")};if(c){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:c},n.id).then((t=>{t.entity&&u(t.entity)})).catch((t=>{console.error(t)}))}const g=new Oe({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{c=t.getValue(e.lookupDataAttr),u(t)}))}});a.open({title:kt.getText("LookupDlgCaption").replace("{entity}",n.caption),body:d,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Qe(o,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=c,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(t,e,i,s,n){const a=Ze?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",o=je(e.dataType);let r;const l=o.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");ue(t).addChild("div",(t=>{t.addClass(a).addChild("input",(t=>{r=t.toDOM(),t.name(e.id),t.type(n?"hidden":this.resolveInputType(e.dataType)),s?t.attr("readonly",""):(t.mask(l),t.on("keypress",(t=>this.applySumbit(t))).on("input",(e=>{t.removeClass("is-invalid");try{At.strToDateTime(r.value,o)}catch(e){t.addClass("is-invalid")}})).on("blur",(t=>{r.value===l.replace(/[9]/g,"_")&&(r.value="")}))),t.value(At.IsDefinedAndNotNull(i)?kt.dateTimeToStr(i,o):"")})),s||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",kt.getText(e.dataType!==Et.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(t=>t.addClass(e.dataType!==Et.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(t=>{let i;try{i=r.value.length?e.dataType!==Et.Time?At.strToDateTime(r.value,o):At.strToTime(r.value):new Date((new Date).setSeconds(0))}catch(t){i=new Date((new Date).setSeconds(0))}const s={zIndex:9999999999,showCalendar:e.dataType!==Et.Time,showTimePicker:e.dataType!==Et.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),r.value=kt.dateTimeToStr(t,o)}},n=new Fe(s);n.setDateTime(i),n.show(t.target)})).toDOM()))}))}setupListField(t,e,i,s,n){ue(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",s)}))}setupTextField(t,e,i,s,n){ue(t).addChild("input",(t=>{s&&t.attr("readonly",""),t.type(n?"hidden":this.resolveInputType(e.dataType)),t.name(e.id).type(this.resolveInputType(e.dataType)),e.dataType==Et.Bool?i&&t.attr("checked",""):t.on("keypress",(t=>this.applySumbit(t))).value(At.IsDefinedAndNotNull(i)?i.toString():"")}))}setupTextArea(t,e,i,s){ue(t).addChild("textarea",(t=>{s&&t.attr("readonly",""),t.attr("name",e.id),t.setStyle("height","120px"),t.value(At.IsDefinedAndNotNull(i)?i.toString():"")}))}addFormField(t,e){const i=this.params.values&&e.kind!==xt.Lookup?this.params.values.getValue(e.id):this.params.isEditForm?void 0:e.defaultValue,s=this.resolveEditor(e),n=this.params.isEditForm&&(e.isPrimaryKey||!e.isEditable),a=!e.isNullable;Ze&&(t=ue("div",t).addClass("kfrm-field-ie").toDOM()),ue(t).addChild("label",(t=>{t.attr("for",e.id),t.addHtml(`${e.caption} ${a?'*':""}: `),e.description&&t.addChild("div",(t=>t.attr("title",e.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")))}));const o=e.isPrimaryKey;if(e.kind!==xt.Lookup)switch(s.tag){case Rt:this.setupDateTimeField(t,e,i,n,o);break;case"LIST":this.setupListField(t,e,i,s.values,n);break;case"FILE":this.setupFileField(t,e,n,s.accept);break;default:s.multiline?this.setupTextArea(t,e,i,n):this.setupTextField(t,e,i,n,o)}else this.setupLookupField(t,e,n,i)}resolveInputType(t){return t===Et.Bool?"checkbox":t===Et.Blob?"file":"text"}resolveEditor(t){let e=t.defaultEditor||new Wt;return e.tag==St&&(At.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=Rt:e.tag=Mt),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=ue("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(Ze?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right"),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class ei{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar")}show(){this.slot.style.removeProperty("display")}hide(){this.slot.style.display="none"}}class ii{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});return delete t.sourceId,this.context.startProcess(),this.context.getHttpClient().post(e,t).then((e=>{const i=new Ut({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class si{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new Bt,this.model=new Vt,this.model.id=t.metaDataId||"__default",this.dataLoader=new ii(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new Ut(e),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new qt(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if("modelId"==s)n=this.model.getId();else{if("sourceId"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",jt(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",jt(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",jt(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",jt(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",jt(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",jt(t,"models/{modelId}/sources/{sourceId}/delete"))}}class ni extends Ke{constructor(){super(),this.name="Type"}validate(t,e){if(!At.IsDefinedAndNotNull(e)||""==e)return{successed:!0};if(At.isNumericType(t.dataType)){if(!At.isNumeric(e))return{successed:!1,messages:[kt.getText("NumberError")]};if(At.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[kt.getText("IntNumberError")]}}return{successed:!0}}}class ai extends Ke{constructor(){super(),this.name="Required"}validate(t,e){return t.isNullable||At.IsDefinedAndNotNull(e)&&""!==e?{successed:!0}:{successed:!1,messages:[kt.getText("RequiredError")]}}}class oi{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new ai,new ni],this.options=At.assignDeep(this.options,s||{}),this.dlg=new He;const n=this.context.getActiveEntity();if(!n)throw"Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&ue(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${kt.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),qe(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement("div");if(this.slot.appendChild(e),e.id="Grid",this.grid=new Oe(At.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:kt.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=ue("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Qe(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=ue("div",i).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&n.addChild("a",(t=>t.attr("href","javascript:void(0)").text(kt.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(s.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(kt.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute("data-row-idx")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new ti(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:kt.getText("AddDlgCaption").replace("{entity}",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new ti(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:kt.getText("EditDlgCaption").replace("{entity}",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=s[i],t)),{});this.dlg.openConfirm(kt.getText("DeleteDlgCaption").replace("{entity}",e.caption),kt.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class ri{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${kt.getText("RootViewTitle")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&ue(this.slot).addChild("div",(e=>e.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(kt.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{qe(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption)})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`)}))}))}))}))))}}kt.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."});var li=Object.freeze({__proto__:null,DataContext:si,EasyDataServerLoader:ii,EasyDataViewDispatcher:class{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation)},this.options=At.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement("div"),i=new ei(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new si({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw"Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else"#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new oi(this.container,this.context,this.basePath,this.options)):window.EDView=new ri(this.container,this.context,this.basePath)}clear(){this.container.innerHTML="",this.context.getData().clear()}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation)}},EntityDataView:oi,EntityEditForm:Xe,EntityEditFormBuilder:ti,ProgressBar:ei,RequiredValidator:ai,RootDataView:ri,TextDataFilter:qt,TextFilterWidget:Qe,TypeValidator:ni,Validator:Ke});return t.core=R,t.crud=li,t.ui=It,t}({}); + */var Kt,Jt,Xt,Qt,Zt,te,ee,ie;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(Kt||(Kt={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(Jt||(Jt={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(Xt||(Xt={})),function(t){t.getAllDataTypes=function(){return Object.values(Kt).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[Kt.Time,Kt.Date,Kt.DateTime]},t.getStringDataTypes=function(){return[Kt.String,Kt.Memo,Kt.FixedChar]};const e=[Kt.Byte,Kt.Word,Kt.Int32,Kt.Int64,Kt.Float,Kt.Currency,Kt.Autoinc];t.getNumericDataTypes=function(){return e};const i=[Kt.Byte,Kt.Word,Kt.Int32,Kt.Int64,Kt.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==Kt.Unknown||e==Kt.Unknown||t==e||t==Kt.Date&&e==Kt.DateTime||t==Kt.DateTime&&e==Kt.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(Qt||(Qt={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?Qt.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=Qt.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=Qt.assignDeep({},i)),e.settings=Qt.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=Qt.assignDeep({},s),n[t]=a)),Qt.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),Qt.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=Qt.assignDeep({},t,i.texts)}e.texts=Qt.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=Qt.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case Kt.Date:i=e.shortDateFormat;break;case Kt.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case Kt.Date:i=e.longDateFormat;break;case Kt.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(Kt.Date):"D"==i?i=m(Kt.Date):"f"==i?i=p(Kt.DateTime):"F"==i&&(i=m(Kt.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(Zt||(Zt={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(te||(te={}));class se{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}class ne{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}}class ae{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:ne.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function oe(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,h=n.clientLeft||s.clientLeft||0,d=i.top+o-l,c=i.left+r-h;return{top:Math.round(d),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(ee||(ee={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},Zt.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?"k-mobile":null}}(ie||(ie={}));const re="eqjs";class le{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=ue(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_")}else n.push(e)})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let h=new RegExp(i[e],"i").test(l);a.push(h?l:"_"),h&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("input",n),t.addEventListener("focus",n)}(this.element,t),this}}class ce extends le{constructor(t,e){super(t||"select",e)}addOption(t){const e=document.createElement("option");return"string"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function ue(t,e){return"div"===t||t instanceof HTMLDivElement||"span"===t||t instanceof HTMLSpanElement||"a"===t||t instanceof HTMLAnchorElement||"button"===t||t instanceof HTMLButtonElement||"img"===t||t instanceof HTMLImageElement?new le(t,e):"input"===t||t instanceof HTMLInputElement?new de(t instanceof HTMLInputElement?t:null,e):"textarea"===t||t instanceof HTMLTextAreaElement?new he(t instanceof HTMLTextAreaElement?t:null,e):"select"===t||t instanceof HTMLSelectElement?new ce(t instanceof HTMLSelectElement?t:null,e):new le(t,e)}const ge="undefined"!=typeof TouchEvent;var pe;!function(t){t.None="none",t.Allow="allow",t.Forbid="forbid"}(pe||(pe={}));class me{constructor(t,e,i){this.dropEffect=pe.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&ge&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class fe{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&ge&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const ye=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=pe.None,this.classPrefix="eqjs-drop",this.DRAG_DISABLED_ATTR="drag-disabled"}registerDraggableItem(t){const e=t.element;if(!e)throw Error("Element in draggle item is null or undefined");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new fe(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=ue("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=pe.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new me(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0)},a=t=>{ge&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new fe(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o)};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new me(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===pe.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new me(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)Qt.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case pe.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case pe.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case pe.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case pe.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case pe.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=pe.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==pe.Forbid&&(this.dropEffect=pe.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new me(this.draggableItem,this.dragImage,t);s.dropEffect=pe.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=oe(t),s=new fe(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=oe(t),s=new fe(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&Qt.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-left`)},Ie=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(be,((e,i)=>Zt.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-right`)},Se=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let a=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat))a=e.dataColumn.displayFormat.replace(be,((i,s)=>Zt.dateTimeToStrEx(t,e.type,s)));else{const i=Zt.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case Kt.Date:a=t.toLocaleDateString(i);break;case Kt.Time:a=t.toLocaleTimeString(i,s);break;case Kt.DateTime:a=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=a,i.title=a,e.align==we.NONE&&i.classList.add(`${Te}-cell-value-align-right`)},Me=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&be.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(be,((e,i)=>Zt.booleanToStr(t,i)));return xe(s,e,i)}i.classList.add(`${Te}-cell-value-bool`),i.classList.add(`${Te}-${t?"cell-value-true":"cell-value-false"}`)};class Re{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",xe),this.setDefaultRenderer(Ee.STRING,xe),this.registerRenderer("NumberDefault",Ie),this.setDefaultRenderer(Ee.NUMBER,Ie),this.registerRenderer("DateTimeDefault",Se),this.setDefaultRenderer(Ee.DATETIME,Se),this.registerRenderer("BoolDefault",Me),this.setDefaultRenderer(Ee.BOOL,Me)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[Ee[e]]}getDefaultRendererByType(t){return this.defaultRenderers[Ee[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[Ee[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case Kt.Autoinc:case Kt.Byte:case Kt.Word:case Kt.Currency:case Kt.Float:case Kt.Int32:case Kt.Int64:return Ee.NUMBER;case Kt.Date:case Kt.DateTime:case Kt.Time:return Ee.DATETIME;case Kt.Bool:return Ee.BOOL;default:return Ee.STRING}}}class Oe{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:De.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=ue("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(ue("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=Qt.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new ae(this),this.cellRendererStore=new Re(t),this.columns=new Ce(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=Qt.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=Qt.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=Qt.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;Qt.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),Qt.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[Kt.Bool]=Object.assign(Object.assign({},t.boolColumns),t[Kt.Bool]),Qt.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...Qt.getStringDataTypes(),...Qt.getNumericDataTypes(),...Qt.getDateDataTypes(),Kt.Bool];Qt.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[Kt.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),Qt.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&ye.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${re}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=pe.Forbid,this.slot.classList.remove(`${re}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==De.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return ue(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,ue(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=ue("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=ue("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=ue("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=ue("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&ue(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();ue(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=ue("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return ue("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||ue("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&ue("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&ye.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=pe.Allow}}),s}renderBody(){this.bodyDiv=ue("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=ue("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=ue("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{ue(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new se(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=ue("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let h="";const d=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==d,(i>=0||n>=0)&&(h=e.getValue(d))}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(h=this.renderCell(r,l,h,n).firstChild.innerHTML,h=this.applyGroupColumnTemplate(u,h,a[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,h,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=ue("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=ue("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=Zt.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=ue("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=ue("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==we.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==we.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==we.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(ue("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(Ee.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener("click",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let h=document.createElement("ul");h.className=`${e}pagination`;let d=s(r-1,"«",1==r,!0,!1);h.appendChild(d);for(let t=r;t<=l;t++)d=s(t,t.toString(),!1,!1,t==i),h.appendChild(d);d=s(l+1,"»",l==n,!0,!1),h.appendChild(d),t.appendChild(h)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),a=this.options.paging.pageSizeItems||[],o=new Set(a);o.add(this.options.paging.pageSize||20),Array.from(o).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=Zt.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?ue("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():ue("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=oe(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(o>0)e+=o,a.width=o,r.forEach((t=>{t.parentElement.style.width=`${o}px`})),s[n].style.width=`${o}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}}class Ae{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class ke{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=oe(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class Pe extends Ae{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),ue(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=ue("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=Zt.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=ue("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=Qt.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=Zt.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=Zt.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return ue("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{ue("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=ue("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=Zt.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e}}class Fe extends ke{render(){const t=ue("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=ue("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(Zt.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(Zt.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(Zt.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=ue("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new Pe(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=ue("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new Le(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=oe(t||document.body),i=oe(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}}var $e;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}($e||($e={}));const Be="kdlg";class He{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${Be}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${Be}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("")},this.open(n)}))}open(t,e){const i=new _e(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new Ve(t,this)}untrack(t){const e=He.openDialogs.indexOf(t);e>=0&&He.openDialogs.splice(e,1)}track(t){He.openDialogs.push(t)}openProgress(t){const e=new We(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(He.openDialogs)}closeAllDialogs(){for(const t of Array.from(He.openDialogs))t.close()}}He.openDialogs=[];class _e{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=Qt.generateId("dlg"),this.data=e,this.slot=ue("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${Be}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${Be}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${Be}-header`).addChild("p",(e=>e.addClass(`${Be}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${Be}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${Be}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${Be}-body`).toDOM(),"string"==typeof t.body){const s=ee.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==$e.Center?"align-center":"align-right",this.footerElement=e.addClass(`${Be}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||Zt.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on("click",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||Zt.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),ue(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${Be}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=ue("div").addClass(`${Be}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${Be}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${Be}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class Ve{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ge,Ye;Zt.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4"}(Ge||(Ge={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9"}(Ye||(Ye={}));const ze="yyyy-MM-dd",Ue="HH:mm",je=t=>{const e=kt.getLocaleSettings();return t==Et.Date?e.editDateFormat:t==Et.Time?e.editTimeFormat:`${e.editDateFormat} ${e.editTimeFormat}`},qe=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"))};class Ke{}class Je extends Ke{constructor(){super(),this.name="DateTime"}validate(t,e){if(!At.IsDefinedAndNotNull(e)||""==e)return{successed:!0};if(At.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=je(t.dataType);At.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[kt.getText("DateTimeError")]}}return{successed:!0}}}class Xe{constructor(t){this.context=t,this.validators=[new Je]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if("checkbox"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&ue(this.errorsDiv).addChild("ul"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll("input, select, textarea"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(".")+1),s=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?n[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(",")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(t,e){if(At.getDateDataTypes().indexOf(t)>=0){if(t!==Et.Time&&e&&e.length){const s=je(t),n=(i=t)==Et.Date?ze:i==Et.Time?Ue:`${ze}T${Ue}`,a=At.strToDateTime(e,s);return kt.dateTimeToStr(a,n)}return e&&e.length?e:null}var i;return At.isIntType(t)?parseInt(e):At.isNumericType(t)?parseFloat(e):e}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid")}))}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Qe{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=At.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(Ee.STRING);this.grid.cellRendererStore.setDefaultRenderer(Ee.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const a=this.grid.cellRendererStore.getDefaultRendererByType(Ee.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(Ee.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(a,t,e,i,s))),this.render()}render(){const t=ie.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",e=ie.IsIE()||ie.IsEdge();ue(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",kt.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this))})),e||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||ue(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(kt.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return!(t&&e==this.filterInput.value||(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),0))}highlightCellRenderer(t,e,i,s,n){if((At.isNumericType(i.type)||At.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&be.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(be,((t,i)=>kt.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),a=t+o.length):a++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement("div");for(let i=0;it.id==e.lookupEntity))[0],a=this.context.getMetaData().getAttributeById(e.dataAttr);if(!a)return;i=i||!a.isEditable,s=this.params.values?this.params.values.getValue(a.id):void 0;const o=Ze?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let r;ue(t).addChild("div",(t=>{t.addClass(o).addChild("input",(t=>{r=t.toDOM(),t.attr("readonly",""),t.name(a.id),t.type(this.resolveInputType(a.dataType)),t.value(At.IsDefinedAndNotNull(s)?s.toString():"")})),i||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",kt.getText("NavigationBtnTitle")).addText("...").on("click",(i=>{const s=new Ut({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup))).length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const a=new He;let o,l=null,h=null;const d=ue("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(kt.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>o=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>l=t.toDOM())))).toDOM();let c=r.value;const u=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof zt?t.getValue(e):t[e.substring(e.lastIndexOf(".")+1)])(t,e.id)}`)).join(", ")};if(c){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:c},n.id).then((t=>{t.entity&&u(t.entity)})).catch((t=>{console.error(t)}))}const g=new Oe({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{c=t.getValue(e.lookupDataAttr),u(t)}))}});a.open({title:kt.getText("LookupDlgCaption").replace("{entity}",n.caption),body:d,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Qe(o,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=c,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(t,e,i,s,n){const a=Ze?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",o=je(e.dataType);let r;const l=o.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");ue(t).addChild("div",(t=>{t.addClass(a).addChild("input",(t=>{r=t.toDOM(),t.name(e.id),t.type(n?"hidden":this.resolveInputType(e.dataType)),s?t.attr("readonly",""):(t.mask(l),t.on("keypress",(t=>this.applySumbit(t))).on("input",(e=>{t.removeClass("is-invalid");try{At.strToDateTime(r.value,o)}catch(e){t.addClass("is-invalid")}})).on("blur",(t=>{r.value===l.replace(/[9]/g,"_")&&(r.value="")}))),t.value(At.IsDefinedAndNotNull(i)?kt.dateTimeToStr(i,o):"")})),s||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",kt.getText(e.dataType!==Et.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(t=>t.addClass(e.dataType!==Et.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(t=>{let i;try{i=r.value.length?e.dataType!==Et.Time?At.strToDateTime(r.value,o):At.strToTime(r.value):new Date((new Date).setSeconds(0))}catch(t){i=new Date((new Date).setSeconds(0))}const s={zIndex:9999999999,showCalendar:e.dataType!==Et.Time,showTimePicker:e.dataType!==Et.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),r.value=kt.dateTimeToStr(t,o)}},n=new Fe(s);n.setDateTime(i),n.show(t.target)})).toDOM()))}))}setupListField(t,e,i,s,n){ue(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",s)}))}setupTextField(t,e,i,s,n){ue(t).addChild("input",(t=>{s&&t.attr("readonly",""),t.type(n?"hidden":this.resolveInputType(e.dataType)),t.name(e.id).type(this.resolveInputType(e.dataType)),e.dataType==Et.Bool?i&&t.attr("checked",""):t.on("keypress",(t=>this.applySumbit(t))).value(At.IsDefinedAndNotNull(i)?i.toString():"")}))}setupTextArea(t,e,i,s){ue(t).addChild("textarea",(t=>{s&&t.attr("readonly",""),t.attr("name",e.id),t.setStyle("height","120px"),t.value(At.IsDefinedAndNotNull(i)?i.toString():"")}))}addFormField(t,e){const i=this.params.values&&e.kind!==xt.Lookup?this.params.values.getValue(e.id):this.params.isEditForm?void 0:e.defaultValue,s=this.resolveEditor(e),n=this.params.isEditForm&&(e.isPrimaryKey||!e.isEditable),a=!e.isNullable;Ze&&(t=ue("div",t).addClass("kfrm-field-ie").toDOM()),ue(t).addChild("label",(t=>{t.attr("for",e.id),t.addHtml(`${e.caption} ${a?'*':""}: `),e.description&&t.addChild("div",(t=>t.attr("title",e.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")))}));const o=e.isPrimaryKey;if(e.kind!==xt.Lookup)switch(s.tag){case Rt:this.setupDateTimeField(t,e,i,n,o);break;case"LIST":this.setupListField(t,e,i,s.values,n);break;case"FILE":this.setupFileField(t,e,n,s.accept);break;default:s.multiline?this.setupTextArea(t,e,i,n):this.setupTextField(t,e,i,n,o)}else this.setupLookupField(t,e,n,i)}resolveInputType(t){return t===Et.Bool?"checkbox":t===Et.Blob?"file":"text"}resolveEditor(t){let e=t.defaultEditor||new Wt;return e.tag==St&&(At.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=Rt:e.tag=Mt),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=ue("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(Ze?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right"),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class ei{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar")}show(){this.slot.style.removeProperty("display")}hide(){this.slot.style.display="none"}}class ii{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});return delete t.sourceId,this.context.startProcess(),this.context.getHttpClient().post(e,t).then((e=>{const i=new Ut({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class si{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new Bt,this.model=new Vt,this.model.id=t.metaDataId||"__default",this.dataLoader=new ii(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new Ut(e),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new qt(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if("modelId"==s)n=this.model.getId();else{if("sourceId"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",jt(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",jt(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",jt(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",jt(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",jt(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",jt(t,"models/{modelId}/sources/{sourceId}/delete"))}}class ni extends Ke{constructor(){super(),this.name="Type"}validate(t,e){if(!At.IsDefinedAndNotNull(e)||""==e)return{successed:!0};if(At.isNumericType(t.dataType)){if(!At.isNumeric(e))return{successed:!1,messages:[kt.getText("NumberError")]};if(At.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[kt.getText("IntNumberError")]}}return{successed:!0}}}class ai extends Ke{constructor(){super(),this.name="Required"}validate(t,e){return t.isNullable||At.IsDefinedAndNotNull(e)&&""!==e?{successed:!0}:{successed:!1,messages:[kt.getText("RequiredError")]}}}class oi{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new ai,new ni],this.options=At.assignDeep(this.options,s||{}),this.dlg=new He;const n=this.context.getActiveEntity();if(!n)throw"Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&ue(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${kt.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),qe(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement("div");if(this.slot.appendChild(e),e.id="Grid",this.grid=new Oe(At.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:kt.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=ue("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Qe(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=ue("div",i).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&n.addChild("a",(t=>t.attr("href","javascript:void(0)").text(kt.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(s.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(kt.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute("data-row-idx")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new ti(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:kt.getText("AddDlgCaption").replace("{entity}",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new ti(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:kt.getText("EditDlgCaption").replace("{entity}",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=s[i],t)),{});this.dlg.openConfirm(kt.getText("DeleteDlgCaption").replace("{entity}",e.caption),kt.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class ri{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${kt.getText("RootViewTitle")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&ue(this.slot).addChild("div",(e=>e.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(kt.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{qe(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption)})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`)}))}))}))}))))}}kt.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."});var li=Object.freeze({__proto__:null,DataContext:si,EasyDataServerLoader:ii,EasyDataViewDispatcher:class{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation)},this.options=At.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement("div"),i=new ei(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new si({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw"Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else"#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new oi(this.container,this.context,this.basePath,this.options)):window.EDView=new ri(this.container,this.context,this.basePath)}clear(){this.container.innerHTML="",this.context.getData().clear()}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation)}},EntityDataView:oi,EntityEditForm:Xe,EntityEditFormBuilder:ti,ProgressBar:ei,RequiredValidator:ai,RootDataView:ri,TextDataFilter:qt,TextFilterWidget:Qe,TypeValidator:ni,Validator:Ke});return t.core=R,t.crud=li,t.ui=It,t}({}); //# sourceMappingURL=easydata.min.js.map diff --git a/easydata.js/packs/crud/lib/easydata.min.js.map b/easydata.js/packs/crud/lib/easydata.min.js.map index 38af8867..912bf0d3 100644 --- a/easydata.js/packs/crud/lib/easydata.min.js.map +++ b/easydata.js/packs/crud/lib/easydata.min.js.map @@ -1 +1 @@ -{"version":3,"file":"easydata.min.js","sources":["../../core/dist/easydata.core.es.js","../../ui/dist/easydata.ui.es.js","../dist/easydata.crud.es.js"],"sourcesContent":["/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const s={Unknown:\"Unknown\",Edit:\"EDIT\",DateTime:\"DATETIME\",List:\"LIST\",CustomList:\"CUSTOMLIST\",File:\"FILE\"};class i{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;u.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let s=e.getDay();return s=0==s?6:s-1,e.setDate(e.getDate()-s),e}FirstDayOfPrevWeek(t){let e=new Date,s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()-s),e}FirstDayOfNextWeek(t){let e=new Date;var s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()+s),e}}var r,o,a,h,l,u=new n;function c(t){u=t}!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));class d{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const s of t){const t=s.split(\": \"),i=t.shift(),n=t.join(\": \");e[i]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return s};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,s){e||(e={});for(let i of s)if(i)for(let s in i)if(i.hasOwnProperty(s)){let o=i[s];null!==o&&\"object\"==typeof o?t.has(o)?e[s]=t.get(o):Array.isArray(o)?(e[s]=r(o),t.set(o,e[s])):(void 0!==e[s]&&null!=e[s]||(e[s]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[s]),n(t,e[s],[o])):e[s]=o}return e}function r(t){let e=[];for(let s of t)e.push(s);return e}e.assign=function(t,...e){for(let s=0;s=t.length)throw\"Index out of bounds: \"+e;s>=t.length&&(s=t.length-1);let i=t.splice(e,1)[0];t.splice(s,0,i)},e.removeArrayItem=function(t,e){let s=t.indexOf(e);if(-1!=s)return t.splice(s,1)[0]},e.insertArrayItem=function(t,e,s){t.splice(e,0,s)},e.fillArray=function(t,e,s=0,i){let n=t.length>>>0;var r=s>>0,o=r<0?Math.max(n+r,0):Math.min(r,n),a=void 0===i?n:i>>0;let h=a<0?Math.max(n+a,0):Math.min(a,n);for(;oi&&(r=i-n-10,t+r<0&&(r=10-t)),r},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return s.indexOf(t)>=0},e.isIntType=function(t){return i.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,s){return void 0===e||void 0===s||e==t.Unknown||s==t.Unknown||e==s||e==t.Date&&s==t.DateTime||e==t.DateTime&&s==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const s=t.length;if(s>e){let i=s/e,n=\"\";n+=t[0];let r,o=i;for(let e=1;eo&&(n+=r,o+=i);return n}return t}function h(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let s=t.split(\"-\"),i=1,n=e;s.length0&&(e+=\"-\");var s=o[h(0,o.length)]+o[h(0,o.length)]+o[h(0,o.length)],i=h(0,1e4);return e+s+function(t,e=36){var s=\"\",i=t;do{s=o[i%e]+s,i=Math.floor(i/=e)}while(i>0);return s}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-i)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const s=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),i=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=s.split(\"-\"),r=i.indexOf(\"MM\"),o=i.indexOf(\"dd\"),a=i.indexOf(\"yyyy\"),h=i.indexOf(\"HH\"),u=i.indexOf(\"mm\"),c=i.indexOf(\"ss\"),d=new Date;try{const t=a>-1&&a-1&&r11)throw\"\";const s=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const i=h>-1&&h23)throw\"\";const g=u>-1&&u59)throw\"\";const f=c>-1&&c59)throw\"\";return new Date(t,e,s,i,g,f)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";return new Date(0,0,0,t,s,i)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));class g{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class f extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,s){return this.send(r.Post,t,e,s)}put(t,e,s){return this.send(r.Put,t,e,s)}delete(t,e,s){return this.send(r.Delete,t,e,s)}send(t,e,s,i){const n=(i=i||{}).dataType||\"json\",r=i.contentType||\"form-data\"!==n?\"application/json\":null;s&&\"form-data\"!=n&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),i.headers||{}),queryParams:i.queryParams||{},data:s};r&&(h.headers[\"Content-Type\"]=r);const l=new d(a,h);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const u=l.data&&\"string\"!=typeof l.data&&\"json\"==n?JSON.stringify(l.data):l.data;return l.open(),new g(l,new Promise(((t,s)=>{i.responseType&&(a.responseType=i.responseType),a.onerror=t=>{s(new f(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const i=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)s(new f(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==i.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else{(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const r=0==i.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=r;const o=r.message||(404==n?`No such endpoint: ${e}`:r);s(new f(n,o))}))}},a.send(u)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((s=>{e.onloadend=function(){e.readyState==FileReader.DONE&&s(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let s,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},r={\"en-US\":n};const a=[];function h(t){for(const e of a)e(t)}function l(){return s.localeId}function u(t){const e=r[t];e?o.assignDeep(s,e):(s.englishName=t,s.displayName=t,s.texts=o.assignDeep({},n.texts)),s.localeId=t}function c(){return s.settings}function d(t){s.settings||(s.settings=o.assignDeep({},i)),s.settings=o.assignDeep(s.settings,t)}function g(t,e){h(e);let i=s;t&&(e.localeId||(e.localeId=t),i=r[t],i||(i=o.assignDeep({},n),r[t]=i)),o.assignDeep(i,e)}function f(){!function(t){const e=new Date(2020,5,7,19,34,56,88),i=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let r=i.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");s.settings||(s.settings={}),d({shortDateFormat:r,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in r)t.push({locale:e,englishName:r[e].englishName,displayName:r[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=l,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),u(t)},e.setCurrentLocale=u,e.getText=function(...t){let e=s.texts,i=\"\";if(t&&t.length){const s=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=d,e.updateLocaleTexts=function(t){\"object\"==typeof t?(h({localeId:s.localeId,texts:t}),o.assignDeep(s.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in r){let s=r[e];s.texts=o.assignDeep({},t,s.texts)}s.texts=o.assignDeep({},t,s.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){s||(s=o.assignDeep({},n),f())};const m=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(t,s){const i=t.getFullYear().toString(),n=t.getMonth()+1,r=t.getDate(),o=t.getHours(),a=t.getMinutes(),h=t.getSeconds(),l=o%12||12,u=o>11,c={yyyy:i,yy:i.substring(i.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:r<10?\"0\"+r:r.toString(),d:r.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:l<10?\"0\"+l:l.toString(),h:l.toString(),tt:u?\"PM\":\"AM\",mm:a<10?\"0\"+a:a.toString(),ss:h<10?\"0\"+h:h.toString()};return s.replace(m,((t,e)=>e||c[t]))}function y(e){const s=c();let i;switch(e){case t.Date:i=s.shortDateFormat;break;case t.Time:i=s.shortTimeFormat;break;default:i=s.shortDateFormat+\" \"+s.shortTimeFormat}return i}function D(e){const s=c();let i;switch(e){case t.Date:i=s.longDateFormat;break;case t.Time:i=s.longTimeFormat;break;default:i=s.longDateFormat+\" \"+s.longTimeFormat}return i}e.dateTimeToStr=p,e.dateTimeToStrEx=function(e,s,i){return i?\"d\"==i?i=y(t.Date):\"D\"==i?i=D(t.Date):\"f\"==i?i=y(t.DateTime):\"F\"==i&&(i=D(t.DateTime)):i=y(s),p(e,i)},e.numberToStr=function(t,s,i){if(s&&s.length>0){const i=s.charAt(0).toUpperCase();if(\"S\"===i)return function(t,s){if(!w[s]){const t=s.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(w[s]={},t.length>0)if(t[0].length>1)for(const e of t)w[s][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{w[s][e]=t[0]}))}const i=w[s];if(void 0!==i[t]){const s=i[t];return e.getText(s)||s}return t.toString()}(t,s.slice(1));if([\"D\",\"F\",\"C\"].indexOf(i)>=0){const e=l();return t.toLocaleString(e,function(t){const e=c(),s=t[0].toUpperCase(),i=t.length>1?Number.parseInt(t.slice(1)):\"D\"==s?1:2;switch(s){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:i};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:i};default:return{style:\"decimal\",minimumFractionDigits:i,maximumFractionDigits:i}}}(s))}return function(t,e){let s=t.toString(),i=\"\",n=s.length-1;for(let t=e.length-1;t>=0;t--){const r=e.charAt(t);\"#\"===r||\"0\"===r?n>=0?(i+=s.charAt(n),n--):\"0\"===r&&(i+=0):i+=r}return i.split(\"\").reverse().join(\"\")}(Math.trunc(t),s)}const n=c();return i=i||n.decimalSeparator,t.toString().replace(\".\",i)},e.booleanToStr=function(t,s){if(s&&s.length>0){if(\"S\"===s.charAt(0).toUpperCase()){const i=s.slice(1).split(\"|\");if(i.length>1){const s=i[t?1:0];return e.getText(s)||s}}}return`${t}`};const w={}}(a||(a={}));class p{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let s=0;s{if(e&&e(n,s),n.attributes){let e=n.attributes.length;for(let i=0;it.isPrimaryKey))}}class y{constructor(s){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=s,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const s=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&s?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=s.Unknown,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let s of this.values)t.indexOf(s.id)>=0&&(e+=s.text+\",\");else for(let s of this.values)s.id===t&&(e+=s.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class w{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let s=this.getAttributeById(t);if(s){if(void 0===s[e])throw\"No such property: \"+e;return!!s[e]||!!s.lookupAttr&&(t=s.lookupAttr,s=this.getAttributeById(t),s&&s[e])}return!1}getEntityAttrById(t,e){let s,i;if(t.attributes){let i=t.attributes.length;for(s=0;s0&&i.push(t)}}let r=null;if(t.attributes){let n=t.attributes.length;for(let h=0;h0&&n.push(t)}}let l=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),r.sort(c)),u=e.attrPlacement&&0!=e.attrPlacement?r.concat(n):n.concat(r),2==e.attrPlacement&&u.sort(c),e.includeRootData?(i=a.getText(\"Entities\",t.name),i||(i=t.caption),{id:t.name,text:i,items:u}):u}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s.Edit,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",s.DateTime,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",s.DateTime,t.DateTime)}addOrUpdateValueEditor(t,e,s){let i=o.findItemById(this.editors,t);return i||(i=this.createValueEditor(),i.id=t,this.editors.push(i)),i.tag=e,i.resType=s,i}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,s,i){if(!t)return\"\";s=s||\" \";let n=\"\";if(t.caption&&!i){let e=a.getText(\"Entities\",t.caption);n=e||t.caption}if(t.attributes){let s=t.attributes.length;for(let i=0;i(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('\"drop()\" method is obsolete. Use \"clear()\" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups){if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0}for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const s=!this.caseSensitiveGroups;let i={};if(t)for(const n of t.columns){let t=e.getValue(n);s&&\"string\"==typeof t&&(t=t.toLowerCase()),i[n]=t}return i}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){if(t instanceof Date)return t.getTime()===e.getTime();return(\"string\"==typeof t?t.toLowerCase():t)===(\"string\"==typeof e?e.toLowerCase():e)}}!function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(h||(h={}));class x{constructor(e){if(!e)throw Error(\"Options are required\");if(!e.id)throw Error(\"Field Id is required\");if(!e.label)throw Error(\"Label is required\");this.id=e.id,this.type=o.getIfDefined(e.type,t.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class E{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let s;s=e instanceof x?e:new x(e);const i=this.items.length;return this.items.push(s),this.mapper[s.id]=i,[t.Date,t.DateTime,t.Time].indexOf(s.type)>=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&s!=e&&(o.moveArrayItem(this.items,s,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(s,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class b{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let s;if(\"string\"==typeof t){if(s=this.columns.getIndex(t),void 0===s)throw new RangeError(`No column with id '${t}'`)}else s=t;if(s>=this.values.length)throw new RangeError(\"Out of range: \"+s);this.values[s]=e}}class C{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new E,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,s=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),s=t.pageSize):(e=t.offset,s=t.limit));let i=e+s;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);i>this.total&&(i=this.total)}if(this.isInMemory&&i>this.cachedRows.length&&(i=this.cachedRows.length),i<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,i));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${i}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let r=this.cachedRows.length,o=i-r;o{if(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),i>this.cachedRows.length&&(i=this.cachedRows.length),this.elasticChunks){t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),s=new Array(this._columns.count),i=t instanceof b?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=i(t.id),r=this.columns.getIndex(t.id);s[r]=e.indexOf(r)>=0?this.mapDate(n,t.type):n})),new b(this._columns,s)}mapDate(e,s){if(e){let i=new Date(e);return isNaN(i.getTime())&&s==t.Time&&(i=o.strToTime(e)),i}return null}addRow(t){let e;if(Array.isArray(t)){let s=t;const i=this._columns.getDateColumnIndexes();if(i.length>0)for(const t of i)s[t]&&(s[t]=this.mapDate(s[t],this._columns.get(t).type));e=new b(this._columns,s)}else e=this.createRow(t);this.cachedRows.push(e);const s=this.getCachedCount();return s>this.total&&(this.total=s),e}getCachedRows(){return this.cachedRows}totalIsKnown(){if(this.elasticChunks){return this.getCachedCount()===this.total}return!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class I{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class A{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let s=this.getEventRecByType(t);const i={id:I.newGuid(),callback:e};return s?s.eventCallbacks.push(i):(s={type:t,eventCallbacks:new Array(i)},this.events.push(s)),i.id}unsubscribe(t,e){let s=this.getEventRecByType(t);if(s){let t=-1;for(t=0;t=0&&s.eventCallbacks.splice(t,1)}}fire(t,e,s=0,i=!1){if(this.silentMode&&!i)return;let n=this.getEventRecByType(t);if(n){const i={type:t,source:this.source,data:e};let r=()=>{for(let t of n.eventCallbacks)t.callback(i)};s>0?setTimeout(r,s):r()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function v(t,e){return t.repeat(e)}function F(t){return t.split(\"\").reverse().join(\"\")}function S(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function M(t,e){let s=t;return null!=s&&s.length>0?(\"/\"!=s.charAt(s.length-1)&&(s+=\"/\"),s+=e):s=e,s}!function(t){t.renderLiquidTemplate=function(t,e){let s=t;if(e)for(let t in e){const i=new RegExp(\"{{\"+t+\"}}\",\"g\");s=s.replace(i,e[t])}return s}}(l||(l={})),a.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});export{T as AggregationSettings,h as ColumnAlignment,x as DataColumn,E as DataColumnList,b as DataRow,t as DataType,C as EasyDataTable,I as EasyGuid,s as EditorTag,e as EntityAttrKind,A as EventEmitter,m as HttpClient,r as HttpMethod,d as HttpRequest,f as HttpResponseError,w as MetaData,p as MetaEntity,y as MetaEntityAttr,n as SpecialDatesResolver,i as TimeValue,D as ValueEditor,M as combinePath,a as i18n,l as liquid,c as registerSpecialDatesResolver,v as repeatString,F as reverseString,S as strEndsWith,o as utils};\n//# sourceMappingURL=easydata.core.es.js.map\n","/*!\n * EasyData.JS UI\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e,i,s,n,a,o,r;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(i||(i={})),function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&\"object\"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),a=s.indexOf(\"MM\"),o=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&a11)throw\"\";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const g=h>-1&&h59)throw\"\";const p=c>-1&&c59)throw\"\";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(s||(s={})),function(e){let i,n={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},a={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:n},o={\"en-US\":a};const r=[];function l(t){for(const e of r)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?s.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=s.assignDeep({},a.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=s.assignDeep({},n)),i.settings=s.assignDeep(i.settings,t)}function g(t,e){l(e);let n=i;t&&(e.localeId||(e.localeId=t),n=o[t],n||(n=s.assignDeep({},a),o[t]=n)),s.assignDeep(n,e)}e.addMapper=function(t){r.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(l({localeId:i.localeId,texts:t}),s.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=s.assignDeep({},t,i.texts)}i.texts=s.assignDeep({},t,i.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){i||(i=s.assignDeep({},a),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let a=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0))};const p=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,a=t.getDate(),o=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=o%12||12,h=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:a<10?\"0\"+a:a.toString(),d:a.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function D(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=D(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=D(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!y[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(y[i]={},t.length>0)if(t[0].length>1)for(const e of t)y[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{y[i][e]=t[0]}))}const s=y[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);\"#\"===a||\"0\"===a?n>=0?(s+=i.charAt(n),n--):\"0\"===a&&(s+=0):s+=a}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const y={}}(n||(n={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(a||(a={}));class l{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class d{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class h{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:d.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function c(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function u(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s}function g(t,e){t.className=t.className?t.className+\" \"+e:e}function p(t){t.style.display=\"none\"}function m(t,e){e||(e=\"\"),t.style.display=e}function f(t,e,i){i||(i={}),i.display||(i.display=\"\"),i.duration||(i.duration=200),p(t),m(e,i.display),i.complete&&i.complete()}function D(t){return\"none\"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function y(t){var e;return\"function\"==typeof Event?e=new Event(t):(e=document.createEvent(\"Event\")).initEvent(t,!0,!0),e}function v(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function w(){if(r.IsIE())return b();return{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function C(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function T(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=C(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+o-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function b(){return{width:window.innerWidth,height:window.innerHeight}}function E(t,e,i){t.style.removeProperty(\"display\");let s=window.getComputedStyle(t).display;\"none\"===s&&(s=\"block\"),t.style.display=s;let n=t.offsetHeight;t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",t.offsetHeight,t.style.boxSizing=\"border-box\",t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.height=n+\"px\",t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),window.setTimeout((()=>{t.style.removeProperty(\"height\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}function x(t,e,i){t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.boxSizing=\"border-box\",t.style.height=t.offsetHeight+\"px\",t.offsetHeight,t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",window.setTimeout((()=>{t.style.display=\"none\",t.style.removeProperty(\"height\"),t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}(o||(o={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},n.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(r||(r={}));const S=\"eqjs\",M=\"eqjs-mobile\";function I(t,e){const i={9:\"[0-9]\",a:\"[a-z]\"},s=e.split(\"\"),n=e=>{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(a?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=a};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):\"_\")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);a.push(d?l:\"_\"),d&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}class R{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=L(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new H(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=L(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new $(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},a=t=>{k&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new H(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",o),document.addEventListener(\"touchend\",o)};e.addEventListener(\"mousedown\",a),e.addEventListener(\"touchstart\",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new $(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===N.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new $(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",o),document.removeEventListener(\"touchend\",o)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)s.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case N.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case N.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case N.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case N.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case N.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==N.Forbid&&(this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=T(t),s=new H(e);return!(s.yi.y+t.offsetHeight)&&!(s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=T(t),s=new H(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&s.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-left`)},q=(t,e,i,s)=>{let a=(t||\"\").toString();\"number\"==typeof t&&(a=e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(V,((e,i)=>n.numberToStr(t,i))):t.toLocaleString()),i.innerText=a,i.title=a,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-right`)},K=(e,i,s,a)=>{const o=\"[object Date]\"===Object.prototype.toString.call(e);let r=(e||\"\").toString();if(o)if(i.dataColumn&&i.dataColumn.displayFormat&&V.test(i.dataColumn.displayFormat))r=i.dataColumn.displayFormat.replace(V,((t,s)=>n.dateTimeToStrEx(e,i.type,s)));else{const s=n.getCurrentLocale(),a={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(i.type){case t.Date:r=e.toLocaleDateString(s);break;case t.Time:r=e.toLocaleTimeString(s,a);break;case t.DateTime:r=`${e.toLocaleDateString(s)} ${e.toLocaleTimeString(s,a)}`}}s.innerText=r,s.title=r,i.align==B.NONE&&s.classList.add(`${z}-cell-value-align-right`)},Q=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(V,((e,i)=>n.booleanToStr(t,i)));return j(s,e,i)}i.classList.add(`${z}-cell-value-bool`),i.classList.add(`${z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class J{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",j),this.setDefaultRenderer(U.STRING,j),this.registerRenderer(\"NumberDefault\",q),this.setDefaultRenderer(U.NUMBER,q),this.registerRenderer(\"DateTimeDefault\",K),this.setDefaultRenderer(U.DATETIME,K),this.registerRenderer(\"BoolDefault\",Q),this.setDefaultRenderer(U.BOOL,Q)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[U[e]]}getDefaultRendererByType(t){return this.defaultRenderers[U[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[U[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(e){switch(e){case t.Autoinc:case t.Byte:case t.Word:case t.Currency:case t.Float:case t.Int32:case t.Int64:return U.NUMBER;case t.Date:case t.DateTime:case t.Time:return U.DATETIME;case t.Bool:return U.BOOL;default:return U.STRING}}}class X{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:Y.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=L(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(L(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=s.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new h(this),this.cellRendererStore=new J(t),this.columns=new G(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=s.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=s.assignDeep({},this.defaultDataGridOptions.paging,t.paging),n=s.assign({},this.defaultDataGridOptions,t);return n.columnWidths=e,n.paging=i,n}processColumnWidthsOptions(){const e=this.options.columnWidths;if(!e)return;s.getStringDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.stringColumns),e[t])})),s.getNumericDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.numberColumns),e[t])})),e[t.Bool]=Object.assign(Object.assign({},e.boolColumns),e[t.Bool]),s.getDateDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.dateColumns),e[t])}));const i=[...s.getStringDataTypes(),...s.getNumericDataTypes(),...s.getDateDataTypes(),t.Bool];s.getAllDataTypes().forEach((t=>{t in i||(e[t]=Object.assign(Object.assign({},e.otherColumns),e[t]))})),e[t.Unknown]=e.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),s.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&_.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${S}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=N.Forbid,this.slot.classList.remove(`${S}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==Y.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=L(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=L(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=L(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=L(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&L(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();L(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=L(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&L(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&_.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=N.Allow}}),s}renderBody(){this.bodyDiv=L(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=L(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=L(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{L(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new l(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a=\"\";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=\". . . . . .\"),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";if(t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u){d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,a[i.COUNT_FIELD_NAME])}}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=L(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=L(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let a=this.dataTable.getTotal().toString();if(this.dataTable.elasticChunks){this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(a=\"?\")}e.innerHTML=n.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${a}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=L(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==B.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==B.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==B.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(L(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(U.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!a){o&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let a=s(i-1,\"«\",1==i,!0,!1);n.appendChild(a),a=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const a=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],r=new Set(o);r.add(this.options.paging.pageSize||20),Array.from(r).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),a.appendChild(e)})),a.value=(this.pagination.pageSize||20).toString(),s.appendChild(a),a.addEventListener(\"change\",e);const l=document.createElement(\"div\");l.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(l);const d=document.createElement(\"span\");d.innerText=n.getText(\"GridItemsPerPage\"),l.appendChild(d),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?L(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():L(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=T(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let d=0;if(r>0)e+=r,o.width=r,l.forEach((t=>{t.parentElement.style.width=`${r}px`})),n[a].style.width=`${r}px`;else if(0==l.length&&(n[a].style.width=null,n[a].style.whiteSpace=\"nowrap\"),d=n[a].offsetWidth,l.length>0){l.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>d&&(d=e)})),d+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;d>t&&(d=t),d{t.parentElement.style.width=`${d}px`})),n[a].style.width=`${d}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=d)}else e+=d;a++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class Z{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class tt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class et extends Z{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),L(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=L(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=L(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=s.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return L(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{L(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=n.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class nt extends tt{render(){const t=L(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(n.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(n.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(n.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new et(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new st(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body),i=T(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var at;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(at||(at={}));const ot=\"kdlg\";class rt{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${ot}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${ot}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new lt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new ht(t,this)}untrack(t){const e=rt.openDialogs.indexOf(t);e>=0&&rt.openDialogs.splice(e,1)}track(t){rt.openDialogs.push(t)}openProgress(t){const e=new dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(rt.openDialogs)}closeAllDialogs(){for(const t of Array.from(rt.openDialogs))t.close()}}rt.openDialogs=[];class lt{constructor(t,e){this.options=t,this.submitHandler=t=>(!this.options.onSubmit||!1!==this.options.onSubmit(this,t))&&(this.destroy(),!0),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=s.generateId(\"dlg\"),this.data=e,this.slot=L(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${ot}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${ot}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${ot}-header`).addChild(\"p\",(e=>e.addClass(`${ot}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${ot}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${ot}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${ot}-body`).toDOM(),\"string\"==typeof t.body){const s=o.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==at.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${ot}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||n.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||n.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),L(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${ot}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=L(\"div\").addClass(`${ot}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${ot}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${ot}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class ht{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var ct,ut;n.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(ct||(ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(ut||(ut={}));class gt extends lt{constructor(t){super({title:t.title||\"Select a period\",body:\"\",submitButtonText:t.submitButtonText||\"OK\",cancelButtonText:t.cancelButtonText||\"Cancel\",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{\"function\"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=L(\"div\").addClass(\"tsp__container\").addChild(\"div\",(t=>{t.addClass(\"tsp__intervals\").addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Week\").on(\"click\",(()=>{this.select(ct.THIS_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Week\").on(\"click\",(()=>{this.select(ct.LAST_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Month\").on(\"click\",(()=>{this.select(ct.THIS_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"First Month\").on(\"click\",(()=>{this.select(ct.FIRST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Month\").on(\"click\",(()=>{this.select(ct.LAST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Year\").on(\"click\",(()=>{this.select(ct.THIS_YEAR)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 1\").on(\"click\",(()=>{this.select(ct.QUARTER_1)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 2\").on(\"click\",(()=>{this.select(ct.QUARTER_2)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 3\").on(\"click\",(()=>{this.select(ct.QUARTER_3)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 4\").on(\"click\",(()=>{this.select(ct.QUARTER_4)}))))})).addChild(\"div\",(t=>{t.addClass(\"tsp__form\").addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Start\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar1=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Finish\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar2=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?\"from\":\"to\";const a=new Date;switch(e){case ut.TODAY:s=a;break;case ut.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case ut.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case ut.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case ut.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case ut.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case ut.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case ut.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case ut.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=ut.UNDEF,\"from\"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case ct.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case ct.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case ct.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case ct.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case ct.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case ct.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case ct.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case ct.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\\${{${e}}}`;return n.dateTimeToStr(t,n.getLocaleSettings().editDateFormat)}}const pt=t=>new gt(t).open(),mt=new rt;export{Y as AutoResizeColumns,Z as Calendar,U as CellRendererType,V as DFMT_REGEX,tt as DateTimePicker,et as DefaultCalendar,nt as DefaultDateTimePicker,lt as DefaultDialog,rt as DefaultDialogService,ht as DefaultDialogSet,dt as DefaultProgressDialog,st as DefaultTimePicker,at as DialogFooterAlignment,R as DomElementBuilder,P as DomInputElementBuilder,A as DomSelectElementBuilder,O as DomTextAreaElementBuilder,F as DragManager,N as DropEffect,X as EasyGrid,$ as EqDragEvent,J as GridCellRendererStore,W as GridColumn,B as GridColumnAlign,G as GridColumnList,ut as JUMP_TO,ct as PRE_SELECT,it as TimePicker,gt as TimeSpanPicker,g as addCssClass,u as addElement,r as browserUtils,y as createBrowserEvent,mt as dialogs,L as domel,M as eqCssMobile,S as eqCssPrefix,_ as eqDragManager,w as getDocSize,T as getElementAbsolutePos,C as getScrollPos,v as getViewportSize,b as getWinSize,p as hideElement,D as isVisible,I as mask,m as showElement,pt as showTimeSpanPicker,E as slideDown,x as slideUp,f as toggleVisibility,c as wrapInner};\n//# sourceMappingURL=easydata.ui.es.js.map\n","/*!\n * EasyData.JS CRUD\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const i=\"Unknown\",s=\"EDIT\",n=\"DATETIME\",o=\"LIST\",a=\"FILE\";var r,l,d,h,c;!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const i of t){const t=i.split(\": \"),s=t.shift(),n=t.join(\": \");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||\"json\",o=s.contentType||\"form-data\"!==n?\"application/json\":null;i&&\"form-data\"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers[\"Content-Type\"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&\"string\"!=typeof d.data&&\"json\"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)i(new g(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==s.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a))}))},a.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let i,s={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:s},o={\"en-US\":n};const a=[];function r(t){for(const e of a)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t)}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts)}i.texts=l.assignDeep({},t,i.texts)},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e)},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const g=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=y(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!D[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const D={}}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=i,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=i,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+\",\");else for(let i of this.values)i.id===t&&(e+=i.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw\"No such property: \"+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText(\"Entities\",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",n,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",n,t.DateTime)}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return\"\";i=i||\" \";let n=\"\";if(t.caption&&!s){n=d.getText(\"Entities\",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class T{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function x(t,e){let i=t;return null!=i&&i.length>0?(\"/\"!=i.charAt(i.length-1)&&(i+=\"/\"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},d.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue=\"\",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue=\"\",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:\"__substring\",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split(\"||\").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}}\n/*!\n * EasyData.JS UI\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(I||(I={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(S||(S={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>\"number\"==typeof t))},t.getDateDataTypes=function(){return[I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return[I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}t.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),d=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=d>-1&&d23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(R||(R={})),function(t){let e,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},s={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},n={\"en-US\":s};const o=[];function a(t){for(const e of o)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t)}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i)}t.addMapper=function(t){o.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s=\"\";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){\"object\"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts)}e.texts=R.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=i.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const u=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+\" \"+e.shortTimeFormat}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+\" \"+e.longTimeFormat}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?\"d\"==i?i=g(I.Date):\"D\"==i?i=m(I.Date):\"f\"==i?i=g(I.DateTime):\"F\"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(e,i){if(!f[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(\".\",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(k||(k={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class L{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(o,i):o()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},k.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&o&&o(e)};function l(){return void 0!==n?n:a}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i)},t.onMobileModeChanged=function(t){o=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(O||(O={}));const B=\"eqjs\";class H{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(o?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=o};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):\"_\")}else e===a-1&&a--,o-1===e&&o--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);o.push(d?l:\"_\"),d&&a===s&&r++}else o.push(e),r===s&&r++,a===s&&a++})),t.value=o.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}(this.element,t),this}}class W extends H{constructor(t,e){super(t||\"select\",e)}addOption(t){const e=document.createElement(\"option\");return\"string\"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return\"div\"===t||t instanceof HTMLDivElement||\"span\"===t||t instanceof HTMLSpanElement||\"a\"===t||t instanceof HTMLAnchorElement||\"button\"===t||t instanceof HTMLButtonElement||\"img\"===t||t instanceof HTMLImageElement?new H(t,e):\"input\"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):\"textarea\"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):\"select\"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j=\"undefined\"!=typeof TouchEvent;var G;!function(t){t.None=\"none\",t.Allow=\"allow\",t.Forbid=\"forbid\"}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix=\"eqjs-drop\",this.DRAG_DISABLED_ATTR=\"drag-disabled\"}registerDraggableItem(t){const e=t.element;if(!e)throw Error(\"Element in draggle item is null or undefined\");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",a),document.addEventListener(\"touchend\",a)};e.addEventListener(\"mousedown\",o),e.addEventListener(\"touchstart\",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",a),document.removeEventListener(\"touchend\",a)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case G.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`)},st=(t,e,i,s)=>{let n=(t||\"\").toString();\"number\"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},nt=(t,e,i,s)=>{const n=\"[object Date]\"===Object.prototype.toString.call(t);let o=(t||\"\").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else{const i=k.getCurrentLocale(),s={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer(\"NumberDefault\",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer(\"DateTimeDefault\",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer(\"BoolDefault\",ot),this.setDefaultRenderer(et.BOOL,ot)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[I.Unknown]=t.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=G.Allow}}),s}renderBody(){this.bodyDiv=z(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=z(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{z(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o=\"\";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=\". . . . . .\"),n.appendChild(this.renderCell(t,i,o,n))}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=z(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n=\"?\"),e.innerHTML=k.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n))})),n}renderCell(t,e,i,s){const n=z(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,o,a)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!o){a&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let o=s(i-1,\"«\",1==i,!0,!1);n.appendChild(o),o=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener(\"change\",e);const r=document.createElement(\"div\");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement(\"span\");l.innerText=k.getText(\"GridItemsPerPage\"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?z(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():z(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace=\"nowrap\"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class lt{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class dt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return z(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class pt extends dt{render(){const t=z(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var gt;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(gt||(gt={}));const mt=\"kdlg\";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1)}track(t){ft.openDialogs.push(t)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close()}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=R.generateId(\"dlg\"),this.data=e,this.slot=z(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${mt}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild(\"p\",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${mt}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),\"string\"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||k.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||k.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=z(\"div\").addClass(`${mt}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${mt}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${mt}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(Ct||(Ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(wt||(wt={}));const Tt=\"yyyy-MM-dd\",bt=\"HH:mm\",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event(\"ed_set_location\"))};class It{}class St extends It{constructor(){super(),this.name=\"DateTime\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[d.getText(\"DateTimeError\")]}}return{successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(\".errors-block\")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll(\"input, select\"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if(\"checkbox\"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild(\"ul\"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll(\"input, select, textarea\"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(\".\")+1),s=this.context.getMetaData().getAttributeById(t.name);\"checkbox\"===t.type?n[e]=t.checked:\"file\"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(\",\")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML=\"\",this.html.querySelectorAll(\"input, select\").forEach((t=>{t.classList.remove(\"is-valid\"),t.classList.remove(\"is-invalid\")}))}markInputValid(t,e){t.classList.add(e?\"is-valid\":\"is-invalid\")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render()}render(){const t=O.IsIE()?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild(\"div\",(t=>{t.addClass(\"control\").addChild(\"input\",(t=>{this.filterInput=t.toDOM(),t.attr(\"placeholder\",d.getText(\"SearchInputPlaceholder\")).type(\"text\"),t.on(\"keydown\",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on(\"keyup\",this.inputKeyupHandler.bind(this))})),e||t.addClass(\"has-icons-right\").addChild(\"span\",(t=>{t.addClass(\"icon\").addClass(\"is-right\").addClass(\"is-clickable\").html(\"🗙\").on(\"click\",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||z(this.slot).addChild(\"button\",(t=>t.addClass(\"kfrm-button\").addText(d.getText(\"SearchBtn\")).on(\"click\",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value=\"\",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return(!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split(\"||\").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement(\"div\");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\";let r;z(t).addChild(\"div\",(t=>{t.addClass(a).addChild(\"input\",(t=>{r=t.toDOM(),t.attr(\"readonly\",\"\"),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():\"\")})),i||t.addChild(\"button\",(t=>t.addClass(\"kfrm-button\").attr(\"title\",d.getText(\"NavigationBtnTitle\")).addText(\"...\").on(\"click\",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"kfrm-field\").addChild(\"label\",(t=>t.addText(d.getText(\"LookupSelectedItem\")).toDOM())).addChild(\"div\",(t=>h=t.addText(\"None\").toDOM())))).addChild(\"div\",(t=>a=t.toDOM())).addChild(\"div\",(t=>t.addClass(\"kfrm-control\").addChild(\"div\",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(\".\")+1)])(t,e.id)}`)).join(\", \")};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(\".\")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity)})).catch((t=>{console.error(t)}))}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t)}))}});o.open({title:d.getText(\"LookupDlgCaption\").replace(\"{entity}\",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(e,i,s,n,o){const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",r=xt(i.dataType);let h;const c=r.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\");z(e).addChild(\"div\",(e=>{e.addClass(a).addChild(\"input\",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?\"hidden\":this.resolveInputType(i.dataType)),n?t.attr(\"readonly\",\"\"):(t.mask(c),t.on(\"keypress\",(t=>this.applySumbit(t))).on(\"input\",(e=>{t.removeClass(\"is-invalid\");try{l.strToDateTime(h.value,r)}catch(e){t.addClass(\"is-invalid\")}})).on(\"blur\",(t=>{h.value===c.replace(/[9]/g,\"_\")&&(h.value=\"\")}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):\"\")})),n||e.addChild(\"button\",(e=>e.addClass(\"kfrm-button\").attr(\"title\",d.getText(i.dataType!==t.Time?\"CalendarBtnTitle\":\"TimerBtnTitle\")).addChild(\"i\",(e=>e.addClass(i.dataType!==t.Time?\"ed-calendar-icon\":\"ed-timer-icon\"))).on(\"click\",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0))}catch(t){s=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r)}},o=new pt(n);o.setDateTime(s),o.show(e.target)})).toDOM()))}))}setupListField(t,e,i,s,n){z(t).addChild(\"div\",(t=>t.addClass(\"kfrm-select full-width\").addChild(\"select\",(t=>{if(n&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.on(\"keypress\",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr(\"readonly\",\"\"),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr(\"accept\",s)}))}setupTextField(e,i,s,n,o){z(e).addChild(\"input\",(e=>{n&&e.attr(\"readonly\",\"\"),e.type(o?\"hidden\":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr(\"checked\",\"\"):e.on(\"keypress\",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():\"\")}))}setupTextArea(t,e,i,s){z(t).addChild(\"textarea\",(t=>{s&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.setStyle(\"height\",\"120px\"),t.value(l.IsDefinedAndNotNull(i)?i.toString():\"\")}))}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z(\"div\",t).addClass(\"kfrm-field-ie\").toDOM()),z(t).addChild(\"label\",(t=>{t.attr(\"for\",i.id),t.addHtml(`${i.caption} ${d?'*':\"\"}: `),i.description&&t.addChild(\"div\",(t=>t.attr(\"title\",i.description).addClass(\"question-mark\").setStyle(\"vertical-align\",\"middle\").setStyle(\"display\",\"inline-block\")))}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h)}else this.setupLookupField(t,i,l,s)}resolveInputType(e){return e===t.Bool?\"checkbox\":e===t.Blob?\"file\":\"text\"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"errors-block\").toDOM())).addChild(\"div\",(e=>{e.addClass(\"\"+(kt?\"kfrm-fields-ie col-ie-1-4 label-align-right\":\"kfrm-fields col-a-1 label-align-right\")),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add(\"ed-progress-bar\")}show(){this.slot.style.removeProperty(\"display\")}hide(){this.slot.style.display=\"none\"}}class Ot{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint(\"FetchDataset\",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\\{.*?\\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||\"__default\",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||\"/api/easydata\")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint(\"GetMetaData\");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint(\"FetchRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint(\"CreateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint(\"UpdateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint(\"DeleteRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+\" endpoint is not defined\";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if(\"modelId\"==s)n=this.model.getId();else{if(\"sourceId\"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist(\"GetMetaData\",x(t,\"models/{modelId}\")),this.setEnpointIfNotExist(\"FetchDataset\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"FetchRecord\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"CreateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/create\")),this.setEnpointIfNotExist(\"UpdateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/update\")),this.setEnpointIfNotExist(\"DeleteRecord\",x(t,\"models/{modelId}/sources/{sourceId}/delete\"))}}class Lt extends It{constructor(){super(),this.name=\"Type\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return{successed:!1,messages:[d.getText(\"NumberError\")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[d.getText(\"IntNumberError\")]}}return{successed:!0}}}class Ft extends It{constructor(){super(),this.name=\"Required\"}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&\"\"!==e?{successed:!0}:{successed:!1,messages:[d.getText(\"RequiredError\")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw\"Can't find active entity for \"+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(`← ${d.getText(\"BackToEntities\")}`).on(\"click\",(t=>{t.preventDefault(),Et(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement(\"div\");if(this.slot.appendChild(e),e.id=\"Grid\",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText(\"AddRecordBtnTitle\"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z(\"div\").addClass(\"kfrm-form\").setStyle(\"margin\",\"10px 0px\").addChild(\"div\",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z(\"div\",i).addClass(\"keg-cell-value\");this.context.getActiveEntity().isEditable&&n.addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"EditBtn\")).on(\"click\",(t=>this.editClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\"))))))).addChild(\"span\",(t=>t.text(\" | \"))).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"DeleteBtn\")).on(\"click\",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText(\"AddDlgCaption\").replace(\"{entity}\",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText(\"EditDlgCaption\").replace(\"{entity}\",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(\".\")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText(\"DeleteDlgCaption\").replace(\"{entity}\",e.caption),d.getText(\"DeleteDlgMessage\").replace(\"{recordId}\",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(\";\"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:\"Ooops, something went wrong\",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText(\"RootViewTitle\")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild(\"div\",(e=>e.addClass(\"ed-root\").addChild(\"div\",(t=>t.addClass(\"ed-menu-description\").addText(d.getText(this.metaData.isEmpty()?\"ModelIsEmpty\":\"EntityMenuDesc\")))).addChild(\"ul\",(e=>{e.addClass(\"ed-entity-menu\"),t.forEach((t=>{e.addChild(\"li\",(e=>{e.addClass(\"ed-entity-item\").on(\"click\",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-caption\").addText(t.captionPlural||t.caption)})),t.description&&e.addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-descr\").addText(`${t.description}`)}))}))}))}))))}}class Ht{constructor(t){this.options={container:\"#EasyDataContainer\",basePath:\"easydata\"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener(\"ed_set_location\",this.onSetLocation),window.addEventListener(\"popstate\",this.onSetLocation)},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath=\"/\"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement(\"div\"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):\"/\"}trimSlashes(t){return t.replace(/^\\/|\\/$/g,\"\")}setContainer(t){if(!t)throw\"Container is undefined\";if(\"string\"==typeof t){if(t.length){if(\".\"===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else\"#\"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error(\"Unrecognized `container` parameter: \"+t+\"\\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.\")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath)}clear(){this.container.innerHTML=\"\",this.context.getData().clear()}detach(){window.removeEventListener(\"ed_set_location\",this.onSetLocation),window.removeEventListener(\"popstate\",this.onSetLocation)}}d.updateDefaultTexts({RequiredError:\"Value is required.\",NumberError:\"Value should be a number\",IntNumberError:\"Value should be an integer number\",DateTimeError:\"Invalid date or time value\",LookupSelectedItem:\"Selected item: \",LookupDlgCaption:\"Select {entity}\",None:\"None\",NavigationBtnTitle:\"Navigation values\",CalendarBtnTitle:\"Open calendar\",TimerBtnTitle:\"Open timer\",AddBtnTitle:\"Add\",AddRecordBtnTitle:\"Add record\",EditBtn:\"Edit\",DeleteBtn:\"Delete\",SelectLink:\"[ select ]\",AddDlgCaption:\"Create {entity}\",EditDlgCaption:\"Edit {entity}\",DeleteDlgCaption:\"Delete {entity}\",DeleteDlgMessage:\"Are you sure you want to remove this record: {{recordId}}?\",EntityMenuDesc:\"Click on an entity to view/edit its content\",BackToEntities:\"Back to entities\",SearchBtn:\"Search\",SearchInputPlaceholder:\"Search...\",RootViewTitle:\"Entities\",ModelIsEmpty:\"No entity was found.\"});export{Nt as DataContext,Ot as EasyDataServerLoader,Ht as EasyDataViewDispatcher,$t as EntityDataView,Mt as EntityEditForm,At as EntityEditFormBuilder,Pt as ProgressBar,Ft as RequiredValidator,Bt as RootDataView,E as TextDataFilter,Rt as TextFilterWidget,Lt as TypeValidator,It as Validator};\n//# sourceMappingURL=easydata.crud.es.js.map\n"],"names":["t","e","Unknown","String","Byte","Word","Int32","Int64","Bool","Float","Currency","BCD","Date","Time","DateTime","Autoinc","Memo","Blob","FixedChar","Guid","Geometry","Geography","Data","Virtual","Lookup","s","Edit","List","CustomList","File","getDateByName","this","Today","Yesterday","setDate","getDate","Tomorrow","FirstDayOfMonth","LastDayOfMonth","setMonth","getMonth","FirstDayOfNextMonth","FirstDayOfPrevMonth","FirstDayOfYear","FirstDayOfPrevYear","setFullYear","getFullYear","FirstDayOfNextYear","FirstDayOfWeek","getDay","FirstDayOfPrevWeek","FirstDayOfNextWeek","r","o","a","h","l","u","n","Trace","Options","Get","Put","Post","Delete","d$2","constructor","xhr","method","url","headers","queryParams","data","setHeader","setQueryParam","getXMLHttpRequest","getResponseHeaders","readyState","HEADERS_RECEIVED","getAllResponseHeaders","trim","split","i","shift","join","open","UNSENT","Object","keys","length","encodeURI","map","setRequestHeader","abort","getAllDataTypes","values","filter","getDateDataTypes","getStringDataTypes","getNumericDataTypes","hasOwnProperty","has","get","Array","isArray","set","create","getPrototypeOf","push","assign","assignDeep","WeakMap","getIfDefined","IsDefinedAndNotNull","copyArrayTo","createArrayFrom","findItemById","id","findItemIndexById","indexOfArrayItem","indexOf","moveArrayItem","splice","removeArrayItem","insertArrayItem","fillArray","Math","max","min","shiftToFitWindow","document","getElementsByTagName","window","innerWidth","documentElement","clientWidth","isObject","isNumericType","isIntType","isNumeric","isNaN","parseFloat","isFinite","areCompatibleDataTypes","isPropSet","toLowerCase","toUpperCase","floor","random","parseInt","generateId","getTime","strToDateTime","replace","c","d","g","f","strToTime","g$2","request","promise","getPromise","getRequest","then","catch","finally","f$2","Error","super","status","shortDateFormat","longDateFormat","editDateFormat","shortTimeFormat","editTimeFormat","longTimeFormat","shortMonthNames","longMonthNames","shortWeekDayNames","longWeekDayNames","decimalSeparator","currency","localeId","englishName","displayName","texts","ButtonOK","ButtonCancel","Yes","No","True","False","settings","addMapper","getLocales","locale","sort","getCurrentLocale","setLocale","console","warn","setCurrentLocale","getText","getLocaleSettings","getOneLocaleSetting","getShortMonthName","getLongMonthName","getShortWeekDayName","toString","getLongWeekDayName","updateLocaleSettings","updateLocaleTexts","error","updateDefaultTexts","updateLocaleInfo","addLocale","resetLocales","toLocaleDateString","year","month","day","toLocaleTimeString","hour","minute","second","navigator","language","m","p","getHours","getMinutes","getSeconds","yyyy","yy","substring","MMMM","MMM","MM","M","dd","HH","H","hh","tt","mm","ss","y","D","dateTimeToStr","dateTimeToStrEx","numberToStr","charAt","w","Number","forEach","slice","toLocaleString","style","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","reverse","trunc","booleanToStr","isEditable","name","caption","description","parent","attributes","subEntities","loadFromData","captionPlural","namePlur","desc","ied","ents","createEntity","attrs","createEntityAttr","scan","stop","getFirstPrimaryAttr","getPrimaryAttrs","isPrimaryKey","y$2","dataType","size","isForeignKey","isNullable","showOnView","showOnCreate","showOnEdit","showInLookup","lookupAttr","expr","entity","kind","cptn","dtype","ipk","ifk","lattr","lookupEntity","lent","dataAttr","dattr","lookupDataAttr","ldattr","defaultValue","defVal","nul","ivis","sov","soc","soe","sil","displayFormat","dfmt","udata","userData","edtr","defaultEditor","getEditorById","createValueEditor","D$2","tag","resType","defValue","defval","rtype","accept","multiline","subType","getValueText","text","None","Left","Center","Right","x$2","label","type","originAttrId","isAggr","groupFooterColumnTemplate","gfct","calculatedWidth","items","mapper","_dateColumnIdx","count","add","x","updateDateColumnIdx","getItems","put","move","getIndex","getDateColumnIndexes","removeAt","clear","columns","toArray","from","getValue","RangeError","setValue","I$2","newGuid","renderLiquidTemplate","RegExp","NaN","ceil","colStore","aggregates","groups","useGrandTotals","useRecordCount","_caseSensitiveGroups","COUNT_FIELD_NAME","caseSensitiveGroups","updateCompareProc","compareValues","strictCompare","caseInsensitiveCompare","addGroup","getColumnIds","to","validateColumns","hasColumnsInUse","addAggregateColumn","validateAggregate","colId","funcId","addGrandTotals","addCounts","getGroups","concat","getInternalGroups","lastGroup","getAggregates","hasAggregates","hasGroups","hasGrandTotals","hasRecordCount","isEmpty","drop","needAggrCalculation","saveToData","ugt","urc","csg","buildGroupKey","_chunkSize","_elasticChunks","cachedRows","total","loader","needTotal","isInMemory","chunkSize","elasticChunks","inMemory","_columns","E","onUpdate","rows","createRow","addRow","getRows","pageSize","page","offset","limit","Promise","resolve","loadChunk","prototype","apply","table","getCachedRows","getCachedCount","fireUpdated","getRow","getTotal","setTotal","b","mapDate","totalIsKnown","silentMode","events","source","subscribe","getEventRecByType","I","callback","eventCallbacks","unsubscribe","fire","setTimeout","enterSilentMode","exitSilentMode","isSilent","responseBody","_responseBody","defaultHeaders","customPayload","send","post","contentType","XMLHttpRequest","XDomainRequest","beforeEachRequest","onRequest","JSON","stringify","responseType","onerror","responseText","onreadystatechange","getResponseHeader","response","parse","onResponse","decodeArrayBuffer","message","FileReader","onloadend","DONE","result","readAsText","mainEntity","rootEntity","displayFormats","Map","getMainEntity","loadFromJSON","version","vers","editors","entroot","getDisplayFormats","getDisplayFormatsForType","getDefaultFormat","isdef","setData","getId","getName","getRootEntity","getAttributeById","getEntityAttrById","checkAttrProperty","listByEntityWithFilter","isEntity","listByEntity","includeRootData","sortEntities","attrPlacement","addDefaultValueEditors","addOrUpdateValueEditor","getEntitiesTree","getEntitiesTreeWithFilter","getFullEntityPathByAttr","getEntityPathByAttr","getAttributeText","runThroughEntities","getFirstAttributeByFilter","date","_name","asTime","repeat","lastIndexOf","l$1","d$1","display","C","body","top","pageYOffset","scrollTop","left","pageXOffset","scrollLeft","T","right","bottom","width","height","getBoundingClientRect","clientTop","clientLeft","round","innerHeight","userAgent","IsIE","IsEdge","includes","IsFirefox","matchMedia","matches","addEventListener","isMobileMode","setIsMobileMode","onMobileModeChanged","getMobileCssClass","S","value","selectionStart","test","selectionEnd","keyCode","preventDefault","createEvent","initEvent","dispatchEvent","fromCharCode","charCode","element","createElement","parentElement","appendChild","addChild","L","addChildElement","attr","setAttribute","focus","title","removeAttribute","show","removeStyle","hide","setStyle","visible","isVisible","offsetWidth","offsetHeight","getClientRects","addClass","classList","removeClass","remove","toggleClass","toggle","on","off","removeEventListener","setProperty","removeProperty","innerText","html","innerHTML","tagName","replaceWith","addText","createTextNode","addHtml","toDOM","appendTo","O$1","R","cols","P$1","valueAsDate","valueAsNumber","mask","addOption","selected","HTMLDivElement","HTMLSpanElement","HTMLAnchorElement","HTMLButtonElement","HTMLImageElement","HTMLInputElement","P","HTMLTextAreaElement","O","HTMLSelectElement","A","k","TouchEvent","N","Allow","Forbid","$$1","dropEffect","pageX","pageY","item","dragImage","sourceEvent","MouseEvent","touches","H$1","F$1","delta","draggableItem","finishedSuccessfully","mouseDownPosition","containerDescriptors","containerDescriptorIndex","classPrefix","DRAG_DISABLED_ATTR","registerDraggableItem","ondragstart","hasAttribute","stopPropagation","abs","mouseMoveDragListener","beforeDragStart","cloneNode","renderer","updateCusror","updateImageClass","scope","updateDragItemPosition","$","onDragStart","scopes","onDrop","onDragLeave","onDragEnd","removeChild","registerDropContainer","removeDropContainer","detectDragEnterEvent","dragEnterEvent","detectDragLeaveEvent","dragLeaveEvent","onDragOver","setCursorStyle","cursor","children","onDragEnter","_","F","Y","B","Always","Once","Never","NONE","LEFT","CENTER","RIGHT","W$1","_label","_description","align","isRowNum","dataColumn","grid","options","columnWidths","alignment","default","rowNumColumn","G$1","sync","W","onSyncGridColumn","z","V","U","STRING","NUMBER","DATETIME","BOOL","j","q","K","call","Q","J$1","renderers","defaultRenderers","registerRenderer","setDefaultRenderer","getDefaultRenderer","getCellType","getDefaultRendererByType","getRenderer","Z$1","cssPrefix","slot","yearRange","currentDate","dateChanged","onDateChanged","tt$1","calendar","timePicker","render","setDateTime","currentDateTime","setTime","getDateTime","showCalendar","createCalendar","showDateTimeInput","timePickerIsUsed","showTimePicker","oneClickDateSelection","dateTimeChanged","createTimePicker","onTimeChanged","setHours","setMinutes","beforeShow","clientHeight","onApply","destroy","cancel","onCancel","onDateTimeChanged","et$1","Z","daysOfWeek","months","calendarBody","isManualInputChanging","selectedMonth","selectedYear","rerenderMonth","renderManualDateInput","headerTextElem","renderCalendarButtons","getInputDateFormat","manualInputElem","jump","className","updateDisplayedDateValue","prev","selectMonthElem","selectYearElem","next","rerenderSelectYear","exec","target","getAttribute","onDrawDay","it$1","currentTime","timeChanged","st$1","it","updateDisplayedTime","hoursInput","minutesInput","timeText","at","ot","rt$1","rt","openConfirm","closable","submitable","cancelable","onSubmit","openPrompt","submitOnEnter","arrangeParents","beforeOpen","getElementById","lt","onDestroy","untrack","track","createSet","ht","openDialogs","openProgress","dt","getAllDialogs","closeAllDialogs","close","lt$1","submitHandler","cancelHandler","keydownHandler","isActiveDialog","dialogId","windowElement","headerElement","alertElement","bodyElement","footerAlignment","footerElement","submitButtonText","recaptchaSiteKey","grecaptcha","ready","execute","action","cancelButtonText","getData","getRootElement","getSubmitButtonElement","getCancelButtonElement","querySelector","querySelectorAll","clearAlert","onInput","onShow","submit","disableButtons","disabled","enableButtons","showAlert","dt$1","content","determinated","contentElement","progressElement","updateContent","updateProgress","in01","ht$1","dialogService","currentDialog","currentIndex","getCurrent","openNext","openPrev","ct","ut","GridPageInfo","GridItemsPerPage","ButtonApply","ButtonNow","LblTotal","THIS_WEEK","LAST_WEEK","THIS_MONTH","FIRST_MONTH","LAST_MONTH","THIS_YEAR","QUARTER_1","QUARTER_2","QUARTER_3","QUARTER_4","UNDEF","TODAY","YESTERDAY","TOMORROW","WEEK_START","WEEK_END","MONTH_START","MONTH_END","YEAR_START","YEAR_END","setupDialog","weekStart","append","drawDialog","calendar1","calendar2","alignDate","start","finish","represent","setSeconds","setMilliseconds","select","et","log","mt","zIndex","renderButtons","globalMouseDownHandler","event","srcElement","contains","nowButton","submitButton","calendarSlot","timePickerSlot","st","pagination","paginationOptions","maxButtonCount","useBootstrap","defaultDataGridOptions","dataTable","fixHeightOnFirstRender","syncGridColumns","useRowNumeration","allowDragDrop","calculator","paging","enabled","pageSizeItems","autoResize","stringColumns","numberColumns","boolColumns","dateColumns","otherColumns","showPlusButton","viewportRowsCount","showActiveRow","rowsOnPagePromise","containerInitialHeight","firstRender","prevRowTotals","landingIndex","landingSlot","_activeRowIndex","mergeOptions","processColumnWidthsOptions","eventEmitter","cellRendererStore","J","G","setSlot","init","getElementsByClassName","onInit","onRowClick","onRowDbClick","onPlusButtonClick","onColumnChanged","onColumnDeleted","onColumnMoved","onPageChanged","onActiveRowChanged","activeRowIndex","showLandingSlot","hideLandingSlot","column","refresh","fireEvent","columnId","newIndex","getColumns","clearDOM","hasData","rootDiv","renderHeader","headerDiv","renderBody","bodyDiv","renderFooter","footerDiv","updateHeight","resizeColumns","bodyCellContainerDiv","firstElementChild","bodyViewportDiv","getContainerWidth","reduce","headerViewportDiv","headerCellContainerDiv","headerRowDiv","renderColumnHeader","renderHeaderButtons","canShowAggregates","showProgress","getRowsToRender","hideProgress","updateTotalsState","renderRow","showGrandTotalsOnEachPage","isLastPage","onViewportKeydown","bind","renderTotalsRow","applyGroupColumnTemplate","renderCell","getAggrContainer","getAggregateData","firstChild","key","ensureRowVisibility","getDataRow","footerPaginateDiv","renderPageNavigator","renderPageInfoBlock","getLocalIndexByGlobal","getGlobalIndexByLocal","row","rowIndex","getCellRenderer","onGetCellRenderer","setPage","allowPageSizeChange","Set","plusButtonTitle","insertBefore","updateActiveRow","oldValue","newValue","getActiveRow","visibility","whiteSpace","cssClass","Event","gt","getComputedStyle","overflow","paddingTop","paddingBottom","marginTop","marginBottom","boxSizing","transitionProperty","transitionDuration","duration","complete","v","sourceTable","sourceId","isLookup","filterValue","justServerSide","applyCore","class","filters","lookup","applyInMemoryFilter","X","nt","pt","ft","yt","vt","Dt","Ct","wt","Tt","bt","xt","Et","history","state","pushState","It","St","validate","successed","messages","Mt","context","validators","getHtml","setHtmlInt","errorsDiv","clearErrors","getMetaData","validateValue","markInputValid","checked","fileToBase64","files","mapValue","all","readAsDataURL","onload","useValidator","useValidators","Rt","instantMode","instantTimeout","highlightCellRenderer","filterInput","inputKeydownHandler","inputKeyupHandler","clearButtonClickHander","searchButtonClickHandler","applyFilter","applyFilterTimeout","clearTimeout","highlightText","HTMLElement","backgroundColor","index","index2","kt","At","params","reset","form","setupLookupField","resolveInputType","getDataLoader","fetchRecord","createFilter","setupDateTimeField","applySumbit","setupListField","setupFileField","setupTextField","setupTextArea","addFormField","isEditForm","resolveEditor","sumbitCallback","build","getActiveEntity","Pt","Ot","resolveEndpoint","startProcess","getHttpClient","resultSet","meta","totalRecords","hasNext","endProcess","Nt","endpoints","endpointVarsRegex","http","model","metaDataId","dataLoader","setDefaultEndpoints","endpoint","activeEntity","setActiveSource","loadMetaData","sourceError","fetchDataset","createRecord","updateRecord","deleteRecord","setEndpoint","setEnpointIfNotExist","match","onProcessStart","onProcessEnd","Lt","isInteger","Ft","$t","basePath","showFilterBox","showBackToEntities","defaultValidators","dlg","location","pathname","renderGrid","syncGridColumnHandler","addClickHandler","manageCellRenderer","rowDbClickHandler","filterWidget","editClickHandler","deleteClickHandler","refreshData","processError","showEditForm","Bt","metaData","renderEntitySelector","decodeURIComponent","RequiredError","NumberError","IntNumberError","DateTimeError","LookupSelectedItem","LookupDlgCaption","NavigationBtnTitle","CalendarBtnTitle","TimerBtnTitle","AddBtnTitle","AddRecordBtnTitle","EditBtn","DeleteBtn","SelectLink","AddDlgCaption","EditDlgCaption","DeleteDlgCaption","DeleteDlgMessage","EntityMenuDesc","BackToEntities","SearchBtn","SearchInputPlaceholder","RootViewTitle","ModelIsEmpty","container","onSetLocation","setActiveView","attach","normalizeBasePath","setContainer","trimSlashes","toLocaleLowerCase","getActiveSourceId","run","EDView","detach"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"easydata.min.js","sources":["../../core/dist/easydata.core.es.js","../../ui/dist/easydata.ui.es.js","../dist/easydata.crud.es.js"],"sourcesContent":["/*!\n * EasyData.JS Core v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const s={Unknown:\"Unknown\",Edit:\"EDIT\",DateTime:\"DATETIME\",List:\"LIST\",CustomList:\"CUSTOMLIST\",File:\"FILE\"};class i{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;u.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let s=e.getDay();return s=0==s?6:s-1,e.setDate(e.getDate()-s),e}FirstDayOfPrevWeek(t){let e=new Date,s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()-s),e}FirstDayOfNextWeek(t){let e=new Date;var s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()+s),e}}var r,o,a,h,l,u=new n;function c(t){u=t}!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));class d{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const s of t){const t=s.split(\": \"),i=t.shift(),n=t.join(\": \");e[i]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return s};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,s){e||(e={});for(let i of s)if(i)for(let s in i)if(i.hasOwnProperty(s)){let o=i[s];null!==o&&\"object\"==typeof o?t.has(o)?e[s]=t.get(o):Array.isArray(o)?(e[s]=r(o),t.set(o,e[s])):(void 0!==e[s]&&null!=e[s]||(e[s]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[s]),n(t,e[s],[o])):e[s]=o}return e}function r(t){let e=[];for(let s of t)e.push(s);return e}e.assign=function(t,...e){for(let s=0;s=t.length)throw\"Index out of bounds: \"+e;s>=t.length&&(s=t.length-1);let i=t.splice(e,1)[0];t.splice(s,0,i)},e.removeArrayItem=function(t,e){let s=t.indexOf(e);if(-1!=s)return t.splice(s,1)[0]},e.insertArrayItem=function(t,e,s){t.splice(e,0,s)},e.fillArray=function(t,e,s=0,i){let n=t.length>>>0;var r=s>>0,o=r<0?Math.max(n+r,0):Math.min(r,n),a=void 0===i?n:i>>0;let h=a<0?Math.max(n+a,0):Math.min(a,n);for(;oi&&(r=i-n-10,t+r<0&&(r=10-t)),r},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return s.indexOf(t)>=0},e.isIntType=function(t){return i.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,s){return void 0===e||void 0===s||e==t.Unknown||s==t.Unknown||e==s||e==t.Date&&s==t.DateTime||e==t.DateTime&&s==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const s=t.length;if(s>e){let i=s/e,n=\"\";n+=t[0];let r,o=i;for(let e=1;eo&&(n+=r,o+=i);return n}return t}function h(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let s=t.split(\"-\"),i=1,n=e;s.length0&&(e+=\"-\");var s=o[h(0,o.length)]+o[h(0,o.length)]+o[h(0,o.length)],i=h(0,1e4);return e+s+function(t,e=36){var s=\"\",i=t;do{s=o[i%e]+s,i=Math.floor(i/=e)}while(i>0);return s}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-i)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const s=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),i=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=s.split(\"-\"),r=i.indexOf(\"MM\"),o=i.indexOf(\"dd\"),a=i.indexOf(\"yyyy\"),h=i.indexOf(\"HH\"),u=i.indexOf(\"mm\"),c=i.indexOf(\"ss\"),d=new Date;try{const t=a>-1&&a-1&&r11)throw\"\";const s=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const i=h>-1&&h23)throw\"\";const g=u>-1&&u59)throw\"\";const f=c>-1&&c59)throw\"\";return new Date(t,e,s,i,g,f)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";return new Date(0,0,0,t,s,i)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));class g{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class f extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,s){return this.send(r.Post,t,e,s)}put(t,e,s){return this.send(r.Put,t,e,s)}delete(t,e,s){return this.send(r.Delete,t,e,s)}send(t,e,s,i){const n=(i=i||{}).dataType||\"json\",r=i.contentType||\"form-data\"!==n?\"application/json\":null;s&&\"form-data\"!=n&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),i.headers||{}),queryParams:i.queryParams||{},data:s};r&&(h.headers[\"Content-Type\"]=r);const l=new d(a,h);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const u=l.data&&\"string\"!=typeof l.data&&\"json\"==n?JSON.stringify(l.data):l.data;return l.open(),new g(l,new Promise(((t,s)=>{i.responseType&&(a.responseType=i.responseType),a.onerror=t=>{s(new f(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const i=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)s(new f(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==i.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else{(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const r=0==i.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=r;const o=r.message||(404==n?`No such endpoint: ${e}`:r);s(new f(n,o))}))}},a.send(u)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((s=>{e.onloadend=function(){e.readyState==FileReader.DONE&&s(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let s,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},r={\"en-US\":n};const a=[];function h(t){for(const e of a)e(t)}function l(){return s.localeId}function u(t){const e=r[t];e?o.assignDeep(s,e):(s.englishName=t,s.displayName=t,s.texts=o.assignDeep({},n.texts)),s.localeId=t}function c(){return s.settings}function d(t){s.settings||(s.settings=o.assignDeep({},i)),s.settings=o.assignDeep(s.settings,t)}function g(t,e){h(e);let i=s;t&&(e.localeId||(e.localeId=t),i=r[t],i||(i=o.assignDeep({},n),r[t]=i)),o.assignDeep(i,e)}function f(){!function(t){const e=new Date(2020,5,7,19,34,56,88),i=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let r=i.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");s.settings||(s.settings={}),d({shortDateFormat:r,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in r)t.push({locale:e,englishName:r[e].englishName,displayName:r[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=l,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),u(t)},e.setCurrentLocale=u,e.getText=function(...t){let e=s.texts,i=\"\";if(t&&t.length){const s=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=d,e.updateLocaleTexts=function(t){\"object\"==typeof t?(h({localeId:s.localeId,texts:t}),o.assignDeep(s.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in r){let s=r[e];s.texts=o.assignDeep({},t,s.texts)}s.texts=o.assignDeep({},t,s.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){s||(s=o.assignDeep({},n),f())};const m=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(t,s){const i=t.getFullYear().toString(),n=t.getMonth()+1,r=t.getDate(),o=t.getHours(),a=t.getMinutes(),h=t.getSeconds(),l=o%12||12,u=o>11,c={yyyy:i,yy:i.substring(i.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:r<10?\"0\"+r:r.toString(),d:r.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:l<10?\"0\"+l:l.toString(),h:l.toString(),tt:u?\"PM\":\"AM\",mm:a<10?\"0\"+a:a.toString(),ss:h<10?\"0\"+h:h.toString()};return s.replace(m,((t,e)=>e||c[t]))}function y(e){const s=c();let i;switch(e){case t.Date:i=s.shortDateFormat;break;case t.Time:i=s.shortTimeFormat;break;default:i=s.shortDateFormat+\" \"+s.shortTimeFormat}return i}function D(e){const s=c();let i;switch(e){case t.Date:i=s.longDateFormat;break;case t.Time:i=s.longTimeFormat;break;default:i=s.longDateFormat+\" \"+s.longTimeFormat}return i}e.dateTimeToStr=p,e.dateTimeToStrEx=function(e,s,i){return i?\"d\"==i?i=y(t.Date):\"D\"==i?i=D(t.Date):\"f\"==i?i=y(t.DateTime):\"F\"==i&&(i=D(t.DateTime)):i=y(s),p(e,i)},e.numberToStr=function(t,s,i){if(s&&s.length>0){const i=s.charAt(0).toUpperCase();if(\"S\"===i)return function(t,s){if(!w[s]){const t=s.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(w[s]={},t.length>0)if(t[0].length>1)for(const e of t)w[s][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{w[s][e]=t[0]}))}const i=w[s];if(void 0!==i[t]){const s=i[t];return e.getText(s)||s}return t.toString()}(t,s.slice(1));if([\"D\",\"F\",\"C\"].indexOf(i)>=0){const e=l();return t.toLocaleString(e,function(t){const e=c(),s=t[0].toUpperCase(),i=t.length>1?Number.parseInt(t.slice(1)):\"D\"==s?1:2;switch(s){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:i};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:i};default:return{style:\"decimal\",minimumFractionDigits:i,maximumFractionDigits:i}}}(s))}return function(t,e){let s=t.toString(),i=\"\",n=s.length-1;for(let t=e.length-1;t>=0;t--){const r=e.charAt(t);\"#\"===r||\"0\"===r?n>=0?(i+=s.charAt(n),n--):\"0\"===r&&(i+=0):i+=r}return i.split(\"\").reverse().join(\"\")}(Math.trunc(t),s)}const n=c();return i=i||n.decimalSeparator,t.toString().replace(\".\",i)},e.booleanToStr=function(t,s){if(s&&s.length>0){if(\"S\"===s.charAt(0).toUpperCase()){const i=s.slice(1).split(\"|\");if(i.length>1){const s=i[t?1:0];return e.getText(s)||s}}}return`${t}`};const w={}}(a||(a={}));class p{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let s=0;s{if(e&&e(n,s),n.attributes){let e=n.attributes.length;for(let i=0;it.isPrimaryKey))}}class y{constructor(s){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=s,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const s=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&s?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=s.Unknown,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let s of this.values)t.indexOf(s.id)>=0&&(e+=s.text+\",\");else for(let s of this.values)s.id===t&&(e+=s.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class w{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let s=this.getAttributeById(t);if(s){if(void 0===s[e])throw\"No such property: \"+e;return!!s[e]||!!s.lookupAttr&&(t=s.lookupAttr,s=this.getAttributeById(t),s&&s[e])}return!1}getEntityAttrById(t,e){let s,i;if(t.attributes){let i=t.attributes.length;for(s=0;s0&&i.push(t)}}let r=null;if(t.attributes){let n=t.attributes.length;for(let h=0;h0&&n.push(t)}}let l=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),r.sort(c)),u=e.attrPlacement&&0!=e.attrPlacement?r.concat(n):n.concat(r),2==e.attrPlacement&&u.sort(c),e.includeRootData?(i=a.getText(\"Entities\",t.name),i||(i=t.caption),{id:t.name,text:i,items:u}):u}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s.Edit,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",s.DateTime,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",s.DateTime,t.DateTime)}addOrUpdateValueEditor(t,e,s){let i=o.findItemById(this.editors,t);return i||(i=this.createValueEditor(),i.id=t,this.editors.push(i)),i.tag=e,i.resType=s,i}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,s,i){if(!t)return\"\";s=s||\" \";let n=\"\";if(t.caption&&!i){let e=a.getText(\"Entities\",t.caption);n=e||t.caption}if(t.attributes){let s=t.attributes.length;for(let i=0;i(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('\"drop()\" method is obsolete. Use \"clear()\" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups){if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0}for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const s=!this.caseSensitiveGroups;let i={};if(t)for(const n of t.columns){let t=e.getValue(n);s&&\"string\"==typeof t&&(t=t.toLowerCase()),i[n]=t}return i}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){if(t instanceof Date)return t.getTime()===e.getTime();return(\"string\"==typeof t?t.toLowerCase():t)===(\"string\"==typeof e?e.toLowerCase():e)}}!function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(h||(h={}));class x{constructor(e){if(!e)throw Error(\"Options are required\");if(!e.id)throw Error(\"Field Id is required\");if(!e.label)throw Error(\"Label is required\");this.id=e.id,this.type=o.getIfDefined(e.type,t.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class E{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let s;s=e instanceof x?e:new x(e);const i=this.items.length;return this.items.push(s),this.mapper[s.id]=i,[t.Date,t.DateTime,t.Time].indexOf(s.type)>=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&s!=e&&(o.moveArrayItem(this.items,s,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(s,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class b{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let s;if(\"string\"==typeof t){if(s=this.columns.getIndex(t),void 0===s)throw new RangeError(`No column with id '${t}'`)}else s=t;if(s>=this.values.length)throw new RangeError(\"Out of range: \"+s);this.values[s]=e}}class C{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new E,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,s=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),s=t.pageSize):(e=t.offset,s=t.limit));let i=e+s;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);i>this.total&&(i=this.total)}if(this.isInMemory&&i>this.cachedRows.length&&(i=this.cachedRows.length),i<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,i));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${i}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let r=this.cachedRows.length,o=i-r;o{if(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),i>this.cachedRows.length&&(i=this.cachedRows.length),this.elasticChunks){t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),s=new Array(this._columns.count),i=t instanceof b?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=i(t.id),r=this.columns.getIndex(t.id);s[r]=e.indexOf(r)>=0?this.mapDate(n,t.type):n})),new b(this._columns,s)}mapDate(e,s){if(e){let i=new Date(e);return isNaN(i.getTime())&&s==t.Time&&(i=o.strToTime(e)),i}return null}addRow(t){let e;if(Array.isArray(t)){let s=t;const i=this._columns.getDateColumnIndexes();if(i.length>0)for(const t of i)s[t]&&(s[t]=this.mapDate(s[t],this._columns.get(t).type));e=new b(this._columns,s)}else e=this.createRow(t);this.cachedRows.push(e);const s=this.getCachedCount();return s>this.total&&(this.total=s),e}getCachedRows(){return this.cachedRows}totalIsKnown(){if(this.elasticChunks){return this.getCachedCount()===this.total}return!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class I{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class A{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let s=this.getEventRecByType(t);const i={id:I.newGuid(),callback:e};return s?s.eventCallbacks.push(i):(s={type:t,eventCallbacks:new Array(i)},this.events.push(s)),i.id}unsubscribe(t,e){let s=this.getEventRecByType(t);if(s){let t=-1;for(t=0;t=0&&s.eventCallbacks.splice(t,1)}}fire(t,e,s=0,i=!1){if(this.silentMode&&!i)return;let n=this.getEventRecByType(t);if(n){const i={type:t,source:this.source,data:e};let r=()=>{for(let t of n.eventCallbacks)t.callback(i)};s>0?setTimeout(r,s):r()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function v(t,e){return t.repeat(e)}function F(t){return t.split(\"\").reverse().join(\"\")}function S(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function M(t,e){let s=t;return null!=s&&s.length>0?(\"/\"!=s.charAt(s.length-1)&&(s+=\"/\"),s+=e):s=e,s}!function(t){t.renderLiquidTemplate=function(t,e){let s=t;if(e)for(let t in e){const i=new RegExp(\"{{\"+t+\"}}\",\"g\");s=s.replace(i,e[t])}return s}}(l||(l={})),a.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});export{T as AggregationSettings,h as ColumnAlignment,x as DataColumn,E as DataColumnList,b as DataRow,t as DataType,C as EasyDataTable,I as EasyGuid,s as EditorTag,e as EntityAttrKind,A as EventEmitter,m as HttpClient,r as HttpMethod,d as HttpRequest,f as HttpResponseError,w as MetaData,p as MetaEntity,y as MetaEntityAttr,n as SpecialDatesResolver,i as TimeValue,D as ValueEditor,M as combinePath,a as i18n,l as liquid,c as registerSpecialDatesResolver,v as repeatString,F as reverseString,S as strEndsWith,o as utils};\n//# sourceMappingURL=easydata.core.es.js.map\n","/*!\n * EasyData.JS UI v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\n/*!\n * EasyData.JS Core v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\nvar t,e,i,s,n,a,o,r;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(i||(i={})),function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&\"object\"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),a=s.indexOf(\"MM\"),o=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&a11)throw\"\";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const g=h>-1&&h59)throw\"\";const p=c>-1&&c59)throw\"\";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(s||(s={})),function(e){let i,n={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},a={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:n},o={\"en-US\":a};const r=[];function l(t){for(const e of r)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?s.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=s.assignDeep({},a.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=s.assignDeep({},n)),i.settings=s.assignDeep(i.settings,t)}function g(t,e){l(e);let n=i;t&&(e.localeId||(e.localeId=t),n=o[t],n||(n=s.assignDeep({},a),o[t]=n)),s.assignDeep(n,e)}e.addMapper=function(t){r.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(l({localeId:i.localeId,texts:t}),s.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=s.assignDeep({},t,i.texts)}i.texts=s.assignDeep({},t,i.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){i||(i=s.assignDeep({},a),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let a=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0))};const p=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,a=t.getDate(),o=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=o%12||12,h=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:a<10?\"0\"+a:a.toString(),d:a.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function D(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=D(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=D(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!y[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(y[i]={},t.length>0)if(t[0].length>1)for(const e of t)y[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{y[i][e]=t[0]}))}const s=y[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);\"#\"===a||\"0\"===a?n>=0?(s+=i.charAt(n),n--):\"0\"===a&&(s+=0):s+=a}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const y={}}(n||(n={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(a||(a={}));class l{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class d{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class h{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:d.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function c(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function u(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s}function g(t,e){t.className=t.className?t.className+\" \"+e:e}function p(t){t.style.display=\"none\"}function m(t,e){e||(e=\"\"),t.style.display=e}function f(t,e,i){i||(i={}),i.display||(i.display=\"\"),i.duration||(i.duration=200),p(t),m(e,i.display),i.complete&&i.complete()}function D(t){return\"none\"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function y(t){var e;return\"function\"==typeof Event?e=new Event(t):(e=document.createEvent(\"Event\")).initEvent(t,!0,!0),e}function v(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function w(){if(r.IsIE())return b();return{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function C(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function T(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=C(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+o-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function b(){return{width:window.innerWidth,height:window.innerHeight}}function E(t,e,i){t.style.removeProperty(\"display\");let s=window.getComputedStyle(t).display;\"none\"===s&&(s=\"block\"),t.style.display=s;let n=t.offsetHeight;t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",t.offsetHeight,t.style.boxSizing=\"border-box\",t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.height=n+\"px\",t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),window.setTimeout((()=>{t.style.removeProperty(\"height\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}function x(t,e,i){t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.boxSizing=\"border-box\",t.style.height=t.offsetHeight+\"px\",t.offsetHeight,t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",window.setTimeout((()=>{t.style.display=\"none\",t.style.removeProperty(\"height\"),t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}(o||(o={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},n.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(r||(r={}));const S=\"eqjs\",M=\"eqjs-mobile\";function I(t,e){const i={9:\"[0-9]\",a:\"[a-z]\"},s=e.split(\"\"),n=e=>{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(a?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=a};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):\"_\")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);a.push(d?l:\"_\"),d&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}class R{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=L(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new H(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=L(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new $(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},a=t=>{k&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new H(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",o),document.addEventListener(\"touchend\",o)};e.addEventListener(\"mousedown\",a),e.addEventListener(\"touchstart\",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new $(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===N.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new $(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",o),document.removeEventListener(\"touchend\",o)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)s.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case N.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case N.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case N.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case N.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case N.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==N.Forbid&&(this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=T(t),s=new H(e);return!(s.yi.y+t.offsetHeight)&&!(s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=T(t),s=new H(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&s.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-left`)},q=(t,e,i,s)=>{let a=(t||\"\").toString();\"number\"==typeof t&&(a=e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(V,((e,i)=>n.numberToStr(t,i))):t.toLocaleString()),i.innerText=a,i.title=a,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-right`)},K=(e,i,s,a)=>{const o=\"[object Date]\"===Object.prototype.toString.call(e);let r=(e||\"\").toString();if(o)if(i.dataColumn&&i.dataColumn.displayFormat&&V.test(i.dataColumn.displayFormat))r=i.dataColumn.displayFormat.replace(V,((t,s)=>n.dateTimeToStrEx(e,i.type,s)));else{const s=n.getCurrentLocale(),a={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(i.type){case t.Date:r=e.toLocaleDateString(s);break;case t.Time:r=e.toLocaleTimeString(s,a);break;case t.DateTime:r=`${e.toLocaleDateString(s)} ${e.toLocaleTimeString(s,a)}`}}s.innerText=r,s.title=r,i.align==B.NONE&&s.classList.add(`${z}-cell-value-align-right`)},Q=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(V,((e,i)=>n.booleanToStr(t,i)));return j(s,e,i)}i.classList.add(`${z}-cell-value-bool`),i.classList.add(`${z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class J{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",j),this.setDefaultRenderer(U.STRING,j),this.registerRenderer(\"NumberDefault\",q),this.setDefaultRenderer(U.NUMBER,q),this.registerRenderer(\"DateTimeDefault\",K),this.setDefaultRenderer(U.DATETIME,K),this.registerRenderer(\"BoolDefault\",Q),this.setDefaultRenderer(U.BOOL,Q)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[U[e]]}getDefaultRendererByType(t){return this.defaultRenderers[U[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[U[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(e){switch(e){case t.Autoinc:case t.Byte:case t.Word:case t.Currency:case t.Float:case t.Int32:case t.Int64:return U.NUMBER;case t.Date:case t.DateTime:case t.Time:return U.DATETIME;case t.Bool:return U.BOOL;default:return U.STRING}}}class X{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:Y.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=L(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(L(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=s.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new h(this),this.cellRendererStore=new J(t),this.columns=new G(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=s.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=s.assignDeep({},this.defaultDataGridOptions.paging,t.paging),n=s.assign({},this.defaultDataGridOptions,t);return n.columnWidths=e,n.paging=i,n}processColumnWidthsOptions(){const e=this.options.columnWidths;if(!e)return;s.getStringDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.stringColumns),e[t])})),s.getNumericDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.numberColumns),e[t])})),e[t.Bool]=Object.assign(Object.assign({},e.boolColumns),e[t.Bool]),s.getDateDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.dateColumns),e[t])}));const i=[...s.getStringDataTypes(),...s.getNumericDataTypes(),...s.getDateDataTypes(),t.Bool];s.getAllDataTypes().forEach((t=>{t in i||(e[t]=Object.assign(Object.assign({},e.otherColumns),e[t]))})),e[t.Unknown]=e.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),s.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&_.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${S}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=N.Forbid,this.slot.classList.remove(`${S}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==Y.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=L(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=L(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=L(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=L(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&L(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();L(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=L(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&L(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&_.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=N.Allow}}),s}renderBody(){this.bodyDiv=L(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=L(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=L(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{L(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new l(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a=\"\";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=\". . . . . .\"),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";if(t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u){d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,a[i.COUNT_FIELD_NAME])}}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=L(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=L(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let a=this.dataTable.getTotal().toString();if(this.dataTable.elasticChunks){this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(a=\"?\")}e.innerHTML=n.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${a}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=L(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==B.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==B.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==B.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(L(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(U.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!a){o&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let a=s(i-1,\"«\",1==i,!0,!1);n.appendChild(a),a=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const a=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],r=new Set(o);r.add(this.options.paging.pageSize||20),Array.from(r).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),a.appendChild(e)})),a.value=(this.pagination.pageSize||20).toString(),s.appendChild(a),a.addEventListener(\"change\",e);const l=document.createElement(\"div\");l.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(l);const d=document.createElement(\"span\");d.innerText=n.getText(\"GridItemsPerPage\"),l.appendChild(d),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?L(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():L(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=T(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let d=0;if(r>0)e+=r,o.width=r,l.forEach((t=>{t.parentElement.style.width=`${r}px`})),n[a].style.width=`${r}px`;else if(0==l.length&&(n[a].style.width=null,n[a].style.whiteSpace=\"nowrap\"),d=n[a].offsetWidth,l.length>0){l.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>d&&(d=e)})),d+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;d>t&&(d=t),d{t.parentElement.style.width=`${d}px`})),n[a].style.width=`${d}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=d)}else e+=d;a++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class Z{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class tt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class et extends Z{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),L(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=L(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=L(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=s.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return L(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{L(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=n.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class nt extends tt{render(){const t=L(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(n.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(n.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(n.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new et(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new st(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body),i=T(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var at;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(at||(at={}));const ot=\"kdlg\";class rt{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${ot}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${ot}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new lt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new ht(t,this)}untrack(t){const e=rt.openDialogs.indexOf(t);e>=0&&rt.openDialogs.splice(e,1)}track(t){rt.openDialogs.push(t)}openProgress(t){const e=new dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(rt.openDialogs)}closeAllDialogs(){for(const t of Array.from(rt.openDialogs))t.close()}}rt.openDialogs=[];class lt{constructor(t,e){this.options=t,this.submitHandler=t=>(!this.options.onSubmit||!1!==this.options.onSubmit(this,t))&&(this.destroy(),!0),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=s.generateId(\"dlg\"),this.data=e,this.slot=L(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${ot}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${ot}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${ot}-header`).addChild(\"p\",(e=>e.addClass(`${ot}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${ot}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${ot}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${ot}-body`).toDOM(),\"string\"==typeof t.body){const s=o.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==at.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${ot}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||n.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||n.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),L(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${ot}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=L(\"div\").addClass(`${ot}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${ot}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${ot}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class ht{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var ct,ut;n.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(ct||(ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(ut||(ut={}));class gt extends lt{constructor(t){super({title:t.title||\"Select a period\",body:\"\",submitButtonText:t.submitButtonText||\"OK\",cancelButtonText:t.cancelButtonText||\"Cancel\",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{\"function\"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=L(\"div\").addClass(\"tsp__container\").addChild(\"div\",(t=>{t.addClass(\"tsp__intervals\").addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Week\").on(\"click\",(()=>{this.select(ct.THIS_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Week\").on(\"click\",(()=>{this.select(ct.LAST_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Month\").on(\"click\",(()=>{this.select(ct.THIS_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"First Month\").on(\"click\",(()=>{this.select(ct.FIRST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Month\").on(\"click\",(()=>{this.select(ct.LAST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Year\").on(\"click\",(()=>{this.select(ct.THIS_YEAR)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 1\").on(\"click\",(()=>{this.select(ct.QUARTER_1)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 2\").on(\"click\",(()=>{this.select(ct.QUARTER_2)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 3\").on(\"click\",(()=>{this.select(ct.QUARTER_3)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 4\").on(\"click\",(()=>{this.select(ct.QUARTER_4)}))))})).addChild(\"div\",(t=>{t.addClass(\"tsp__form\").addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Start\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar1=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Finish\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar2=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?\"from\":\"to\";const a=new Date;switch(e){case ut.TODAY:s=a;break;case ut.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case ut.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case ut.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case ut.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case ut.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case ut.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case ut.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case ut.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=ut.UNDEF,\"from\"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case ct.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case ct.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case ct.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case ct.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case ct.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case ct.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case ct.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case ct.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\\${{${e}}}`;return n.dateTimeToStr(t,n.getLocaleSettings().editDateFormat)}}const pt=t=>new gt(t).open(),mt=new rt;export{Y as AutoResizeColumns,Z as Calendar,U as CellRendererType,V as DFMT_REGEX,tt as DateTimePicker,et as DefaultCalendar,nt as DefaultDateTimePicker,lt as DefaultDialog,rt as DefaultDialogService,ht as DefaultDialogSet,dt as DefaultProgressDialog,st as DefaultTimePicker,at as DialogFooterAlignment,R as DomElementBuilder,P as DomInputElementBuilder,A as DomSelectElementBuilder,O as DomTextAreaElementBuilder,F as DragManager,N as DropEffect,X as EasyGrid,$ as EqDragEvent,J as GridCellRendererStore,W as GridColumn,B as GridColumnAlign,G as GridColumnList,ut as JUMP_TO,ct as PRE_SELECT,it as TimePicker,gt as TimeSpanPicker,g as addCssClass,u as addElement,r as browserUtils,y as createBrowserEvent,mt as dialogs,L as domel,M as eqCssMobile,S as eqCssPrefix,_ as eqDragManager,w as getDocSize,T as getElementAbsolutePos,C as getScrollPos,v as getViewportSize,b as getWinSize,p as hideElement,D as isVisible,I as mask,m as showElement,pt as showTimeSpanPicker,E as slideDown,x as slideUp,f as toggleVisibility,c as wrapInner};\n//# sourceMappingURL=easydata.ui.es.js.map\n","/*!\n * EasyData.JS CRUD v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\n/*!\n * EasyData.JS Core v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const i=\"Unknown\",s=\"EDIT\",n=\"DATETIME\",o=\"LIST\",a=\"FILE\";var r,l,d,h,c;!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const i of t){const t=i.split(\": \"),s=t.shift(),n=t.join(\": \");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||\"json\",o=s.contentType||\"form-data\"!==n?\"application/json\":null;i&&\"form-data\"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers[\"Content-Type\"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&\"string\"!=typeof d.data&&\"json\"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)i(new g(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==s.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a))}))},a.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let i,s={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:s},o={\"en-US\":n};const a=[];function r(t){for(const e of a)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t)}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts)}i.texts=l.assignDeep({},t,i.texts)},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e)},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const g=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=y(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!D[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const D={}}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=i,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=i,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+\",\");else for(let i of this.values)i.id===t&&(e+=i.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw\"No such property: \"+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText(\"Entities\",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",n,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",n,t.DateTime)}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return\"\";i=i||\" \";let n=\"\";if(t.caption&&!s){n=d.getText(\"Entities\",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class T{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function x(t,e){let i=t;return null!=i&&i.length>0?(\"/\"!=i.charAt(i.length-1)&&(i+=\"/\"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},d.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue=\"\",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue=\"\",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:\"__substring\",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split(\"||\").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}}\n/*!\n * EasyData.JS UI v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */\n/*!\n * EasyData.JS Core v1.4.20\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n */var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(I||(I={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(S||(S={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>\"number\"==typeof t))},t.getDateDataTypes=function(){return[I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return[I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}t.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),d=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=d>-1&&d23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(R||(R={})),function(t){let e,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},s={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},n={\"en-US\":s};const o=[];function a(t){for(const e of o)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t)}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i)}t.addMapper=function(t){o.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s=\"\";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){\"object\"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts)}e.texts=R.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=i.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const u=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+\" \"+e.shortTimeFormat}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+\" \"+e.longTimeFormat}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?\"d\"==i?i=g(I.Date):\"D\"==i?i=m(I.Date):\"f\"==i?i=g(I.DateTime):\"F\"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(e,i){if(!f[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(\".\",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(k||(k={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class L{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(o,i):o()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},k.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&o&&o(e)};function l(){return void 0!==n?n:a}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i)},t.onMobileModeChanged=function(t){o=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(O||(O={}));const B=\"eqjs\";class H{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(o?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=o};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):\"_\")}else e===a-1&&a--,o-1===e&&o--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);o.push(d?l:\"_\"),d&&a===s&&r++}else o.push(e),r===s&&r++,a===s&&a++})),t.value=o.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}(this.element,t),this}}class W extends H{constructor(t,e){super(t||\"select\",e)}addOption(t){const e=document.createElement(\"option\");return\"string\"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return\"div\"===t||t instanceof HTMLDivElement||\"span\"===t||t instanceof HTMLSpanElement||\"a\"===t||t instanceof HTMLAnchorElement||\"button\"===t||t instanceof HTMLButtonElement||\"img\"===t||t instanceof HTMLImageElement?new H(t,e):\"input\"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):\"textarea\"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):\"select\"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j=\"undefined\"!=typeof TouchEvent;var G;!function(t){t.None=\"none\",t.Allow=\"allow\",t.Forbid=\"forbid\"}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix=\"eqjs-drop\",this.DRAG_DISABLED_ATTR=\"drag-disabled\"}registerDraggableItem(t){const e=t.element;if(!e)throw Error(\"Element in draggle item is null or undefined\");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",a),document.addEventListener(\"touchend\",a)};e.addEventListener(\"mousedown\",o),e.addEventListener(\"touchstart\",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",a),document.removeEventListener(\"touchend\",a)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case G.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`)},st=(t,e,i,s)=>{let n=(t||\"\").toString();\"number\"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},nt=(t,e,i,s)=>{const n=\"[object Date]\"===Object.prototype.toString.call(t);let o=(t||\"\").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else{const i=k.getCurrentLocale(),s={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer(\"NumberDefault\",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer(\"DateTimeDefault\",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer(\"BoolDefault\",ot),this.setDefaultRenderer(et.BOOL,ot)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[I.Unknown]=t.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=G.Allow}}),s}renderBody(){this.bodyDiv=z(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=z(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{z(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o=\"\";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=\". . . . . .\"),n.appendChild(this.renderCell(t,i,o,n))}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=z(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n=\"?\"),e.innerHTML=k.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n))})),n}renderCell(t,e,i,s){const n=z(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,o,a)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!o){a&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let o=s(i-1,\"«\",1==i,!0,!1);n.appendChild(o),o=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener(\"change\",e);const r=document.createElement(\"div\");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement(\"span\");l.innerText=k.getText(\"GridItemsPerPage\"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?z(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():z(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace=\"nowrap\"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class lt{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class dt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return z(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class pt extends dt{render(){const t=z(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var gt;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(gt||(gt={}));const mt=\"kdlg\";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1)}track(t){ft.openDialogs.push(t)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close()}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=R.generateId(\"dlg\"),this.data=e,this.slot=z(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${mt}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild(\"p\",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${mt}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),\"string\"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||k.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||k.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=z(\"div\").addClass(`${mt}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${mt}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${mt}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(Ct||(Ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(wt||(wt={}));const Tt=\"yyyy-MM-dd\",bt=\"HH:mm\",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event(\"ed_set_location\"))};class It{}class St extends It{constructor(){super(),this.name=\"DateTime\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[d.getText(\"DateTimeError\")]}}return{successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(\".errors-block\")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll(\"input, select\"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if(\"checkbox\"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild(\"ul\"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll(\"input, select, textarea\"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(\".\")+1),s=this.context.getMetaData().getAttributeById(t.name);\"checkbox\"===t.type?n[e]=t.checked:\"file\"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(\",\")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML=\"\",this.html.querySelectorAll(\"input, select\").forEach((t=>{t.classList.remove(\"is-valid\"),t.classList.remove(\"is-invalid\")}))}markInputValid(t,e){t.classList.add(e?\"is-valid\":\"is-invalid\")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render()}render(){const t=O.IsIE()?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild(\"div\",(t=>{t.addClass(\"control\").addChild(\"input\",(t=>{this.filterInput=t.toDOM(),t.attr(\"placeholder\",d.getText(\"SearchInputPlaceholder\")).type(\"text\"),t.on(\"keydown\",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on(\"keyup\",this.inputKeyupHandler.bind(this))})),e||t.addClass(\"has-icons-right\").addChild(\"span\",(t=>{t.addClass(\"icon\").addClass(\"is-right\").addClass(\"is-clickable\").html(\"🗙\").on(\"click\",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||z(this.slot).addChild(\"button\",(t=>t.addClass(\"kfrm-button\").addText(d.getText(\"SearchBtn\")).on(\"click\",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value=\"\",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return(!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split(\"||\").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement(\"div\");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\";let r;z(t).addChild(\"div\",(t=>{t.addClass(a).addChild(\"input\",(t=>{r=t.toDOM(),t.attr(\"readonly\",\"\"),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():\"\")})),i||t.addChild(\"button\",(t=>t.addClass(\"kfrm-button\").attr(\"title\",d.getText(\"NavigationBtnTitle\")).addText(\"...\").on(\"click\",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"kfrm-field\").addChild(\"label\",(t=>t.addText(d.getText(\"LookupSelectedItem\")).toDOM())).addChild(\"div\",(t=>h=t.addText(\"None\").toDOM())))).addChild(\"div\",(t=>a=t.toDOM())).addChild(\"div\",(t=>t.addClass(\"kfrm-control\").addChild(\"div\",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(\".\")+1)])(t,e.id)}`)).join(\", \")};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(\".\")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity)})).catch((t=>{console.error(t)}))}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t)}))}});o.open({title:d.getText(\"LookupDlgCaption\").replace(\"{entity}\",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(e,i,s,n,o){const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",r=xt(i.dataType);let h;const c=r.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\");z(e).addChild(\"div\",(e=>{e.addClass(a).addChild(\"input\",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?\"hidden\":this.resolveInputType(i.dataType)),n?t.attr(\"readonly\",\"\"):(t.mask(c),t.on(\"keypress\",(t=>this.applySumbit(t))).on(\"input\",(e=>{t.removeClass(\"is-invalid\");try{l.strToDateTime(h.value,r)}catch(e){t.addClass(\"is-invalid\")}})).on(\"blur\",(t=>{h.value===c.replace(/[9]/g,\"_\")&&(h.value=\"\")}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):\"\")})),n||e.addChild(\"button\",(e=>e.addClass(\"kfrm-button\").attr(\"title\",d.getText(i.dataType!==t.Time?\"CalendarBtnTitle\":\"TimerBtnTitle\")).addChild(\"i\",(e=>e.addClass(i.dataType!==t.Time?\"ed-calendar-icon\":\"ed-timer-icon\"))).on(\"click\",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0))}catch(t){s=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r)}},o=new pt(n);o.setDateTime(s),o.show(e.target)})).toDOM()))}))}setupListField(t,e,i,s,n){z(t).addChild(\"div\",(t=>t.addClass(\"kfrm-select full-width\").addChild(\"select\",(t=>{if(n&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.on(\"keypress\",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr(\"readonly\",\"\"),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr(\"accept\",s)}))}setupTextField(e,i,s,n,o){z(e).addChild(\"input\",(e=>{n&&e.attr(\"readonly\",\"\"),e.type(o?\"hidden\":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr(\"checked\",\"\"):e.on(\"keypress\",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():\"\")}))}setupTextArea(t,e,i,s){z(t).addChild(\"textarea\",(t=>{s&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.setStyle(\"height\",\"120px\"),t.value(l.IsDefinedAndNotNull(i)?i.toString():\"\")}))}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z(\"div\",t).addClass(\"kfrm-field-ie\").toDOM()),z(t).addChild(\"label\",(t=>{t.attr(\"for\",i.id),t.addHtml(`${i.caption} ${d?'*':\"\"}: `),i.description&&t.addChild(\"div\",(t=>t.attr(\"title\",i.description).addClass(\"question-mark\").setStyle(\"vertical-align\",\"middle\").setStyle(\"display\",\"inline-block\")))}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h)}else this.setupLookupField(t,i,l,s)}resolveInputType(e){return e===t.Bool?\"checkbox\":e===t.Blob?\"file\":\"text\"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"errors-block\").toDOM())).addChild(\"div\",(e=>{e.addClass(\"\"+(kt?\"kfrm-fields-ie col-ie-1-4 label-align-right\":\"kfrm-fields col-a-1 label-align-right\")),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add(\"ed-progress-bar\")}show(){this.slot.style.removeProperty(\"display\")}hide(){this.slot.style.display=\"none\"}}class Ot{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint(\"FetchDataset\",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\\{.*?\\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||\"__default\",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||\"/api/easydata\")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint(\"GetMetaData\");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint(\"FetchRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint(\"CreateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint(\"UpdateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint(\"DeleteRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+\" endpoint is not defined\";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if(\"modelId\"==s)n=this.model.getId();else{if(\"sourceId\"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist(\"GetMetaData\",x(t,\"models/{modelId}\")),this.setEnpointIfNotExist(\"FetchDataset\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"FetchRecord\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"CreateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/create\")),this.setEnpointIfNotExist(\"UpdateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/update\")),this.setEnpointIfNotExist(\"DeleteRecord\",x(t,\"models/{modelId}/sources/{sourceId}/delete\"))}}class Lt extends It{constructor(){super(),this.name=\"Type\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return{successed:!1,messages:[d.getText(\"NumberError\")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[d.getText(\"IntNumberError\")]}}return{successed:!0}}}class Ft extends It{constructor(){super(),this.name=\"Required\"}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&\"\"!==e?{successed:!0}:{successed:!1,messages:[d.getText(\"RequiredError\")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw\"Can't find active entity for \"+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(`← ${d.getText(\"BackToEntities\")}`).on(\"click\",(t=>{t.preventDefault(),Et(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement(\"div\");if(this.slot.appendChild(e),e.id=\"Grid\",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText(\"AddRecordBtnTitle\"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z(\"div\").addClass(\"kfrm-form\").setStyle(\"margin\",\"10px 0px\").addChild(\"div\",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z(\"div\",i).addClass(\"keg-cell-value\");this.context.getActiveEntity().isEditable&&n.addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"EditBtn\")).on(\"click\",(t=>this.editClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\"))))))).addChild(\"span\",(t=>t.text(\" | \"))).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"DeleteBtn\")).on(\"click\",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText(\"AddDlgCaption\").replace(\"{entity}\",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText(\"EditDlgCaption\").replace(\"{entity}\",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(\".\")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText(\"DeleteDlgCaption\").replace(\"{entity}\",e.caption),d.getText(\"DeleteDlgMessage\").replace(\"{recordId}\",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(\";\"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:\"Ooops, something went wrong\",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText(\"RootViewTitle\")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild(\"div\",(e=>e.addClass(\"ed-root\").addChild(\"div\",(t=>t.addClass(\"ed-menu-description\").addText(d.getText(this.metaData.isEmpty()?\"ModelIsEmpty\":\"EntityMenuDesc\")))).addChild(\"ul\",(e=>{e.addClass(\"ed-entity-menu\"),t.forEach((t=>{e.addChild(\"li\",(e=>{e.addClass(\"ed-entity-item\").on(\"click\",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-caption\").addText(t.captionPlural||t.caption)})),t.description&&e.addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-descr\").addText(`${t.description}`)}))}))}))}))))}}class Ht{constructor(t){this.options={container:\"#EasyDataContainer\",basePath:\"easydata\"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener(\"ed_set_location\",this.onSetLocation),window.addEventListener(\"popstate\",this.onSetLocation)},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath=\"/\"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement(\"div\"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):\"/\"}trimSlashes(t){return t.replace(/^\\/|\\/$/g,\"\")}setContainer(t){if(!t)throw\"Container is undefined\";if(\"string\"==typeof t){if(t.length){if(\".\"===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else\"#\"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error(\"Unrecognized `container` parameter: \"+t+\"\\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.\")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath)}clear(){this.container.innerHTML=\"\",this.context.getData().clear()}detach(){window.removeEventListener(\"ed_set_location\",this.onSetLocation),window.removeEventListener(\"popstate\",this.onSetLocation)}}d.updateDefaultTexts({RequiredError:\"Value is required.\",NumberError:\"Value should be a number\",IntNumberError:\"Value should be an integer number\",DateTimeError:\"Invalid date or time value\",LookupSelectedItem:\"Selected item: \",LookupDlgCaption:\"Select {entity}\",None:\"None\",NavigationBtnTitle:\"Navigation values\",CalendarBtnTitle:\"Open calendar\",TimerBtnTitle:\"Open timer\",AddBtnTitle:\"Add\",AddRecordBtnTitle:\"Add record\",EditBtn:\"Edit\",DeleteBtn:\"Delete\",SelectLink:\"[ select ]\",AddDlgCaption:\"Create {entity}\",EditDlgCaption:\"Edit {entity}\",DeleteDlgCaption:\"Delete {entity}\",DeleteDlgMessage:\"Are you sure you want to remove this record: {{recordId}}?\",EntityMenuDesc:\"Click on an entity to view/edit its content\",BackToEntities:\"Back to entities\",SearchBtn:\"Search\",SearchInputPlaceholder:\"Search...\",RootViewTitle:\"Entities\",ModelIsEmpty:\"No entity was found.\"});export{Nt as DataContext,Ot as EasyDataServerLoader,Ht as EasyDataViewDispatcher,$t as EntityDataView,Mt as EntityEditForm,At as EntityEditFormBuilder,Pt as ProgressBar,Ft as RequiredValidator,Bt as RootDataView,E as TextDataFilter,Rt as TextFilterWidget,Lt as TypeValidator,It as Validator};\n//# sourceMappingURL=easydata.crud.es.js.map\n"],"names":["t","e","Unknown","String","Byte","Word","Int32","Int64","Bool","Float","Currency","BCD","Date","Time","DateTime","Autoinc","Memo","Blob","FixedChar","Guid","Geometry","Geography","Data","Virtual","Lookup","s","Edit","List","CustomList","File","getDateByName","this","Today","Yesterday","setDate","getDate","Tomorrow","FirstDayOfMonth","LastDayOfMonth","setMonth","getMonth","FirstDayOfNextMonth","FirstDayOfPrevMonth","FirstDayOfYear","FirstDayOfPrevYear","setFullYear","getFullYear","FirstDayOfNextYear","FirstDayOfWeek","getDay","FirstDayOfPrevWeek","FirstDayOfNextWeek","r","o","a","h","l","u","n","Trace","Options","Get","Put","Post","Delete","d$2","constructor","xhr","method","url","headers","queryParams","data","setHeader","setQueryParam","getXMLHttpRequest","getResponseHeaders","readyState","HEADERS_RECEIVED","getAllResponseHeaders","trim","split","i","shift","join","open","UNSENT","Object","keys","length","encodeURI","map","setRequestHeader","abort","getAllDataTypes","values","filter","getDateDataTypes","getStringDataTypes","getNumericDataTypes","hasOwnProperty","has","get","Array","isArray","set","create","getPrototypeOf","push","assign","assignDeep","WeakMap","getIfDefined","IsDefinedAndNotNull","copyArrayTo","createArrayFrom","findItemById","id","findItemIndexById","indexOfArrayItem","indexOf","moveArrayItem","splice","removeArrayItem","insertArrayItem","fillArray","Math","max","min","shiftToFitWindow","document","getElementsByTagName","window","innerWidth","documentElement","clientWidth","isObject","isNumericType","isIntType","isNumeric","isNaN","parseFloat","isFinite","areCompatibleDataTypes","isPropSet","toLowerCase","toUpperCase","floor","random","parseInt","generateId","getTime","strToDateTime","replace","c","d","g","f","strToTime","g$2","request","promise","getPromise","getRequest","then","catch","finally","f$2","Error","super","status","shortDateFormat","longDateFormat","editDateFormat","shortTimeFormat","editTimeFormat","longTimeFormat","shortMonthNames","longMonthNames","shortWeekDayNames","longWeekDayNames","decimalSeparator","currency","localeId","englishName","displayName","texts","ButtonOK","ButtonCancel","Yes","No","True","False","settings","addMapper","getLocales","locale","sort","getCurrentLocale","setLocale","console","warn","setCurrentLocale","getText","getLocaleSettings","getOneLocaleSetting","getShortMonthName","getLongMonthName","getShortWeekDayName","toString","getLongWeekDayName","updateLocaleSettings","updateLocaleTexts","error","updateDefaultTexts","updateLocaleInfo","addLocale","resetLocales","toLocaleDateString","year","month","day","toLocaleTimeString","hour","minute","second","navigator","language","m","p","getHours","getMinutes","getSeconds","yyyy","yy","substring","MMMM","MMM","MM","M","dd","HH","H","hh","tt","mm","ss","y","D","dateTimeToStr","dateTimeToStrEx","numberToStr","charAt","w","Number","forEach","slice","toLocaleString","style","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","reverse","trunc","booleanToStr","isEditable","name","caption","description","parent","attributes","subEntities","loadFromData","captionPlural","namePlur","desc","ied","ents","createEntity","attrs","createEntityAttr","scan","stop","getFirstPrimaryAttr","getPrimaryAttrs","isPrimaryKey","y$2","dataType","size","isForeignKey","isNullable","showOnView","showOnCreate","showOnEdit","showInLookup","lookupAttr","expr","entity","kind","cptn","dtype","ipk","ifk","lattr","lookupEntity","lent","dataAttr","dattr","lookupDataAttr","ldattr","defaultValue","defVal","nul","ivis","sov","soc","soe","sil","displayFormat","dfmt","udata","userData","edtr","defaultEditor","getEditorById","createValueEditor","D$2","tag","resType","defValue","defval","rtype","accept","multiline","subType","getValueText","text","None","Left","Center","Right","x$2","label","type","originAttrId","isAggr","groupFooterColumnTemplate","gfct","calculatedWidth","items","mapper","_dateColumnIdx","count","add","x","updateDateColumnIdx","getItems","put","move","getIndex","getDateColumnIndexes","removeAt","clear","columns","toArray","from","getValue","RangeError","setValue","I$2","newGuid","renderLiquidTemplate","RegExp","NaN","ceil","colStore","aggregates","groups","useGrandTotals","useRecordCount","_caseSensitiveGroups","COUNT_FIELD_NAME","caseSensitiveGroups","updateCompareProc","compareValues","strictCompare","caseInsensitiveCompare","addGroup","getColumnIds","to","validateColumns","hasColumnsInUse","addAggregateColumn","validateAggregate","colId","funcId","addGrandTotals","addCounts","getGroups","concat","getInternalGroups","lastGroup","getAggregates","hasAggregates","hasGroups","hasGrandTotals","hasRecordCount","isEmpty","drop","needAggrCalculation","saveToData","ugt","urc","csg","buildGroupKey","_chunkSize","_elasticChunks","cachedRows","total","loader","needTotal","isInMemory","chunkSize","elasticChunks","inMemory","_columns","E","onUpdate","rows","createRow","addRow","getRows","pageSize","page","offset","limit","Promise","resolve","loadChunk","prototype","apply","table","getCachedRows","getCachedCount","fireUpdated","getRow","getTotal","setTotal","b","mapDate","totalIsKnown","silentMode","events","source","subscribe","getEventRecByType","I","callback","eventCallbacks","unsubscribe","fire","setTimeout","enterSilentMode","exitSilentMode","isSilent","responseBody","_responseBody","defaultHeaders","customPayload","send","post","contentType","XMLHttpRequest","XDomainRequest","beforeEachRequest","onRequest","JSON","stringify","responseType","onerror","responseText","onreadystatechange","getResponseHeader","response","parse","onResponse","decodeArrayBuffer","message","FileReader","onloadend","DONE","result","readAsText","mainEntity","rootEntity","displayFormats","Map","getMainEntity","loadFromJSON","version","vers","editors","entroot","getDisplayFormats","getDisplayFormatsForType","getDefaultFormat","isdef","setData","getId","getName","getRootEntity","getAttributeById","getEntityAttrById","checkAttrProperty","listByEntityWithFilter","isEntity","listByEntity","includeRootData","sortEntities","attrPlacement","addDefaultValueEditors","addOrUpdateValueEditor","getEntitiesTree","getEntitiesTreeWithFilter","getFullEntityPathByAttr","getEntityPathByAttr","getAttributeText","runThroughEntities","getFirstAttributeByFilter","date","_name","asTime","repeat","lastIndexOf","l$1","d$1","display","C","body","top","pageYOffset","scrollTop","left","pageXOffset","scrollLeft","T","right","bottom","width","height","getBoundingClientRect","clientTop","clientLeft","round","innerHeight","userAgent","IsIE","IsEdge","includes","IsFirefox","matchMedia","matches","addEventListener","isMobileMode","setIsMobileMode","onMobileModeChanged","getMobileCssClass","S","value","selectionStart","test","selectionEnd","keyCode","preventDefault","createEvent","initEvent","dispatchEvent","fromCharCode","charCode","element","createElement","parentElement","appendChild","addChild","L","addChildElement","attr","setAttribute","focus","title","removeAttribute","show","removeStyle","hide","setStyle","visible","isVisible","offsetWidth","offsetHeight","getClientRects","addClass","classList","removeClass","remove","toggleClass","toggle","on","off","removeEventListener","setProperty","removeProperty","innerText","html","innerHTML","tagName","replaceWith","addText","createTextNode","addHtml","toDOM","appendTo","O$1","R","cols","P$1","valueAsDate","valueAsNumber","mask","addOption","selected","HTMLDivElement","HTMLSpanElement","HTMLAnchorElement","HTMLButtonElement","HTMLImageElement","HTMLInputElement","P","HTMLTextAreaElement","O","HTMLSelectElement","A","k","TouchEvent","N","Allow","Forbid","$$1","dropEffect","pageX","pageY","item","dragImage","sourceEvent","MouseEvent","touches","H$1","F$1","delta","draggableItem","finishedSuccessfully","mouseDownPosition","containerDescriptors","containerDescriptorIndex","classPrefix","DRAG_DISABLED_ATTR","registerDraggableItem","ondragstart","hasAttribute","stopPropagation","abs","mouseMoveDragListener","beforeDragStart","cloneNode","renderer","updateCusror","updateImageClass","scope","updateDragItemPosition","$","onDragStart","scopes","onDrop","onDragLeave","onDragEnd","removeChild","registerDropContainer","removeDropContainer","detectDragEnterEvent","dragEnterEvent","detectDragLeaveEvent","dragLeaveEvent","onDragOver","setCursorStyle","cursor","children","onDragEnter","_","F","Y","B","Always","Once","Never","NONE","LEFT","CENTER","RIGHT","W$1","_label","_description","align","isRowNum","dataColumn","grid","options","columnWidths","alignment","default","rowNumColumn","G$1","sync","W","onSyncGridColumn","z","V","U","STRING","NUMBER","DATETIME","BOOL","j","q","K","call","Q","J$1","renderers","defaultRenderers","registerRenderer","setDefaultRenderer","getDefaultRenderer","getCellType","getDefaultRendererByType","getRenderer","Z$1","cssPrefix","slot","yearRange","currentDate","dateChanged","onDateChanged","tt$1","calendar","timePicker","render","setDateTime","currentDateTime","setTime","getDateTime","showCalendar","createCalendar","showDateTimeInput","timePickerIsUsed","showTimePicker","oneClickDateSelection","dateTimeChanged","createTimePicker","onTimeChanged","setHours","setMinutes","beforeShow","clientHeight","onApply","destroy","cancel","onCancel","onDateTimeChanged","et$1","Z","daysOfWeek","months","calendarBody","isManualInputChanging","selectedMonth","selectedYear","rerenderMonth","renderManualDateInput","headerTextElem","renderCalendarButtons","getInputDateFormat","manualInputElem","jump","className","updateDisplayedDateValue","prev","selectMonthElem","selectYearElem","next","rerenderSelectYear","exec","target","getAttribute","onDrawDay","it$1","currentTime","timeChanged","st$1","it","updateDisplayedTime","hoursInput","minutesInput","timeText","at","ot","rt$1","rt","openConfirm","closable","submitable","cancelable","onSubmit","openPrompt","submitOnEnter","arrangeParents","beforeOpen","getElementById","lt","onDestroy","untrack","track","createSet","ht","openDialogs","openProgress","dt","getAllDialogs","closeAllDialogs","close","lt$1","submitHandler","cancelHandler","keydownHandler","isActiveDialog","dialogId","windowElement","headerElement","alertElement","bodyElement","footerAlignment","footerElement","submitButtonText","recaptchaSiteKey","grecaptcha","ready","execute","action","cancelButtonText","getData","getRootElement","getSubmitButtonElement","getCancelButtonElement","querySelector","querySelectorAll","clearAlert","onInput","onShow","submit","disableButtons","disabled","enableButtons","showAlert","dt$1","content","determinated","contentElement","progressElement","updateContent","updateProgress","in01","ht$1","dialogService","currentDialog","currentIndex","getCurrent","openNext","openPrev","ct","ut","GridPageInfo","GridItemsPerPage","ButtonApply","ButtonNow","LblTotal","THIS_WEEK","LAST_WEEK","THIS_MONTH","FIRST_MONTH","LAST_MONTH","THIS_YEAR","QUARTER_1","QUARTER_2","QUARTER_3","QUARTER_4","UNDEF","TODAY","YESTERDAY","TOMORROW","WEEK_START","WEEK_END","MONTH_START","MONTH_END","YEAR_START","YEAR_END","setupDialog","weekStart","append","drawDialog","calendar1","calendar2","alignDate","start","finish","represent","setSeconds","setMilliseconds","select","et","log","mt","zIndex","renderButtons","globalMouseDownHandler","event","srcElement","contains","nowButton","submitButton","calendarSlot","timePickerSlot","st","pagination","paginationOptions","maxButtonCount","useBootstrap","defaultDataGridOptions","dataTable","fixHeightOnFirstRender","syncGridColumns","useRowNumeration","allowDragDrop","calculator","paging","enabled","pageSizeItems","autoResize","stringColumns","numberColumns","boolColumns","dateColumns","otherColumns","showPlusButton","viewportRowsCount","showActiveRow","rowsOnPagePromise","containerInitialHeight","firstRender","prevRowTotals","landingIndex","landingSlot","_activeRowIndex","mergeOptions","processColumnWidthsOptions","eventEmitter","cellRendererStore","J","G","setSlot","init","getElementsByClassName","onInit","onRowClick","onRowDbClick","onPlusButtonClick","onColumnChanged","onColumnDeleted","onColumnMoved","onPageChanged","onActiveRowChanged","activeRowIndex","showLandingSlot","hideLandingSlot","column","refresh","fireEvent","columnId","newIndex","getColumns","clearDOM","hasData","rootDiv","renderHeader","headerDiv","renderBody","bodyDiv","renderFooter","footerDiv","updateHeight","resizeColumns","bodyCellContainerDiv","firstElementChild","bodyViewportDiv","getContainerWidth","reduce","headerViewportDiv","headerCellContainerDiv","headerRowDiv","renderColumnHeader","renderHeaderButtons","canShowAggregates","showProgress","getRowsToRender","hideProgress","updateTotalsState","renderRow","showGrandTotalsOnEachPage","isLastPage","onViewportKeydown","bind","renderTotalsRow","applyGroupColumnTemplate","renderCell","getAggrContainer","getAggregateData","firstChild","key","ensureRowVisibility","getDataRow","footerPaginateDiv","renderPageNavigator","renderPageInfoBlock","getLocalIndexByGlobal","getGlobalIndexByLocal","row","rowIndex","getCellRenderer","onGetCellRenderer","setPage","allowPageSizeChange","Set","plusButtonTitle","insertBefore","updateActiveRow","oldValue","newValue","getActiveRow","visibility","whiteSpace","cssClass","Event","gt","getComputedStyle","overflow","paddingTop","paddingBottom","marginTop","marginBottom","boxSizing","transitionProperty","transitionDuration","duration","complete","v","sourceTable","sourceId","isLookup","filterValue","justServerSide","applyCore","class","filters","lookup","applyInMemoryFilter","X","nt","pt","ft","yt","vt","Dt","Ct","wt","Tt","bt","xt","Et","history","state","pushState","It","St","validate","successed","messages","Mt","context","validators","getHtml","setHtmlInt","errorsDiv","clearErrors","getMetaData","validateValue","markInputValid","checked","fileToBase64","files","mapValue","all","readAsDataURL","onload","useValidator","useValidators","Rt","instantMode","instantTimeout","highlightCellRenderer","filterInput","inputKeydownHandler","inputKeyupHandler","clearButtonClickHander","searchButtonClickHandler","applyFilter","applyFilterTimeout","clearTimeout","highlightText","HTMLElement","backgroundColor","index","index2","kt","At","params","reset","form","setupLookupField","resolveInputType","getDataLoader","fetchRecord","createFilter","setupDateTimeField","applySumbit","setupListField","setupFileField","setupTextField","setupTextArea","addFormField","isEditForm","resolveEditor","sumbitCallback","build","getActiveEntity","Pt","Ot","resolveEndpoint","startProcess","getHttpClient","resultSet","meta","totalRecords","hasNext","endProcess","Nt","endpoints","endpointVarsRegex","http","model","metaDataId","dataLoader","setDefaultEndpoints","endpoint","activeEntity","setActiveSource","loadMetaData","sourceError","fetchDataset","createRecord","updateRecord","deleteRecord","setEndpoint","setEnpointIfNotExist","match","onProcessStart","onProcessEnd","Lt","isInteger","Ft","$t","basePath","showFilterBox","showBackToEntities","defaultValidators","dlg","location","pathname","renderGrid","syncGridColumnHandler","addClickHandler","manageCellRenderer","rowDbClickHandler","filterWidget","editClickHandler","deleteClickHandler","refreshData","processError","showEditForm","Bt","metaData","renderEntitySelector","decodeURIComponent","RequiredError","NumberError","IntNumberError","DateTimeError","LookupSelectedItem","LookupDlgCaption","NavigationBtnTitle","CalendarBtnTitle","TimerBtnTitle","AddBtnTitle","AddRecordBtnTitle","EditBtn","DeleteBtn","SelectLink","AddDlgCaption","EditDlgCaption","DeleteDlgCaption","DeleteDlgMessage","EntityMenuDesc","BackToEntities","SearchBtn","SearchInputPlaceholder","RootViewTitle","ModelIsEmpty","container","onSetLocation","setActiveView","attach","normalizeBasePath","setContainer","trimSlashes","toLocaleLowerCase","getActiveSourceId","run","EDView","detach"],"mappings":"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"} \ No newline at end of file diff --git a/package.json b/package.json index 15b7c2d2..a5c719cf 100644 --- a/package.json +++ b/package.json @@ -28,8 +28,8 @@ "@rollup/plugin-terser": "^0.4.4", "@rollup/plugin-typescript": "^11.1.5", "autoprefixer": "^10.4.16", - "lerna": "^8.0.0", - "rollup": "^4.9.0", + "lerna": "^8.0.1", + "rollup": "^4.9.2", "rollup-plugin-no-emit": "^1.1.1", "rollup-plugin-postcss": "^4.0.2", "rollup-plugin-progress": "^1.1.2", @@ -37,6 +37,6 @@ "tslib": "^2.6.2", "typedoc": "^0.25.4", "typescript": "^5.3.3", - "vitest": "^1.0.4" + "vitest": "^1.1.1" } } From 7c95793f3699a972afa60869c9d9989fd355432a Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Tue, 2 Jan 2024 21:35:58 +0200 Subject: [PATCH 05/40] Update package.json --- easydata.js/packs/crud/lib/easydata.js | 8 ++++---- easydata.js/packs/crud/lib/easydata.min.js | 8 ++++---- easydata.js/packs/crud/lib/easydata.min.js.map | 2 +- easydata.js/packs/crud/package.json | 2 +- easydata.js/packs/ui/package.json | 2 +- easydata.js/packs/ui/rollup.config.mjs | 2 +- playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml | 9 ++------- playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml | 4 ++-- playground/EasyDataAspNetCoreTest01/package.json | 1 + 9 files changed, 17 insertions(+), 21 deletions(-) diff --git a/easydata.js/packs/crud/lib/easydata.js b/easydata.js/packs/crud/lib/easydata.js index 7ff084c3..aa552290 100644 --- a/easydata.js/packs/crud/lib/easydata.js +++ b/easydata.js/packs/crud/lib/easydata.js @@ -1,7 +1,7 @@ /*! * EasyData.JS CRUD - * Copyright 2023 Korzh.com + * Copyright 2024 Korzh.com * Licensed under MIT !*/ @@ -50,7 +50,7 @@ var easydata = (function (exports) { /*! * EasyData.JS UI - * Copyright 2023 Korzh.com + * Copyright 2020 - 2024 Korzh.com * Licensed under MIT !*/ /*! @@ -118,7 +118,7 @@ var easydata = (function (exports) { /*! * EasyData.JS CRUD - * Copyright 2023 Korzh.com + * Copyright 2024 Korzh.com * Licensed under MIT !*/ /*! @@ -129,7 +129,7 @@ var easydata = (function (exports) { var t,e;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography";}(t||(t={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup";}(e||(e={}));const i="Unknown",s="EDIT",n="DATETIME",o="LIST",a="FILE";var r,l,d,h,c;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE";}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data;}setHeader(t,e){this.headers[t]=e;}setQueryParam(t,e){this.queryParams[t]=e;}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n;}return e}return {}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t]);}abort(){this.xhr.abort();}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>"number"==typeof t))},e.getDateDataTypes=function(){return [t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return [t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&"object"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a;}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw "Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s);},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i);},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return !isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw `"${t}" is not a valid number`;return e}e.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o="";for(let t=0;t0&&(e+="-");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e);}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),o=s.indexOf("MM"),a=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),h=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&o11)throw "";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw "";const s=l>-1&&l23)throw "";const p=h>-1&&h59)throw "";const g=c>-1&&c59)throw "";return new Date(t,e,i,s,p,g)}catch(e){throw `${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?d(e[0]):0;if(t>23)throw "";const i=e.length>1?d(e[1]):0;if(i>59)throw "";const s=e.length>1?d(e[1]):0;if(s>59)throw "";return new Date(0,0,0,t,i,s)}catch(e){throw `${t} is not a valid time.`}};}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e;}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t;}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0;}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||"json",o=s.contentType||"form-data"!==n?"application/json":null;i&&"form-data"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers["Content-Type"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&"string"!=typeof d.data&&"json"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText));},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader("Content-Type")||"",n=a.status;if(0===n)i(new g(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===a.responseType||"blob"===a.responseType?a.response:0==s.indexOf("application/json")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e);}else ("arraybuffer"===a.responseType||"blob"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf("application/json")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a));}));},a.send(h);})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result);},e.readAsText(new Blob([t]));}))}}!function(e){let i,s={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:s},o={"en-US":n};const a=[];function r(t){for(const e of a)e(t);}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t;}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t);}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e);}e.addMapper=function(t){a.push(t);},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),h(t);},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw "Wrong month number: "+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw "Wrong month number: "+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw "Wrong month number: "+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){"object"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead");},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts);}i.texts=l.assignDeep({},t,i.texts);},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e);},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let o=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),a=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a});}("object"==typeof navigator?navigator.language:void 0));};const g=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:o<10?"0"+o:o.toString(),d:o.toString(),HH:a<10?"0"+a:a.toString(),H:a.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:h?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat;}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat;}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?"d"==s?s=f(t.Date):"D"==s?s=y(t.Date):"f"==s?s=f(t.DateTime):"F"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(t,i){if(!D[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0];}));}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return {style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return {style:"currency",currency:e.currency,minimumFractionDigits:s};default:return {style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);"#"===o||"0"===o?n>=0?(s+=i.charAt(n),n--):"0"===o&&(s+=0):s+=o;}return s.split("").reverse().join("")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(".",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return `${t}`};const D={};}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array;}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id="",this.caption="{Unrecognized attribute}",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=i,this.kind=e.Data;}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor());}}}class D{constructor(){this.id="",this.tag=i,this.resType=t.Unknown,this.defValue="";}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values));}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map;}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e);}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t);}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw "No such property: "+e;return !!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return !1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t);}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t);}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version="";}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor("_DTE",s,t.String),e.defValue="",this.addOrUpdateValueEditor("_DPDE",n,t.DateTime),this.addOrUpdateValueEditor("_DPTE",n,t.DateTime);}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return "";i=i||" ";let n="";if(t.caption&&!s){n=d.getText("Entities",t.caption)||t.caption;}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e));}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx());}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id];}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={};}}class T{constructor(t,e){this.columns=t,this.values=e;}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e;}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t);}this.needTotal=!this._elasticChunks;}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[];}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total);}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw `Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1;}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated();}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n;})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i);}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this);}};function x(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t]);}return i},d.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue="",this.justServerSide=!1;}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return !0}}return !1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i);}))}} /*! * EasyData.JS UI - * Copyright 2023 Korzh.com + * Copyright 2020 - 2024 Korzh.com * Licensed under MIT !*/ /*! diff --git a/easydata.js/packs/crud/lib/easydata.min.js b/easydata.js/packs/crud/lib/easydata.min.js index 2a59ffde..94ca5168 100644 --- a/easydata.js/packs/crud/lib/easydata.min.js +++ b/easydata.js/packs/crud/lib/easydata.min.js @@ -1,6 +1,6 @@ /*! * EasyData.JS CRUD - * Copyright 2023 Korzh.com + * Copyright 2024 Korzh.com * Licensed under MIT !*/ var easydata=function(t){"use strict"; @@ -11,7 +11,7 @@ var easydata=function(t){"use strict"; !*/var e,i;!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(e||(e={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(i||(i={}));const s={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};let n=class{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let i=e.getDay();return i=0==i?6:i-1,e.setDate(e.getDate()-i),e}FirstDayOfPrevWeek(t){let e=new Date,i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()-i),e}FirstDayOfNextWeek(t){let e=new Date;var i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()+i),e}};var a,o,r,l,h,d=new n;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(a||(a={}));let c=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(e).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[e.Time,e.Date,e.DateTime]},t.getStringDataTypes=function(){return[e.String,e.Memo,e.FixedChar]};const i=[e.Byte,e.Word,e.Int32,e.Int64,e.Float,e.Currency,e.Autoinc];t.getNumericDataTypes=function(){return i};const s=[e.Byte,e.Word,e.Int32,e.Int64,e.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return i.indexOf(t)>=0},t.isIntType=function(t){return s.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,i){return void 0===t||void 0===i||t==e.Unknown||i==e.Unknown||t==i||t==e.Date&&i==e.DateTime||t==e.DateTime&&i==e.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o="0123456789abcdefghijklmnopqrstuvwxyz";function r(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function h(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),l=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=l>-1&&l23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?h(e[0]):0;if(t>23)throw"";const i=e.length>1?h(e[1]):0;if(i>59)throw"";const s=e.length>1?h(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));let u=class{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}},g=class extends Error{constructor(t,e){super(e),this.status=t}};!function(t){let i,s={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},n={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:s},a={"en-US":n};const r=[];function l(t){for(const e of r)e(t)}function h(){return i.localeId}function d(t){const e=a[t];e?o.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=o.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=o.assignDeep({},s)),i.settings=o.assignDeep(i.settings,t)}function g(t,e){l(e);let s=i;t&&(e.localeId||(e.localeId=t),s=a[t],s||(s=o.assignDeep({},n),a[t]=s)),o.assignDeep(s,e)}t.addMapper=function(t){r.push(t)},t.getLocales=function(){let t=[];for(let e in a)t.push({locale:e,englishName:a[e].englishName,displayName:a[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=h,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),d(t)},t.setCurrentLocale=d,t.getText=function(...t){let e=i.texts,s="";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=u,t.updateLocaleTexts=function(t){"object"==typeof t?(l({localeId:i.localeId,texts:t}),o.assignDeep(i.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in a){let i=a[e];i.texts=o.assignDeep({},t,i.texts)}i.texts=o.assignDeep({},t,i.texts)},t.updateLocaleInfo=g,t.addLocale=function(t,e){g(t,e)},t.resetLocales=function(){i||(i=o.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=e.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const p=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(t){const i=c();let s;switch(t){case e.Date:s=i.shortDateFormat;break;case e.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+" "+i.shortTimeFormat}return s}function y(t){const i=c();let s;switch(t){case e.Date:s=i.longDateFormat;break;case e.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+" "+i.longTimeFormat}return s}t.dateTimeToStr=m,t.dateTimeToStrEx=function(t,i,s){return s?"d"==s?s=f(e.Date):"D"==s?s=y(e.Date):"f"==s?s=f(e.DateTime):"F"==s&&(s=y(e.DateTime)):s=f(i),m(t,s)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!D[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=h();return e.toLocaleString(t,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=c();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const D={}}(r||(r={}));let p=class{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}},m=class{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=e.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=i.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}},f=class{constructor(){this.id="",this.tag=s.Unknown,this.resType=e.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}};!function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(l||(l={}));let y=class{constructor(t){if(!t)throw Error("Options are required");if(!t.id)throw Error("Field Id is required");if(!t.label)throw Error("Label is required");this.id=t.id,this.type=o.getIfDefined(t.type,e.String),this.label=t.label,this.originAttrId=t.originAttrId,this.isAggr=t.isAggr||!1,this.displayFormat=t.dfmt,this.groupFooterColumnTemplate=t.gfct,this.style=t.style||{},this.description=t.description,this.calculatedWidth=0}},D=class{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(t){let i;i=t instanceof y?t:new y(t);const s=this.items.length;return this.items.push(i),this.mapper[i.id]=s,[e.Date,e.DateTime,e.Time].indexOf(i.type)>=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[e.Date,e.DateTime,e.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(o.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}},w=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},v=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}};!function(t){t.renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i}}(h||(h={})),r.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});var C,T,b,E,x,I,S,M,R=Object.freeze({__proto__:null,AggregationSettings:class{constructor(t){this.colStore=t,this.aggregates=[],this.groups=[],this.useGrandTotals=!1,this.useRecordCount=!1,this._caseSensitiveGroups=!1,this.COUNT_FIELD_NAME="GRPRECCNT"}get caseSensitiveGroups(){return this._caseSensitiveGroups}set caseSensitiveGroups(t){this._caseSensitiveGroups=t,this.updateCompareProc()}updateCompareProc(){this.compareValues=this._caseSensitiveGroups?this.strictCompare:this.caseInsensitiveCompare}addGroup(t){const e=t.columns||this.colStore.getColumnIds(t.from,t.to);if(!this.colStore.validateColumns(e))throw"Invalid columns: "+e;if(this.hasColumnsInUse(e))throw"Can't add same columns to different groups/aggregates";return this.groups.push(Object.assign({columns:e},t)),this}addAggregateColumn(t,e){const i="string"==typeof t?t:this.colStore.getColumnIds(t,t)[0];if(this.hasColumnsInUse([i])||!this.colStore.validateAggregate(i,e))throw"Invalid aggregation function for the column: "+i;return this.aggregates.push({colId:i,funcId:e}),this}addGrandTotals(){return this.useGrandTotals=!0,this}addCounts(){return this.useRecordCount=!0,this}getGroups(){let t=[];return this.groups.map((e=>(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups)if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0;for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const i=!this.caseSensitiveGroups;let s={};if(t)for(const n of t.columns){let t=e.getValue(n);i&&"string"==typeof t&&(t=t.toLowerCase()),s[n]=t}return s}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}},get ColumnAlignment(){return l},DataColumn:y,DataColumnList:D,DataRow:w,get DataType(){return e},EasyDataTable:class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new D,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof w?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new w(this._columns,i)}mapDate(t,i){if(t){let s=new Date(t);return isNaN(s.getTime())&&i==e.Time&&(s=o.strToTime(t)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new w(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}},EasyGuid:v,EditorTag:s,get EntityAttrKind(){return i},EventEmitter:class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:v.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}},HttpClient:class t{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(a.Get,t,null,e)}post(t,e,i){return this.send(a.Post,t,e,i)}put(t,e,i){return this.send(a.Put,t,e,i)}delete(t,e,i){return this.send(a.Delete,t,e,i)}send(e,i,s,n){const a=(n=n||{}).dataType||"json",r=n.contentType||"form-data"!==a?"application/json":null;s&&"form-data"!=a&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const l=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:e,url:i,headers:Object.assign(Object.assign({},this.defaultHeaders),n.headers||{}),queryParams:n.queryParams||{},data:s};r&&(h.headers["Content-Type"]=r);const d=new c(l,h);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const p=d.data&&"string"!=typeof d.data&&"json"==a?JSON.stringify(d.data):d.data;return d.open(),new u(d,new Promise(((e,s)=>{n.responseType&&(l.responseType=n.responseType),l.onerror=t=>{s(new g(l.status,l.responseText))},l.onreadystatechange=()=>{if(4!=l.readyState)return;const n=l.getResponseHeader("Content-Type")||"",a=l.status;if(0===a)s(new g(a,"Network error or the request was aborted"));else if(a>=200&&a<400){const t="arraybuffer"===l.responseType||"blob"===l.responseType?l.response:0==n.indexOf("application/json")?JSON.parse(l.responseText):l.responseText;this._responseBody=t,this.onResponse&&this.onResponse(l),e(t)}else("arraybuffer"===l.responseType||"blob"===l.responseType?t.decodeArrayBuffer(l.response):Promise.resolve(l.responseText)).then((t=>{const e=0==n.indexOf("application/json")?JSON.parse(t):t;this._responseBody=e;const o=e.message||(404==a?`No such endpoint: ${i}`:e);s(new g(a,o))}))},l.send(p)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}},get HttpMethod(){return a},HttpRequest:c,HttpResponseError:g,MetaData:class{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new m(t)}createValueEditor(){return new f}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let l=0;l0&&n.push(t)}}let h=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),a.sort(c)),d=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&d.sort(c),e.includeRootData?(s=r.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:d}):d}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",s.Edit,e.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",s.DateTime,e.DateTime),this.addOrUpdateValueEditor("_DPTE",s.DateTime,e.DateTime)}addOrUpdateValueEditor(t,e,i){let s=o.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s){n=r.getText("Entities",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i},get i18n(){return r},get liquid(){return h},registerSpecialDatesResolver:function(t){d=t},repeatString:function(t,e){return t.repeat(e)},reverseString:function(t){return t.split("").reverse().join("")},strEndsWith:function(t,e){return t&&t.lastIndexOf(e)==t.length-e.length},get utils(){return o}}); /*! * EasyData.JS UI - * Copyright 2023 Korzh.com + * Copyright 2020 - 2024 Korzh.com * Licensed under MIT !*/ /*! @@ -21,7 +21,7 @@ var easydata=function(t){"use strict"; !*/!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(C||(C={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(T||(T={})),function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(b||(b={})),function(t){t.getAllDataTypes=function(){return Object.values(C).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[C.Time,C.Date,C.DateTime]},t.getStringDataTypes=function(){return[C.String,C.Memo,C.FixedChar]};const e=[C.Byte,C.Word,C.Int32,C.Int64,C.Float,C.Currency,C.Autoinc];t.getNumericDataTypes=function(){return e};const i=[C.Byte,C.Word,C.Int32,C.Int64,C.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==C.Unknown||e==C.Unknown||t==e||t==C.Date&&e==C.DateTime||t==C.DateTime&&e==C.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(E||(E={})),function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?E.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=E.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=E.assignDeep({},i)),e.settings=E.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=E.assignDeep({},s),n[t]=a)),E.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),E.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=E.assignDeep({},t,i.texts)}e.texts=E.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=E.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case C.Date:i=e.shortDateFormat;break;case C.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case C.Date:i=e.longDateFormat;break;case C.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(C.Date):"D"==i?i=m(C.Date):"f"==i?i=p(C.DateTime):"F"==i&&(i=m(C.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(x||(x={})),function(t){t[t.None=0]="None",t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(I||(I={}));let O=class{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}},A=class{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}},k=class{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:A.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}};function P(t){t.style.display="none"}function N(t,e){e||(e=""),t.style.display=e}function L(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function F(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=L(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,h=n.clientLeft||s.clientLeft||0,d=i.top+o-l,c=i.left+r-h;return{top:Math.round(d),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function $(){return{width:window.innerWidth,height:window.innerHeight}}(S||(S={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},x.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes("Edge/")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener("resize",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?"k-mobile":null}}(M||(M={}));const B="eqjs";function H(t,e){const i={9:"[0-9]",a:"[a-z]"},s=e.split(""),n=e=>{if("focus"===e.type&&""!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],"i").test(t.value.charAt(s));n.push(a?t.value.charAt(s):"_")}else n.push(e)})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a};t.addEventListener("keydown",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],"i").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):"_")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?"":n.reverse().join(""),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("keypress",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let h=new RegExp(i[e],"i").test(l);a.push(h?l:"_"),h&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(""),t.selectionStart=t.selectionEnd=r;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}})),t.addEventListener("input",n),t.addEventListener("focus",n)}let _=class{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=Y(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=Y("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new j(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",s,!0),document.addEventListener("touchmove",s,!0)},a=t=>{z&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener("mousemove",i),e.addEventListener("touchmove",i),document.addEventListener("mouseup",o),document.addEventListener("touchend",o)};e.addEventListener("mousedown",a),e.addEventListener("touchstart",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener("mousemove",i),e.removeEventListener("touchmove",i),document.removeEventListener("mousemove",s,!0),document.removeEventListener("touchmove",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new j(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===U.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new j(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",o),document.removeEventListener("touchend",o)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)E.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case U.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case U.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case U.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case U.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case U.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==U.Forbid&&(this.dropEffect=U.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new j(this.draggableItem,this.dragImage,t);s.dropEffect=U.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=F(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=F(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&E.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\n/g,"↵ "):"";i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-left`)},at=(t,e,i,s)=>{let n=(t||"").toString();"number"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(it,((e,i)=>x.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},ot=(t,e,i,s)=>{const n="[object Date]"===Object.prototype.toString.call(t);let a=(t||"").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat))a=e.dataColumn.displayFormat.replace(it,((i,s)=>x.dateTimeToStrEx(t,e.type,s)));else{const i=x.getCurrentLocale(),s={hour:"numeric",minute:"numeric",second:"numeric"};switch(e.type){case C.Date:a=t.toLocaleDateString(i);break;case C.Time:a=t.toLocaleTimeString(i,s);break;case C.DateTime:a=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=a,i.title=a,e.align==Q.NONE&&i.classList.add(`${et}-cell-value-align-right`)},rt=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&it.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(it,((e,i)=>x.booleanToStr(t,i)));return nt(s,e,i)}i.classList.add(`${et}-cell-value-bool`),i.classList.add(`${et}-${t?"cell-value-true":"cell-value-false"}`)};let lt=class{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",nt),this.setDefaultRenderer(st.STRING,nt),this.registerRenderer("NumberDefault",at),this.setDefaultRenderer(st.NUMBER,at),this.registerRenderer("DateTimeDefault",ot),this.setDefaultRenderer(st.DATETIME,ot),this.registerRenderer("BoolDefault",rt),this.setDefaultRenderer(st.BOOL,rt)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[st[e]]}getDefaultRendererByType(t){return this.defaultRenderers[st[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[st[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case C.Autoinc:case C.Byte:case C.Word:case C.Currency:case C.Float:case C.Int32:case C.Int64:return st.NUMBER;case C.Date:case C.DateTime:case C.Time:return st.DATETIME;case C.Bool:return st.BOOL;default:return st.STRING}}},ht=class{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}},dt=class{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}},ct=class extends ht{constructor(t,e){super(t,e),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),Y(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=Y("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=x.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=Y("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(i=>{e.removeClass("error");try{this.isManualInputChanging=!0;const e=E.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=x.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=x.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return Y("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{Y("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=Y("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=x.getCurrentLocale(),e=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=e}};var pt;!function(t){t[t.Left=1]="Left",t[t.Center=2]="Center",t[t.Right=3]="Right"}(pt||(pt={}));const mt="kdlg";let ft=class t{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s("")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t("")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new wt(t,this)}untrack(e){const i=t.openDialogs.indexOf(e);i>=0&&t.openDialogs.splice(i,1)}track(e){t.openDialogs.push(e)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(t.openDialogs)}closeAllDialogs(){for(const e of Array.from(t.openDialogs))e.close()}};ft.openDialogs=[];let yt=class{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=E.generateId("dlg"),this.data=e,this.slot=Y("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${mt}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild("header",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild("p",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild("button",(t=>t.addClass(`${mt}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),"string"==typeof t.body){const s=S.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild("footer",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==pt.Center?"align-center":"align-right",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild("button",(e=>{e.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(t.submitButtonText||x.getText("ButtonOK")),t.recaptchaSiteKey?(e.data("sitekey",t.recaptchaSiteKey),e.addClass("g-recaptcha"),e.on("click",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on("click",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild("button",(e=>e.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(t.cancelButtonText||x.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),Y(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=Y("div").addClass(`${mt}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${mt}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${mt}-progress-line`).addChild("div",(e=>{s=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}},wt=class{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}};var vt,Ct;x.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"}),function(t){t[t.THIS_WEEK=0]="THIS_WEEK",t[t.LAST_WEEK=1]="LAST_WEEK",t[t.THIS_MONTH=2]="THIS_MONTH",t[t.FIRST_MONTH=3]="FIRST_MONTH",t[t.LAST_MONTH=4]="LAST_MONTH",t[t.THIS_YEAR=5]="THIS_YEAR",t[t.QUARTER_1=6]="QUARTER_1",t[t.QUARTER_2=7]="QUARTER_2",t[t.QUARTER_3=8]="QUARTER_3",t[t.QUARTER_4=9]="QUARTER_4"}(vt||(vt={})),function(t){t.UNDEF="-1",t.TODAY="1",t.YESTERDAY="2",t.TOMORROW="3",t.WEEK_START="4",t.WEEK_END="5",t.MONTH_START="6",t.MONTH_END="7",t.YEAR_START="8",t.YEAR_END="9"}(Ct||(Ct={}));let Tt=class extends yt{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=Y("div").addClass("tsp__container").addChild("div",(t=>{t.addClass("tsp__intervals").addChild("button",(t=>t.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(vt.THIS_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(vt.LAST_WEEK)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(vt.THIS_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(vt.FIRST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(vt.LAST_MONTH)})))).addChild("button",(t=>t.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(vt.THIS_YEAR)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(vt.QUARTER_1)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(vt.QUARTER_2)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(vt.QUARTER_3)})))).addChild("button",(t=>t.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(vt.QUARTER_4)}))))})).addChild("div",(t=>{t.addClass("tsp__form").addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Start")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))})).addChild("div",(t=>{t.addClass("tsp__date").addChild("div",(t=>{t.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish")})).addChild("select",(t=>{t.addOption({value:Ct.UNDEF,title:"Jump To"}).addOption({value:Ct.TODAY,title:"Today"}).addOption({value:Ct.YESTERDAY,title:"Yesterday"}).addOption({value:Ct.TOMORROW,title:"Tomorrow"}).addOption({value:Ct.WEEK_START,title:"Week Start"}).addOption({value:Ct.WEEK_END,title:"Week End"}).addOption({value:Ct.MONTH_START,title:"Month Start"}).addOption({value:Ct.MONTH_END,title:"Month End"}).addOption({value:Ct.YEAR_START,title:"Year Start"}).addOption({value:Ct.YEAR_END,title:"Year End"}),t.on("change",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new ct(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?"from":"to";const a=new Date;switch(e){case Ct.TODAY:s=a;break;case Ct.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case Ct.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case Ct.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case Ct.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case Ct.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case Ct.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case Ct.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case Ct.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=Ct.UNDEF,"from"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case vt.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case vt.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case vt.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case vt.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case vt.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case vt.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case vt.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case vt.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case vt.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\${{${e}}}`;return x.dateTimeToStr(t,x.getLocaleSettings().editDateFormat)}};const bt=new ft;var Et,xt,It=Object.freeze({__proto__:null,get AutoResizeColumns(){return X},Calendar:ht,get CellRendererType(){return st},DFMT_REGEX:it,DateTimePicker:dt,DefaultCalendar:ct,DefaultDateTimePicker:class extends dt{render(){const t=Y("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=Y("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(x.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(x.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(x.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ct(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=Y("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new gt(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=F(t||document.body),i=F(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}},DefaultDialog:yt,DefaultDialogService:ft,DefaultDialogSet:wt,DefaultProgressDialog:Dt,DefaultTimePicker:gt,get DialogFooterAlignment(){return pt},DomElementBuilder:_,DomInputElementBuilder:V,DomSelectElementBuilder:G,DomTextAreaElementBuilder:W,DragManager:K,get DropEffect(){return U},EasyGrid:class{constructor(t){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:X.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=Y("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(Y("div").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=E.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new k(this),this.cellRendererStore=new lt(t),this.columns=new tt(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=E.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=E.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=E.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;E.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),E.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[C.Bool]=Object.assign(Object.assign({},t.boolColumns),t[C.Bool]),E.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...E.getStringDataTypes(),...E.getNumericDataTypes(),...E.getDateDataTypes(),C.Bool];E.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[C.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener("init",t.onInit),t.onRowClick&&this.addEventListener("rowClick",t.onRowClick),t.onRowDbClick&&this.addEventListener("rowDbClick",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener("plusButtonClick",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener("columnChanged",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener("columnDeleted",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener("columnMoved",t.onColumnMoved),t.onPageChanged&&this.addEventListener("pageChanged",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener("activeRowChanged",t.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),E.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&J.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=U.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement("div");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==X.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return Y(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,Y(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=Y("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=Y("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=Y("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=Y("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&Y(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();Y(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=Y("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${e}`).setStyle("width",`${t.width}px`);t.dataColumn&&i.data("col-id",`${t.dataColumn.id}`);let s=i.toDOM();return Y("div",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||Y("div",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&Y("div",s).addClass("question-mark").title(t.description),this.options.allowDragDrop&&J.registerDraggableItem({element:s,scope:"gridColumnMove",data:{column:t},renderer:e=>{e.innerHTML="";const i=document.createElement("div");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=U.Allow}}),s}renderBody(){this.bodyDiv=Y("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=Y("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=Y("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{Y(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new O(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return s=s.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a="";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=". . . . . ."),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML="",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let h="";const d=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==d,(i>=0||n>=0)&&(h=e.getValue(d))}let u="";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(h=this.renderCell(r,l,h,n).firstChild.innerHTML,h=this.applyGroupColumnTemplate(u,h,a[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,h,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=Y("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=Y("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),e.innerHTML=x.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${i.toString()}`).replace("{LastPageRecordNum}",`${s.toString()}`).replace("{Total}",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=Y("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=Y("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${e}`).attr("tabindex","-1").setStyle("width",`${t.width}px`);t.align==Q.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==Q.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==Q.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(Y("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(st.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement("li");if(r.className=`${e}page-item`,!a){o&&(r.className+=" active");const n=document.createElement("a");return n.setAttribute("href","javascript:void(0)"),n.innerHTML=s||t.toString(),n.setAttribute("data-page",`${t}`),n.className=`${e}page-link`,n.addEventListener("click",i),r.appendChild(n),r}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${e}page-link`,n)r.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener("click",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement("ul");n.className=`${e}pagination`;let a=s(i-1,"«",1==i,!0,!1);n.appendChild(a),a=s(i+1,"»",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let h=document.createElement("ul");h.className=`${e}pagination`;let d=s(r-1,"«",1==r,!0,!1);h.appendChild(d);for(let t=r;t<=l;t++)d=s(t,t.toString(),!1,!1,t==i),h.appendChild(d);d=s(l+1,"»",l==n,!0,!1),h.appendChild(d),t.appendChild(h)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement("div");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement("div");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement("select"),a=this.options.paging.pageSizeItems||[],o=new Set(a);o.add(this.options.paging.pageSize||20),Array.from(o).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener("change",e);const r=document.createElement("div");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement("span");l.innerText=x.getText("GridItemsPerPage"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?Y("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():Y("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=F(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(o>0)e+=o,a.width=o,r.forEach((t=>{t.parentElement.style.width=`${o}px`})),s[n].style.width=`${o}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace="nowrap"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}},EqDragEvent:j,GridCellRendererStore:lt,GridColumn:Z,get GridColumnAlign(){return Q},GridColumnList:tt,get JUMP_TO(){return Ct},get PRE_SELECT(){return vt},TimePicker:ut,TimeSpanPicker:Tt,addCssClass:function(t,e){t.className=t.className?t.className+" "+e:e},addElement:function(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s},get browserUtils(){return M},createBrowserEvent:function(t){var e;return"function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e},dialogs:bt,domel:Y,eqCssMobile:"eqjs-mobile",eqCssPrefix:B,eqDragManager:J,getDocSize:function(){return M.IsIE()?$():{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}},getElementAbsolutePos:F,getScrollPos:L,getViewportSize:function(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}},getWinSize:$,hideElement:P,isVisible:function(t){return"none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight},mask:H,showElement:N,showTimeSpanPicker:t=>new Tt(t).open(),slideDown:function(t,e,i){t.style.removeProperty("display");let s=window.getComputedStyle(t).display;"none"===s&&(s="block"),t.style.display=s;let n=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=n+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},slideUp:function(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)},toggleVisibility:function(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),P(t),N(e,i.display),i.complete&&i.complete()},wrapInner:function(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}}); /*! * EasyData.JS CRUD - * Copyright 2023 Korzh.com + * Copyright 2024 Korzh.com * Licensed under MIT !*/ /*! @@ -31,7 +31,7 @@ var easydata=function(t){"use strict"; !*/!function(t){t[t.Unknown=0]="Unknown",t[t.String=1]="String",t[t.Byte=2]="Byte",t[t.Word=3]="Word",t[t.Int32=4]="Int32",t[t.Int64=5]="Int64",t[t.Bool=6]="Bool",t[t.Float=7]="Float",t[t.Currency=8]="Currency",t[t.BCD=9]="BCD",t[t.Date=10]="Date",t[t.Time=11]="Time",t[t.DateTime=12]="DateTime",t[t.Autoinc=13]="Autoinc",t[t.Memo=14]="Memo",t[t.Blob=15]="Blob",t[t.FixedChar=16]="FixedChar",t[t.Guid=17]="Guid",t[t.Geometry=18]="Geometry",t[t.Geography=19]="Geography"}(Et||(Et={})),function(t){t[t.Data=0]="Data",t[t.Virtual=1]="Virtual",t[t.Lookup=2]="Lookup"}(xt||(xt={}));const St="Unknown",Mt="EDIT",Rt="DATETIME";var Ot,At,kt,Pt,Nt;!function(t){t.Trace="TRACE",t.Options="OPTIONS",t.Get="GET",t.Put="PUT",t.Post="POST",t.Delete="DELETE"}(Ot||(Ot={}));let Lt=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),s=t.shift(),n=t.join(": ");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(t){t.getAllDataTypes=function(){return Object.values(Et).filter((t=>"number"==typeof t))},t.getDateDataTypes=function(){return[Et.Time,Et.Date,Et.DateTime]},t.getStringDataTypes=function(){return[Et.String,Et.Memo,Et.FixedChar]};const e=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Float,Et.Currency,Et.Autoinc];t.getNumericDataTypes=function(){return e};const i=[Et.Byte,Et.Word,Et.Int32,Et.Int64,Et.Autoinc];function s(t,e,i){e||(e={});for(let a of i)if(a)for(let i in a)if(a.hasOwnProperty(i)){let o=a[i];null!==o&&"object"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=n(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),s(t,e[i],[o])):e[i]=o}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},t.isObject=function(t){return null!==t&&("function"==typeof t||"object"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==Et.Unknown||e==Et.Unknown||t==e||t==Et.Date&&e==Et.DateTime||t==Et.DateTime&&e==Et.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a="0123456789abcdefghijklmnopqrstuvwxyz";function o(t,e){const i=t.length;if(i>e){let s=i/e,n="";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}t.generateId=function(t){t||(t="easy");let e=t.length>4?function(t,e){let i=t.split("-"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a="";for(let t=0;t0&&(e+="-");var i=a[r(0,36)]+a[r(0,36)]+a[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i="",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),s=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),n=i.split("-"),a=s.indexOf("MM"),o=s.indexOf("dd"),r=s.indexOf("yyyy"),h=s.indexOf("HH"),d=s.indexOf("mm"),c=s.indexOf("ss"),u=new Date;try{const t=r>-1&&r-1&&a11)throw"";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw"";const s=h>-1&&h23)throw"";const g=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(":");try{const t=e.length>0?l(e[0]):0;if(t>23)throw"";const i=e.length>1?l(e[1]):0;if(i>59)throw"";const s=e.length>1?l(e[1]):0;if(s>59)throw"";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(At||(At={}));class Ft{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class $t extends Error{constructor(t,e){super(e),this.status=t}}class Bt{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(Ot.Get,t,null,e)}post(t,e,i){return this.send(Ot.Post,t,e,i)}put(t,e,i){return this.send(Ot.Put,t,e,i)}delete(t,e,i){return this.send(Ot.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||"json",a=s.contentType||"form-data"!==n?"application/json":null;i&&"form-data"!=n&&this.customPayload&&(i.data=At.assignDeep(i.data||{},this.customPayload));const o=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};a&&(r.headers["Content-Type"]=a);const l=new Lt(o,r);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const h=l.data&&"string"!=typeof l.data&&"json"==n?JSON.stringify(l.data):l.data;return l.open(),new Ft(l,new Promise(((t,i)=>{s.responseType&&(o.responseType=s.responseType),o.onerror=t=>{i(new $t(o.status,o.responseText))},o.onreadystatechange=()=>{if(4!=o.readyState)return;const s=o.getResponseHeader("Content-Type")||"",n=o.status;if(0===n)i(new $t(n,"Network error or the request was aborted"));else if(n>=200&&n<400){const e="arraybuffer"===o.responseType||"blob"===o.responseType?o.response:0==s.indexOf("application/json")?JSON.parse(o.responseText):o.responseText;this._responseBody=e,this.onResponse&&this.onResponse(o),t(e)}else("arraybuffer"===o.responseType||"blob"===o.responseType?Bt.decodeArrayBuffer(o.response):Promise.resolve(o.responseText)).then((t=>{const a=0==s.indexOf("application/json")?JSON.parse(t):t;this._responseBody=a;const o=a.message||(404==n?`No such endpoint: ${e}`:a);i(new $t(n,o))}))},o.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(t){let e,i={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},s={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:i},n={"en-US":s};const a=[];function o(t){for(const e of a)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?At.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=At.assignDeep({},s.texts)),e.localeId=t}function h(){return e.settings}function d(t){e.settings||(e.settings=At.assignDeep({},i)),e.settings=At.assignDeep(e.settings,t)}function c(t,i){o(i);let a=e;t&&(i.localeId||(i.localeId=t),a=n[t],a||(a=At.assignDeep({},s),n[t]=a)),At.assignDeep(a,i)}t.addMapper=function(t){a.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s="";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t},t.getLongMonthName=function(t){const e=h();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t},t.getShortWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.getLongWeekDayName=function(t){const e=h();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t},t.updateLocaleSettings=d,t.updateLocaleTexts=function(t){"object"==typeof t?(o({localeId:e.localeId,texts:t}),At.assignDeep(e.texts,t)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=At.assignDeep({},t,i.texts)}e.texts=At.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=At.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:"numeric",month:"numeric",day:"numeric"}),n=i.toLocaleTimeString(t,{hour:"numeric",minute:"numeric",second:"numeric"});let a=s.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),o=n.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");e.settings||(e.settings={}),d({shortDateFormat:a,shortTimeFormat:o})}("object"==typeof navigator?navigator.language:void 0))};const u=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function g(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,a=e.getDate(),o=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),h=o%12||12,d=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?"0"+n:n.toString(),M:n.toString(),dd:a<10?"0"+a:a.toString(),d:a.toString(),HH:o<10?"0"+o:o.toString(),H:o.toString(),hh:h<10?"0"+h:h.toString(),h:h.toString(),tt:d?"PM":"AM",mm:r<10?"0"+r:r.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function p(t){const e=h();let i;switch(t){case Et.Date:i=e.shortDateFormat;break;case Et.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+" "+e.shortTimeFormat}return i}function m(t){const e=h();let i;switch(t){case Et.Date:i=e.longDateFormat;break;case Et.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+" "+e.longTimeFormat}return i}t.dateTimeToStr=g,t.dateTimeToStrEx=function(t,e,i){return i?"d"==i?i=p(Et.Date):"D"==i?i=m(Et.Date):"f"==i?i=p(Et.DateTime):"F"==i&&(i=m(Et.DateTime)):i=p(e),g(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if("S"===s)return function(e,i){if(!f[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if(["D","F","C"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=h(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:s};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:s};default:return{style:"decimal",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s="",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);"#"===a||"0"===a?n>=0?(s+=i.charAt(n),n--):"0"===a&&(s+=0):s+=a}return s.split("").reverse().join("")}(Math.trunc(e),i)}const n=h();return s=s||n.decimalSeparator,e.toString().replace(".",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const s=i.slice(1).split("|");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(kt||(kt={}));class Ht{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class _t{constructor(t){this.id="",this.caption="{Unrecognized attribute}",this.dataType=Et.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=t,this.kind=xt.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=At.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=At.getIfDefined(e.nul,this.isNullable),this.isEditable=At.getIfDefined(e.ied,this.isEditable),this.showOnView=At.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=At.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=At.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=At.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class Wt{constructor(){this.id="",this.tag=St,this.resType=Et.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class Vt{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new Ht(t)}createEntityAttr(t){return new _t(t)}createValueEditor(){return new Wt}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(t){if(this.id=t.id,this.name=t.name,this.version=t.vers,this.editors=new Array,t.editors)for(let e=0;et.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let a=null;if(t.attributes){let n=t.attributes.length;for(let o=0;o0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(h),a.sort(h)),l=e.attrPlacement&&0!=e.attrPlacement?a.concat(n):n.concat(a),2==e.attrPlacement&&l.sort(h),e.includeRootData?(s=kt.getText("Entities",t.name),s||(s=t.caption),{id:t.name,text:s,items:l}):l}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let t;t=this.addOrUpdateValueEditor("_DTE",Mt,Et.String),t.defValue="",this.addOrUpdateValueEditor("_DPDE",Rt,Et.DateTime),this.addOrUpdateValueEditor("_DPTE",Rt,Et.DateTime)}addOrUpdateValueEditor(t,e,i){let s=At.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return"";i=i||" ";let n="";if(t.caption&&!s&&(n=kt.getText("Entities",t.caption)||t.caption),t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((t=>[Et.Date,Et.DateTime,Et.Time].indexOf(t.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(At.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class zt{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}let Ut=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new Yt,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let a=this.cachedRows.length,o=s-a;return o(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof zt?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),a=this.columns.getIndex(t.id);i[a]=e.indexOf(a)>=0?this.mapDate(n,t.type):n})),new zt(this._columns,i)}mapDate(t,e){if(t){let i=new Date(t);return isNaN(i.getTime())&&e==Et.Time&&(i=At.strToTime(t)),i}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new zt(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function jt(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}(Nt||(Nt={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp("{{"+t+"}}","g");i=i.replace(s,e[t])}return i},kt.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class qt{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue="",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new Ut({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>At.isNumericType(t.type)||At.getStringDataTypes().indexOf(t.type)>=0)),a=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())a(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}} /*! * EasyData.JS UI - * Copyright 2023 Korzh.com + * Copyright 2020 - 2024 Korzh.com * Licensed under MIT !*/ /*! diff --git a/easydata.js/packs/crud/lib/easydata.min.js.map b/easydata.js/packs/crud/lib/easydata.min.js.map index 38af8867..5b00fa57 100644 --- a/easydata.js/packs/crud/lib/easydata.min.js.map +++ b/easydata.js/packs/crud/lib/easydata.min.js.map @@ -1 +1 @@ -{"version":3,"file":"easydata.min.js","sources":["../../core/dist/easydata.core.es.js","../../ui/dist/easydata.ui.es.js","../dist/easydata.crud.es.js"],"sourcesContent":["/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const s={Unknown:\"Unknown\",Edit:\"EDIT\",DateTime:\"DATETIME\",List:\"LIST\",CustomList:\"CUSTOMLIST\",File:\"FILE\"};class i{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;u.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let s=e.getDay();return s=0==s?6:s-1,e.setDate(e.getDate()-s),e}FirstDayOfPrevWeek(t){let e=new Date,s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()-s),e}FirstDayOfNextWeek(t){let e=new Date;var s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()+s),e}}var r,o,a,h,l,u=new n;function c(t){u=t}!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));class d{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const s of t){const t=s.split(\": \"),i=t.shift(),n=t.join(\": \");e[i]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return s};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,s){e||(e={});for(let i of s)if(i)for(let s in i)if(i.hasOwnProperty(s)){let o=i[s];null!==o&&\"object\"==typeof o?t.has(o)?e[s]=t.get(o):Array.isArray(o)?(e[s]=r(o),t.set(o,e[s])):(void 0!==e[s]&&null!=e[s]||(e[s]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[s]),n(t,e[s],[o])):e[s]=o}return e}function r(t){let e=[];for(let s of t)e.push(s);return e}e.assign=function(t,...e){for(let s=0;s=t.length)throw\"Index out of bounds: \"+e;s>=t.length&&(s=t.length-1);let i=t.splice(e,1)[0];t.splice(s,0,i)},e.removeArrayItem=function(t,e){let s=t.indexOf(e);if(-1!=s)return t.splice(s,1)[0]},e.insertArrayItem=function(t,e,s){t.splice(e,0,s)},e.fillArray=function(t,e,s=0,i){let n=t.length>>>0;var r=s>>0,o=r<0?Math.max(n+r,0):Math.min(r,n),a=void 0===i?n:i>>0;let h=a<0?Math.max(n+a,0):Math.min(a,n);for(;oi&&(r=i-n-10,t+r<0&&(r=10-t)),r},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return s.indexOf(t)>=0},e.isIntType=function(t){return i.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,s){return void 0===e||void 0===s||e==t.Unknown||s==t.Unknown||e==s||e==t.Date&&s==t.DateTime||e==t.DateTime&&s==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const s=t.length;if(s>e){let i=s/e,n=\"\";n+=t[0];let r,o=i;for(let e=1;eo&&(n+=r,o+=i);return n}return t}function h(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let s=t.split(\"-\"),i=1,n=e;s.length0&&(e+=\"-\");var s=o[h(0,o.length)]+o[h(0,o.length)]+o[h(0,o.length)],i=h(0,1e4);return e+s+function(t,e=36){var s=\"\",i=t;do{s=o[i%e]+s,i=Math.floor(i/=e)}while(i>0);return s}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-i)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const s=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),i=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=s.split(\"-\"),r=i.indexOf(\"MM\"),o=i.indexOf(\"dd\"),a=i.indexOf(\"yyyy\"),h=i.indexOf(\"HH\"),u=i.indexOf(\"mm\"),c=i.indexOf(\"ss\"),d=new Date;try{const t=a>-1&&a-1&&r11)throw\"\";const s=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const i=h>-1&&h23)throw\"\";const g=u>-1&&u59)throw\"\";const f=c>-1&&c59)throw\"\";return new Date(t,e,s,i,g,f)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";return new Date(0,0,0,t,s,i)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));class g{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class f extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,s){return this.send(r.Post,t,e,s)}put(t,e,s){return this.send(r.Put,t,e,s)}delete(t,e,s){return this.send(r.Delete,t,e,s)}send(t,e,s,i){const n=(i=i||{}).dataType||\"json\",r=i.contentType||\"form-data\"!==n?\"application/json\":null;s&&\"form-data\"!=n&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),i.headers||{}),queryParams:i.queryParams||{},data:s};r&&(h.headers[\"Content-Type\"]=r);const l=new d(a,h);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const u=l.data&&\"string\"!=typeof l.data&&\"json\"==n?JSON.stringify(l.data):l.data;return l.open(),new g(l,new Promise(((t,s)=>{i.responseType&&(a.responseType=i.responseType),a.onerror=t=>{s(new f(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const i=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)s(new f(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==i.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else{(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const r=0==i.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=r;const o=r.message||(404==n?`No such endpoint: ${e}`:r);s(new f(n,o))}))}},a.send(u)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((s=>{e.onloadend=function(){e.readyState==FileReader.DONE&&s(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let s,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},r={\"en-US\":n};const a=[];function h(t){for(const e of a)e(t)}function l(){return s.localeId}function u(t){const e=r[t];e?o.assignDeep(s,e):(s.englishName=t,s.displayName=t,s.texts=o.assignDeep({},n.texts)),s.localeId=t}function c(){return s.settings}function d(t){s.settings||(s.settings=o.assignDeep({},i)),s.settings=o.assignDeep(s.settings,t)}function g(t,e){h(e);let i=s;t&&(e.localeId||(e.localeId=t),i=r[t],i||(i=o.assignDeep({},n),r[t]=i)),o.assignDeep(i,e)}function f(){!function(t){const e=new Date(2020,5,7,19,34,56,88),i=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let r=i.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");s.settings||(s.settings={}),d({shortDateFormat:r,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in r)t.push({locale:e,englishName:r[e].englishName,displayName:r[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=l,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),u(t)},e.setCurrentLocale=u,e.getText=function(...t){let e=s.texts,i=\"\";if(t&&t.length){const s=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=d,e.updateLocaleTexts=function(t){\"object\"==typeof t?(h({localeId:s.localeId,texts:t}),o.assignDeep(s.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in r){let s=r[e];s.texts=o.assignDeep({},t,s.texts)}s.texts=o.assignDeep({},t,s.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){s||(s=o.assignDeep({},n),f())};const m=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(t,s){const i=t.getFullYear().toString(),n=t.getMonth()+1,r=t.getDate(),o=t.getHours(),a=t.getMinutes(),h=t.getSeconds(),l=o%12||12,u=o>11,c={yyyy:i,yy:i.substring(i.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:r<10?\"0\"+r:r.toString(),d:r.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:l<10?\"0\"+l:l.toString(),h:l.toString(),tt:u?\"PM\":\"AM\",mm:a<10?\"0\"+a:a.toString(),ss:h<10?\"0\"+h:h.toString()};return s.replace(m,((t,e)=>e||c[t]))}function y(e){const s=c();let i;switch(e){case t.Date:i=s.shortDateFormat;break;case t.Time:i=s.shortTimeFormat;break;default:i=s.shortDateFormat+\" \"+s.shortTimeFormat}return i}function D(e){const s=c();let i;switch(e){case t.Date:i=s.longDateFormat;break;case t.Time:i=s.longTimeFormat;break;default:i=s.longDateFormat+\" \"+s.longTimeFormat}return i}e.dateTimeToStr=p,e.dateTimeToStrEx=function(e,s,i){return i?\"d\"==i?i=y(t.Date):\"D\"==i?i=D(t.Date):\"f\"==i?i=y(t.DateTime):\"F\"==i&&(i=D(t.DateTime)):i=y(s),p(e,i)},e.numberToStr=function(t,s,i){if(s&&s.length>0){const i=s.charAt(0).toUpperCase();if(\"S\"===i)return function(t,s){if(!w[s]){const t=s.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(w[s]={},t.length>0)if(t[0].length>1)for(const e of t)w[s][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{w[s][e]=t[0]}))}const i=w[s];if(void 0!==i[t]){const s=i[t];return e.getText(s)||s}return t.toString()}(t,s.slice(1));if([\"D\",\"F\",\"C\"].indexOf(i)>=0){const e=l();return t.toLocaleString(e,function(t){const e=c(),s=t[0].toUpperCase(),i=t.length>1?Number.parseInt(t.slice(1)):\"D\"==s?1:2;switch(s){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:i};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:i};default:return{style:\"decimal\",minimumFractionDigits:i,maximumFractionDigits:i}}}(s))}return function(t,e){let s=t.toString(),i=\"\",n=s.length-1;for(let t=e.length-1;t>=0;t--){const r=e.charAt(t);\"#\"===r||\"0\"===r?n>=0?(i+=s.charAt(n),n--):\"0\"===r&&(i+=0):i+=r}return i.split(\"\").reverse().join(\"\")}(Math.trunc(t),s)}const n=c();return i=i||n.decimalSeparator,t.toString().replace(\".\",i)},e.booleanToStr=function(t,s){if(s&&s.length>0){if(\"S\"===s.charAt(0).toUpperCase()){const i=s.slice(1).split(\"|\");if(i.length>1){const s=i[t?1:0];return e.getText(s)||s}}}return`${t}`};const w={}}(a||(a={}));class p{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let s=0;s{if(e&&e(n,s),n.attributes){let e=n.attributes.length;for(let i=0;it.isPrimaryKey))}}class y{constructor(s){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=s,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const s=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&s?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=s.Unknown,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let s of this.values)t.indexOf(s.id)>=0&&(e+=s.text+\",\");else for(let s of this.values)s.id===t&&(e+=s.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class w{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let s=this.getAttributeById(t);if(s){if(void 0===s[e])throw\"No such property: \"+e;return!!s[e]||!!s.lookupAttr&&(t=s.lookupAttr,s=this.getAttributeById(t),s&&s[e])}return!1}getEntityAttrById(t,e){let s,i;if(t.attributes){let i=t.attributes.length;for(s=0;s0&&i.push(t)}}let r=null;if(t.attributes){let n=t.attributes.length;for(let h=0;h0&&n.push(t)}}let l=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),r.sort(c)),u=e.attrPlacement&&0!=e.attrPlacement?r.concat(n):n.concat(r),2==e.attrPlacement&&u.sort(c),e.includeRootData?(i=a.getText(\"Entities\",t.name),i||(i=t.caption),{id:t.name,text:i,items:u}):u}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s.Edit,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",s.DateTime,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",s.DateTime,t.DateTime)}addOrUpdateValueEditor(t,e,s){let i=o.findItemById(this.editors,t);return i||(i=this.createValueEditor(),i.id=t,this.editors.push(i)),i.tag=e,i.resType=s,i}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,s,i){if(!t)return\"\";s=s||\" \";let n=\"\";if(t.caption&&!i){let e=a.getText(\"Entities\",t.caption);n=e||t.caption}if(t.attributes){let s=t.attributes.length;for(let i=0;i(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('\"drop()\" method is obsolete. Use \"clear()\" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups){if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0}for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const s=!this.caseSensitiveGroups;let i={};if(t)for(const n of t.columns){let t=e.getValue(n);s&&\"string\"==typeof t&&(t=t.toLowerCase()),i[n]=t}return i}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){if(t instanceof Date)return t.getTime()===e.getTime();return(\"string\"==typeof t?t.toLowerCase():t)===(\"string\"==typeof e?e.toLowerCase():e)}}!function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(h||(h={}));class x{constructor(e){if(!e)throw Error(\"Options are required\");if(!e.id)throw Error(\"Field Id is required\");if(!e.label)throw Error(\"Label is required\");this.id=e.id,this.type=o.getIfDefined(e.type,t.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class E{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let s;s=e instanceof x?e:new x(e);const i=this.items.length;return this.items.push(s),this.mapper[s.id]=i,[t.Date,t.DateTime,t.Time].indexOf(s.type)>=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&s!=e&&(o.moveArrayItem(this.items,s,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(s,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class b{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let s;if(\"string\"==typeof t){if(s=this.columns.getIndex(t),void 0===s)throw new RangeError(`No column with id '${t}'`)}else s=t;if(s>=this.values.length)throw new RangeError(\"Out of range: \"+s);this.values[s]=e}}class C{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new E,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,s=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),s=t.pageSize):(e=t.offset,s=t.limit));let i=e+s;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);i>this.total&&(i=this.total)}if(this.isInMemory&&i>this.cachedRows.length&&(i=this.cachedRows.length),i<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,i));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${i}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let r=this.cachedRows.length,o=i-r;o{if(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),i>this.cachedRows.length&&(i=this.cachedRows.length),this.elasticChunks){t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),s=new Array(this._columns.count),i=t instanceof b?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=i(t.id),r=this.columns.getIndex(t.id);s[r]=e.indexOf(r)>=0?this.mapDate(n,t.type):n})),new b(this._columns,s)}mapDate(e,s){if(e){let i=new Date(e);return isNaN(i.getTime())&&s==t.Time&&(i=o.strToTime(e)),i}return null}addRow(t){let e;if(Array.isArray(t)){let s=t;const i=this._columns.getDateColumnIndexes();if(i.length>0)for(const t of i)s[t]&&(s[t]=this.mapDate(s[t],this._columns.get(t).type));e=new b(this._columns,s)}else e=this.createRow(t);this.cachedRows.push(e);const s=this.getCachedCount();return s>this.total&&(this.total=s),e}getCachedRows(){return this.cachedRows}totalIsKnown(){if(this.elasticChunks){return this.getCachedCount()===this.total}return!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class I{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class A{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let s=this.getEventRecByType(t);const i={id:I.newGuid(),callback:e};return s?s.eventCallbacks.push(i):(s={type:t,eventCallbacks:new Array(i)},this.events.push(s)),i.id}unsubscribe(t,e){let s=this.getEventRecByType(t);if(s){let t=-1;for(t=0;t=0&&s.eventCallbacks.splice(t,1)}}fire(t,e,s=0,i=!1){if(this.silentMode&&!i)return;let n=this.getEventRecByType(t);if(n){const i={type:t,source:this.source,data:e};let r=()=>{for(let t of n.eventCallbacks)t.callback(i)};s>0?setTimeout(r,s):r()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function v(t,e){return t.repeat(e)}function F(t){return t.split(\"\").reverse().join(\"\")}function S(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function M(t,e){let s=t;return null!=s&&s.length>0?(\"/\"!=s.charAt(s.length-1)&&(s+=\"/\"),s+=e):s=e,s}!function(t){t.renderLiquidTemplate=function(t,e){let s=t;if(e)for(let t in e){const i=new RegExp(\"{{\"+t+\"}}\",\"g\");s=s.replace(i,e[t])}return s}}(l||(l={})),a.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});export{T as AggregationSettings,h as ColumnAlignment,x as DataColumn,E as DataColumnList,b as DataRow,t as DataType,C as EasyDataTable,I as EasyGuid,s as EditorTag,e as EntityAttrKind,A as EventEmitter,m as HttpClient,r as HttpMethod,d as HttpRequest,f as HttpResponseError,w as MetaData,p as MetaEntity,y as MetaEntityAttr,n as SpecialDatesResolver,i as TimeValue,D as ValueEditor,M as combinePath,a as i18n,l as liquid,c as registerSpecialDatesResolver,v as repeatString,F as reverseString,S as strEndsWith,o as utils};\n//# sourceMappingURL=easydata.core.es.js.map\n","/*!\n * EasyData.JS UI\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e,i,s,n,a,o,r;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(i||(i={})),function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&\"object\"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),a=s.indexOf(\"MM\"),o=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&a11)throw\"\";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const g=h>-1&&h59)throw\"\";const p=c>-1&&c59)throw\"\";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(s||(s={})),function(e){let i,n={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},a={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:n},o={\"en-US\":a};const r=[];function l(t){for(const e of r)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?s.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=s.assignDeep({},a.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=s.assignDeep({},n)),i.settings=s.assignDeep(i.settings,t)}function g(t,e){l(e);let n=i;t&&(e.localeId||(e.localeId=t),n=o[t],n||(n=s.assignDeep({},a),o[t]=n)),s.assignDeep(n,e)}e.addMapper=function(t){r.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(l({localeId:i.localeId,texts:t}),s.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=s.assignDeep({},t,i.texts)}i.texts=s.assignDeep({},t,i.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){i||(i=s.assignDeep({},a),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let a=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0))};const p=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,a=t.getDate(),o=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=o%12||12,h=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:a<10?\"0\"+a:a.toString(),d:a.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function D(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=D(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=D(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!y[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(y[i]={},t.length>0)if(t[0].length>1)for(const e of t)y[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{y[i][e]=t[0]}))}const s=y[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);\"#\"===a||\"0\"===a?n>=0?(s+=i.charAt(n),n--):\"0\"===a&&(s+=0):s+=a}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const y={}}(n||(n={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(a||(a={}));class l{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class d{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class h{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:d.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function c(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function u(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s}function g(t,e){t.className=t.className?t.className+\" \"+e:e}function p(t){t.style.display=\"none\"}function m(t,e){e||(e=\"\"),t.style.display=e}function f(t,e,i){i||(i={}),i.display||(i.display=\"\"),i.duration||(i.duration=200),p(t),m(e,i.display),i.complete&&i.complete()}function D(t){return\"none\"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function y(t){var e;return\"function\"==typeof Event?e=new Event(t):(e=document.createEvent(\"Event\")).initEvent(t,!0,!0),e}function v(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function w(){if(r.IsIE())return b();return{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function C(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function T(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=C(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+o-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function b(){return{width:window.innerWidth,height:window.innerHeight}}function E(t,e,i){t.style.removeProperty(\"display\");let s=window.getComputedStyle(t).display;\"none\"===s&&(s=\"block\"),t.style.display=s;let n=t.offsetHeight;t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",t.offsetHeight,t.style.boxSizing=\"border-box\",t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.height=n+\"px\",t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),window.setTimeout((()=>{t.style.removeProperty(\"height\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}function x(t,e,i){t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.boxSizing=\"border-box\",t.style.height=t.offsetHeight+\"px\",t.offsetHeight,t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",window.setTimeout((()=>{t.style.display=\"none\",t.style.removeProperty(\"height\"),t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}(o||(o={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},n.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(r||(r={}));const S=\"eqjs\",M=\"eqjs-mobile\";function I(t,e){const i={9:\"[0-9]\",a:\"[a-z]\"},s=e.split(\"\"),n=e=>{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(a?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=a};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):\"_\")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);a.push(d?l:\"_\"),d&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}class R{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=L(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new H(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=L(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new $(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},a=t=>{k&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new H(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",o),document.addEventListener(\"touchend\",o)};e.addEventListener(\"mousedown\",a),e.addEventListener(\"touchstart\",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new $(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===N.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new $(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",o),document.removeEventListener(\"touchend\",o)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)s.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case N.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case N.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case N.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case N.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case N.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==N.Forbid&&(this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=T(t),s=new H(e);return!(s.yi.y+t.offsetHeight)&&!(s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=T(t),s=new H(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&s.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-left`)},q=(t,e,i,s)=>{let a=(t||\"\").toString();\"number\"==typeof t&&(a=e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(V,((e,i)=>n.numberToStr(t,i))):t.toLocaleString()),i.innerText=a,i.title=a,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-right`)},K=(e,i,s,a)=>{const o=\"[object Date]\"===Object.prototype.toString.call(e);let r=(e||\"\").toString();if(o)if(i.dataColumn&&i.dataColumn.displayFormat&&V.test(i.dataColumn.displayFormat))r=i.dataColumn.displayFormat.replace(V,((t,s)=>n.dateTimeToStrEx(e,i.type,s)));else{const s=n.getCurrentLocale(),a={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(i.type){case t.Date:r=e.toLocaleDateString(s);break;case t.Time:r=e.toLocaleTimeString(s,a);break;case t.DateTime:r=`${e.toLocaleDateString(s)} ${e.toLocaleTimeString(s,a)}`}}s.innerText=r,s.title=r,i.align==B.NONE&&s.classList.add(`${z}-cell-value-align-right`)},Q=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(V,((e,i)=>n.booleanToStr(t,i)));return j(s,e,i)}i.classList.add(`${z}-cell-value-bool`),i.classList.add(`${z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class J{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",j),this.setDefaultRenderer(U.STRING,j),this.registerRenderer(\"NumberDefault\",q),this.setDefaultRenderer(U.NUMBER,q),this.registerRenderer(\"DateTimeDefault\",K),this.setDefaultRenderer(U.DATETIME,K),this.registerRenderer(\"BoolDefault\",Q),this.setDefaultRenderer(U.BOOL,Q)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[U[e]]}getDefaultRendererByType(t){return this.defaultRenderers[U[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[U[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(e){switch(e){case t.Autoinc:case t.Byte:case t.Word:case t.Currency:case t.Float:case t.Int32:case t.Int64:return U.NUMBER;case t.Date:case t.DateTime:case t.Time:return U.DATETIME;case t.Bool:return U.BOOL;default:return U.STRING}}}class X{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:Y.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=L(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(L(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=s.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new h(this),this.cellRendererStore=new J(t),this.columns=new G(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=s.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=s.assignDeep({},this.defaultDataGridOptions.paging,t.paging),n=s.assign({},this.defaultDataGridOptions,t);return n.columnWidths=e,n.paging=i,n}processColumnWidthsOptions(){const e=this.options.columnWidths;if(!e)return;s.getStringDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.stringColumns),e[t])})),s.getNumericDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.numberColumns),e[t])})),e[t.Bool]=Object.assign(Object.assign({},e.boolColumns),e[t.Bool]),s.getDateDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.dateColumns),e[t])}));const i=[...s.getStringDataTypes(),...s.getNumericDataTypes(),...s.getDateDataTypes(),t.Bool];s.getAllDataTypes().forEach((t=>{t in i||(e[t]=Object.assign(Object.assign({},e.otherColumns),e[t]))})),e[t.Unknown]=e.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),s.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&_.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${S}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=N.Forbid,this.slot.classList.remove(`${S}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==Y.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=L(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=L(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=L(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=L(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&L(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();L(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=L(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&L(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&_.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=N.Allow}}),s}renderBody(){this.bodyDiv=L(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=L(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=L(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{L(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new l(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a=\"\";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=\". . . . . .\"),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";if(t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u){d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,a[i.COUNT_FIELD_NAME])}}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=L(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=L(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let a=this.dataTable.getTotal().toString();if(this.dataTable.elasticChunks){this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(a=\"?\")}e.innerHTML=n.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${a}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=L(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==B.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==B.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==B.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(L(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(U.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!a){o&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let a=s(i-1,\"«\",1==i,!0,!1);n.appendChild(a),a=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const a=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],r=new Set(o);r.add(this.options.paging.pageSize||20),Array.from(r).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),a.appendChild(e)})),a.value=(this.pagination.pageSize||20).toString(),s.appendChild(a),a.addEventListener(\"change\",e);const l=document.createElement(\"div\");l.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(l);const d=document.createElement(\"span\");d.innerText=n.getText(\"GridItemsPerPage\"),l.appendChild(d),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?L(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():L(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=T(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let d=0;if(r>0)e+=r,o.width=r,l.forEach((t=>{t.parentElement.style.width=`${r}px`})),n[a].style.width=`${r}px`;else if(0==l.length&&(n[a].style.width=null,n[a].style.whiteSpace=\"nowrap\"),d=n[a].offsetWidth,l.length>0){l.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>d&&(d=e)})),d+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;d>t&&(d=t),d{t.parentElement.style.width=`${d}px`})),n[a].style.width=`${d}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=d)}else e+=d;a++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class Z{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class tt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class et extends Z{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),L(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=L(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=L(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=s.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return L(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{L(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=n.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class nt extends tt{render(){const t=L(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(n.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(n.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(n.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new et(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new st(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body),i=T(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var at;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(at||(at={}));const ot=\"kdlg\";class rt{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${ot}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${ot}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new lt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new ht(t,this)}untrack(t){const e=rt.openDialogs.indexOf(t);e>=0&&rt.openDialogs.splice(e,1)}track(t){rt.openDialogs.push(t)}openProgress(t){const e=new dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(rt.openDialogs)}closeAllDialogs(){for(const t of Array.from(rt.openDialogs))t.close()}}rt.openDialogs=[];class lt{constructor(t,e){this.options=t,this.submitHandler=t=>(!this.options.onSubmit||!1!==this.options.onSubmit(this,t))&&(this.destroy(),!0),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=s.generateId(\"dlg\"),this.data=e,this.slot=L(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${ot}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${ot}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${ot}-header`).addChild(\"p\",(e=>e.addClass(`${ot}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${ot}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${ot}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${ot}-body`).toDOM(),\"string\"==typeof t.body){const s=o.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==at.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${ot}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||n.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||n.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),L(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${ot}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=L(\"div\").addClass(`${ot}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${ot}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${ot}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class ht{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var ct,ut;n.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(ct||(ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(ut||(ut={}));class gt extends lt{constructor(t){super({title:t.title||\"Select a period\",body:\"\",submitButtonText:t.submitButtonText||\"OK\",cancelButtonText:t.cancelButtonText||\"Cancel\",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{\"function\"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=L(\"div\").addClass(\"tsp__container\").addChild(\"div\",(t=>{t.addClass(\"tsp__intervals\").addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Week\").on(\"click\",(()=>{this.select(ct.THIS_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Week\").on(\"click\",(()=>{this.select(ct.LAST_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Month\").on(\"click\",(()=>{this.select(ct.THIS_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"First Month\").on(\"click\",(()=>{this.select(ct.FIRST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Month\").on(\"click\",(()=>{this.select(ct.LAST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Year\").on(\"click\",(()=>{this.select(ct.THIS_YEAR)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 1\").on(\"click\",(()=>{this.select(ct.QUARTER_1)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 2\").on(\"click\",(()=>{this.select(ct.QUARTER_2)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 3\").on(\"click\",(()=>{this.select(ct.QUARTER_3)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 4\").on(\"click\",(()=>{this.select(ct.QUARTER_4)}))))})).addChild(\"div\",(t=>{t.addClass(\"tsp__form\").addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Start\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar1=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Finish\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar2=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?\"from\":\"to\";const a=new Date;switch(e){case ut.TODAY:s=a;break;case ut.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case ut.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case ut.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case ut.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case ut.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case ut.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case ut.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case ut.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=ut.UNDEF,\"from\"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case ct.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case ct.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case ct.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case ct.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case ct.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case ct.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case ct.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case ct.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\\${{${e}}}`;return n.dateTimeToStr(t,n.getLocaleSettings().editDateFormat)}}const pt=t=>new gt(t).open(),mt=new rt;export{Y as AutoResizeColumns,Z as Calendar,U as CellRendererType,V as DFMT_REGEX,tt as DateTimePicker,et as DefaultCalendar,nt as DefaultDateTimePicker,lt as DefaultDialog,rt as DefaultDialogService,ht as DefaultDialogSet,dt as DefaultProgressDialog,st as DefaultTimePicker,at as DialogFooterAlignment,R as DomElementBuilder,P as DomInputElementBuilder,A as DomSelectElementBuilder,O as DomTextAreaElementBuilder,F as DragManager,N as DropEffect,X as EasyGrid,$ as EqDragEvent,J as GridCellRendererStore,W as GridColumn,B as GridColumnAlign,G as GridColumnList,ut as JUMP_TO,ct as PRE_SELECT,it as TimePicker,gt as TimeSpanPicker,g as addCssClass,u as addElement,r as browserUtils,y as createBrowserEvent,mt as dialogs,L as domel,M as eqCssMobile,S as eqCssPrefix,_ as eqDragManager,w as getDocSize,T as getElementAbsolutePos,C as getScrollPos,v as getViewportSize,b as getWinSize,p as hideElement,D as isVisible,I as mask,m as showElement,pt as showTimeSpanPicker,E as slideDown,x as slideUp,f as toggleVisibility,c as wrapInner};\n//# sourceMappingURL=easydata.ui.es.js.map\n","/*!\n * EasyData.JS CRUD\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const i=\"Unknown\",s=\"EDIT\",n=\"DATETIME\",o=\"LIST\",a=\"FILE\";var r,l,d,h,c;!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const i of t){const t=i.split(\": \"),s=t.shift(),n=t.join(\": \");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||\"json\",o=s.contentType||\"form-data\"!==n?\"application/json\":null;i&&\"form-data\"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers[\"Content-Type\"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&\"string\"!=typeof d.data&&\"json\"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)i(new g(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==s.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a))}))},a.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let i,s={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:s},o={\"en-US\":n};const a=[];function r(t){for(const e of a)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t)}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts)}i.texts=l.assignDeep({},t,i.texts)},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e)},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const g=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=y(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!D[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const D={}}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=i,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=i,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+\",\");else for(let i of this.values)i.id===t&&(e+=i.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw\"No such property: \"+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText(\"Entities\",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",n,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",n,t.DateTime)}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return\"\";i=i||\" \";let n=\"\";if(t.caption&&!s){n=d.getText(\"Entities\",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class T{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function x(t,e){let i=t;return null!=i&&i.length>0?(\"/\"!=i.charAt(i.length-1)&&(i+=\"/\"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},d.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue=\"\",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue=\"\",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:\"__substring\",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split(\"||\").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}}\n/*!\n * EasyData.JS UI\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(I||(I={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(S||(S={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>\"number\"==typeof t))},t.getDateDataTypes=function(){return[I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return[I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}t.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),d=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=d>-1&&d23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(R||(R={})),function(t){let e,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},s={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},n={\"en-US\":s};const o=[];function a(t){for(const e of o)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t)}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i)}t.addMapper=function(t){o.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s=\"\";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){\"object\"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts)}e.texts=R.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=i.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const u=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+\" \"+e.shortTimeFormat}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+\" \"+e.longTimeFormat}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?\"d\"==i?i=g(I.Date):\"D\"==i?i=m(I.Date):\"f\"==i?i=g(I.DateTime):\"F\"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(e,i){if(!f[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(\".\",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(k||(k={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class L{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(o,i):o()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},k.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&o&&o(e)};function l(){return void 0!==n?n:a}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i)},t.onMobileModeChanged=function(t){o=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(O||(O={}));const B=\"eqjs\";class H{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(o?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=o};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):\"_\")}else e===a-1&&a--,o-1===e&&o--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);o.push(d?l:\"_\"),d&&a===s&&r++}else o.push(e),r===s&&r++,a===s&&a++})),t.value=o.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}(this.element,t),this}}class W extends H{constructor(t,e){super(t||\"select\",e)}addOption(t){const e=document.createElement(\"option\");return\"string\"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return\"div\"===t||t instanceof HTMLDivElement||\"span\"===t||t instanceof HTMLSpanElement||\"a\"===t||t instanceof HTMLAnchorElement||\"button\"===t||t instanceof HTMLButtonElement||\"img\"===t||t instanceof HTMLImageElement?new H(t,e):\"input\"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):\"textarea\"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):\"select\"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j=\"undefined\"!=typeof TouchEvent;var G;!function(t){t.None=\"none\",t.Allow=\"allow\",t.Forbid=\"forbid\"}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix=\"eqjs-drop\",this.DRAG_DISABLED_ATTR=\"drag-disabled\"}registerDraggableItem(t){const e=t.element;if(!e)throw Error(\"Element in draggle item is null or undefined\");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",a),document.addEventListener(\"touchend\",a)};e.addEventListener(\"mousedown\",o),e.addEventListener(\"touchstart\",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",a),document.removeEventListener(\"touchend\",a)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case G.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`)},st=(t,e,i,s)=>{let n=(t||\"\").toString();\"number\"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},nt=(t,e,i,s)=>{const n=\"[object Date]\"===Object.prototype.toString.call(t);let o=(t||\"\").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else{const i=k.getCurrentLocale(),s={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer(\"NumberDefault\",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer(\"DateTimeDefault\",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer(\"BoolDefault\",ot),this.setDefaultRenderer(et.BOOL,ot)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[I.Unknown]=t.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=G.Allow}}),s}renderBody(){this.bodyDiv=z(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=z(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{z(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o=\"\";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=\". . . . . .\"),n.appendChild(this.renderCell(t,i,o,n))}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=z(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n=\"?\"),e.innerHTML=k.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n))})),n}renderCell(t,e,i,s){const n=z(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,o,a)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!o){a&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let o=s(i-1,\"«\",1==i,!0,!1);n.appendChild(o),o=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener(\"change\",e);const r=document.createElement(\"div\");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement(\"span\");l.innerText=k.getText(\"GridItemsPerPage\"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?z(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():z(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace=\"nowrap\"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class lt{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class dt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return z(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class pt extends dt{render(){const t=z(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var gt;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(gt||(gt={}));const mt=\"kdlg\";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1)}track(t){ft.openDialogs.push(t)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close()}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=R.generateId(\"dlg\"),this.data=e,this.slot=z(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${mt}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild(\"p\",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${mt}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),\"string\"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||k.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||k.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=z(\"div\").addClass(`${mt}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${mt}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${mt}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(Ct||(Ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(wt||(wt={}));const Tt=\"yyyy-MM-dd\",bt=\"HH:mm\",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event(\"ed_set_location\"))};class It{}class St extends It{constructor(){super(),this.name=\"DateTime\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[d.getText(\"DateTimeError\")]}}return{successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(\".errors-block\")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll(\"input, select\"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if(\"checkbox\"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild(\"ul\"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll(\"input, select, textarea\"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(\".\")+1),s=this.context.getMetaData().getAttributeById(t.name);\"checkbox\"===t.type?n[e]=t.checked:\"file\"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(\",\")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML=\"\",this.html.querySelectorAll(\"input, select\").forEach((t=>{t.classList.remove(\"is-valid\"),t.classList.remove(\"is-invalid\")}))}markInputValid(t,e){t.classList.add(e?\"is-valid\":\"is-invalid\")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render()}render(){const t=O.IsIE()?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild(\"div\",(t=>{t.addClass(\"control\").addChild(\"input\",(t=>{this.filterInput=t.toDOM(),t.attr(\"placeholder\",d.getText(\"SearchInputPlaceholder\")).type(\"text\"),t.on(\"keydown\",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on(\"keyup\",this.inputKeyupHandler.bind(this))})),e||t.addClass(\"has-icons-right\").addChild(\"span\",(t=>{t.addClass(\"icon\").addClass(\"is-right\").addClass(\"is-clickable\").html(\"🗙\").on(\"click\",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||z(this.slot).addChild(\"button\",(t=>t.addClass(\"kfrm-button\").addText(d.getText(\"SearchBtn\")).on(\"click\",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value=\"\",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return(!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split(\"||\").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement(\"div\");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\";let r;z(t).addChild(\"div\",(t=>{t.addClass(a).addChild(\"input\",(t=>{r=t.toDOM(),t.attr(\"readonly\",\"\"),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():\"\")})),i||t.addChild(\"button\",(t=>t.addClass(\"kfrm-button\").attr(\"title\",d.getText(\"NavigationBtnTitle\")).addText(\"...\").on(\"click\",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"kfrm-field\").addChild(\"label\",(t=>t.addText(d.getText(\"LookupSelectedItem\")).toDOM())).addChild(\"div\",(t=>h=t.addText(\"None\").toDOM())))).addChild(\"div\",(t=>a=t.toDOM())).addChild(\"div\",(t=>t.addClass(\"kfrm-control\").addChild(\"div\",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(\".\")+1)])(t,e.id)}`)).join(\", \")};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(\".\")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity)})).catch((t=>{console.error(t)}))}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t)}))}});o.open({title:d.getText(\"LookupDlgCaption\").replace(\"{entity}\",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(e,i,s,n,o){const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",r=xt(i.dataType);let h;const c=r.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\");z(e).addChild(\"div\",(e=>{e.addClass(a).addChild(\"input\",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?\"hidden\":this.resolveInputType(i.dataType)),n?t.attr(\"readonly\",\"\"):(t.mask(c),t.on(\"keypress\",(t=>this.applySumbit(t))).on(\"input\",(e=>{t.removeClass(\"is-invalid\");try{l.strToDateTime(h.value,r)}catch(e){t.addClass(\"is-invalid\")}})).on(\"blur\",(t=>{h.value===c.replace(/[9]/g,\"_\")&&(h.value=\"\")}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):\"\")})),n||e.addChild(\"button\",(e=>e.addClass(\"kfrm-button\").attr(\"title\",d.getText(i.dataType!==t.Time?\"CalendarBtnTitle\":\"TimerBtnTitle\")).addChild(\"i\",(e=>e.addClass(i.dataType!==t.Time?\"ed-calendar-icon\":\"ed-timer-icon\"))).on(\"click\",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0))}catch(t){s=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r)}},o=new pt(n);o.setDateTime(s),o.show(e.target)})).toDOM()))}))}setupListField(t,e,i,s,n){z(t).addChild(\"div\",(t=>t.addClass(\"kfrm-select full-width\").addChild(\"select\",(t=>{if(n&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.on(\"keypress\",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr(\"readonly\",\"\"),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr(\"accept\",s)}))}setupTextField(e,i,s,n,o){z(e).addChild(\"input\",(e=>{n&&e.attr(\"readonly\",\"\"),e.type(o?\"hidden\":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr(\"checked\",\"\"):e.on(\"keypress\",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():\"\")}))}setupTextArea(t,e,i,s){z(t).addChild(\"textarea\",(t=>{s&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.setStyle(\"height\",\"120px\"),t.value(l.IsDefinedAndNotNull(i)?i.toString():\"\")}))}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z(\"div\",t).addClass(\"kfrm-field-ie\").toDOM()),z(t).addChild(\"label\",(t=>{t.attr(\"for\",i.id),t.addHtml(`${i.caption} ${d?'*':\"\"}: `),i.description&&t.addChild(\"div\",(t=>t.attr(\"title\",i.description).addClass(\"question-mark\").setStyle(\"vertical-align\",\"middle\").setStyle(\"display\",\"inline-block\")))}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h)}else this.setupLookupField(t,i,l,s)}resolveInputType(e){return e===t.Bool?\"checkbox\":e===t.Blob?\"file\":\"text\"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"errors-block\").toDOM())).addChild(\"div\",(e=>{e.addClass(\"\"+(kt?\"kfrm-fields-ie col-ie-1-4 label-align-right\":\"kfrm-fields col-a-1 label-align-right\")),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add(\"ed-progress-bar\")}show(){this.slot.style.removeProperty(\"display\")}hide(){this.slot.style.display=\"none\"}}class Ot{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint(\"FetchDataset\",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\\{.*?\\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||\"__default\",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||\"/api/easydata\")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint(\"GetMetaData\");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint(\"FetchRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint(\"CreateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint(\"UpdateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint(\"DeleteRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+\" endpoint is not defined\";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if(\"modelId\"==s)n=this.model.getId();else{if(\"sourceId\"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist(\"GetMetaData\",x(t,\"models/{modelId}\")),this.setEnpointIfNotExist(\"FetchDataset\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"FetchRecord\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"CreateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/create\")),this.setEnpointIfNotExist(\"UpdateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/update\")),this.setEnpointIfNotExist(\"DeleteRecord\",x(t,\"models/{modelId}/sources/{sourceId}/delete\"))}}class Lt extends It{constructor(){super(),this.name=\"Type\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return{successed:!1,messages:[d.getText(\"NumberError\")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[d.getText(\"IntNumberError\")]}}return{successed:!0}}}class Ft extends It{constructor(){super(),this.name=\"Required\"}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&\"\"!==e?{successed:!0}:{successed:!1,messages:[d.getText(\"RequiredError\")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw\"Can't find active entity for \"+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(`← ${d.getText(\"BackToEntities\")}`).on(\"click\",(t=>{t.preventDefault(),Et(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement(\"div\");if(this.slot.appendChild(e),e.id=\"Grid\",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText(\"AddRecordBtnTitle\"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z(\"div\").addClass(\"kfrm-form\").setStyle(\"margin\",\"10px 0px\").addChild(\"div\",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z(\"div\",i).addClass(\"keg-cell-value\");this.context.getActiveEntity().isEditable&&n.addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"EditBtn\")).on(\"click\",(t=>this.editClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\"))))))).addChild(\"span\",(t=>t.text(\" | \"))).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"DeleteBtn\")).on(\"click\",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText(\"AddDlgCaption\").replace(\"{entity}\",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText(\"EditDlgCaption\").replace(\"{entity}\",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(\".\")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText(\"DeleteDlgCaption\").replace(\"{entity}\",e.caption),d.getText(\"DeleteDlgMessage\").replace(\"{recordId}\",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(\";\"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:\"Ooops, something went wrong\",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText(\"RootViewTitle\")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild(\"div\",(e=>e.addClass(\"ed-root\").addChild(\"div\",(t=>t.addClass(\"ed-menu-description\").addText(d.getText(this.metaData.isEmpty()?\"ModelIsEmpty\":\"EntityMenuDesc\")))).addChild(\"ul\",(e=>{e.addClass(\"ed-entity-menu\"),t.forEach((t=>{e.addChild(\"li\",(e=>{e.addClass(\"ed-entity-item\").on(\"click\",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-caption\").addText(t.captionPlural||t.caption)})),t.description&&e.addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-descr\").addText(`${t.description}`)}))}))}))}))))}}class Ht{constructor(t){this.options={container:\"#EasyDataContainer\",basePath:\"easydata\"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener(\"ed_set_location\",this.onSetLocation),window.addEventListener(\"popstate\",this.onSetLocation)},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath=\"/\"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement(\"div\"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):\"/\"}trimSlashes(t){return t.replace(/^\\/|\\/$/g,\"\")}setContainer(t){if(!t)throw\"Container is undefined\";if(\"string\"==typeof t){if(t.length){if(\".\"===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else\"#\"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error(\"Unrecognized `container` parameter: \"+t+\"\\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.\")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath)}clear(){this.container.innerHTML=\"\",this.context.getData().clear()}detach(){window.removeEventListener(\"ed_set_location\",this.onSetLocation),window.removeEventListener(\"popstate\",this.onSetLocation)}}d.updateDefaultTexts({RequiredError:\"Value is required.\",NumberError:\"Value should be a number\",IntNumberError:\"Value should be an integer number\",DateTimeError:\"Invalid date or time value\",LookupSelectedItem:\"Selected item: \",LookupDlgCaption:\"Select {entity}\",None:\"None\",NavigationBtnTitle:\"Navigation values\",CalendarBtnTitle:\"Open calendar\",TimerBtnTitle:\"Open timer\",AddBtnTitle:\"Add\",AddRecordBtnTitle:\"Add record\",EditBtn:\"Edit\",DeleteBtn:\"Delete\",SelectLink:\"[ select ]\",AddDlgCaption:\"Create {entity}\",EditDlgCaption:\"Edit {entity}\",DeleteDlgCaption:\"Delete {entity}\",DeleteDlgMessage:\"Are you sure you want to remove this record: {{recordId}}?\",EntityMenuDesc:\"Click on an entity to view/edit its content\",BackToEntities:\"Back to entities\",SearchBtn:\"Search\",SearchInputPlaceholder:\"Search...\",RootViewTitle:\"Entities\",ModelIsEmpty:\"No entity was found.\"});export{Nt as DataContext,Ot as EasyDataServerLoader,Ht as EasyDataViewDispatcher,$t as EntityDataView,Mt as EntityEditForm,At as EntityEditFormBuilder,Pt as ProgressBar,Ft as RequiredValidator,Bt as RootDataView,E as TextDataFilter,Rt as TextFilterWidget,Lt as TypeValidator,It as Validator};\n//# sourceMappingURL=easydata.crud.es.js.map\n"],"names":["t","e","Unknown","String","Byte","Word","Int32","Int64","Bool","Float","Currency","BCD","Date","Time","DateTime","Autoinc","Memo","Blob","FixedChar","Guid","Geometry","Geography","Data","Virtual","Lookup","s","Edit","List","CustomList","File","getDateByName","this","Today","Yesterday","setDate","getDate","Tomorrow","FirstDayOfMonth","LastDayOfMonth","setMonth","getMonth","FirstDayOfNextMonth","FirstDayOfPrevMonth","FirstDayOfYear","FirstDayOfPrevYear","setFullYear","getFullYear","FirstDayOfNextYear","FirstDayOfWeek","getDay","FirstDayOfPrevWeek","FirstDayOfNextWeek","r","o","a","h","l","u","n","Trace","Options","Get","Put","Post","Delete","d$2","constructor","xhr","method","url","headers","queryParams","data","setHeader","setQueryParam","getXMLHttpRequest","getResponseHeaders","readyState","HEADERS_RECEIVED","getAllResponseHeaders","trim","split","i","shift","join","open","UNSENT","Object","keys","length","encodeURI","map","setRequestHeader","abort","getAllDataTypes","values","filter","getDateDataTypes","getStringDataTypes","getNumericDataTypes","hasOwnProperty","has","get","Array","isArray","set","create","getPrototypeOf","push","assign","assignDeep","WeakMap","getIfDefined","IsDefinedAndNotNull","copyArrayTo","createArrayFrom","findItemById","id","findItemIndexById","indexOfArrayItem","indexOf","moveArrayItem","splice","removeArrayItem","insertArrayItem","fillArray","Math","max","min","shiftToFitWindow","document","getElementsByTagName","window","innerWidth","documentElement","clientWidth","isObject","isNumericType","isIntType","isNumeric","isNaN","parseFloat","isFinite","areCompatibleDataTypes","isPropSet","toLowerCase","toUpperCase","floor","random","parseInt","generateId","getTime","strToDateTime","replace","c","d","g","f","strToTime","g$2","request","promise","getPromise","getRequest","then","catch","finally","f$2","Error","super","status","shortDateFormat","longDateFormat","editDateFormat","shortTimeFormat","editTimeFormat","longTimeFormat","shortMonthNames","longMonthNames","shortWeekDayNames","longWeekDayNames","decimalSeparator","currency","localeId","englishName","displayName","texts","ButtonOK","ButtonCancel","Yes","No","True","False","settings","addMapper","getLocales","locale","sort","getCurrentLocale","setLocale","console","warn","setCurrentLocale","getText","getLocaleSettings","getOneLocaleSetting","getShortMonthName","getLongMonthName","getShortWeekDayName","toString","getLongWeekDayName","updateLocaleSettings","updateLocaleTexts","error","updateDefaultTexts","updateLocaleInfo","addLocale","resetLocales","toLocaleDateString","year","month","day","toLocaleTimeString","hour","minute","second","navigator","language","m","p","getHours","getMinutes","getSeconds","yyyy","yy","substring","MMMM","MMM","MM","M","dd","HH","H","hh","tt","mm","ss","y","D","dateTimeToStr","dateTimeToStrEx","numberToStr","charAt","w","Number","forEach","slice","toLocaleString","style","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","reverse","trunc","booleanToStr","isEditable","name","caption","description","parent","attributes","subEntities","loadFromData","captionPlural","namePlur","desc","ied","ents","createEntity","attrs","createEntityAttr","scan","stop","getFirstPrimaryAttr","getPrimaryAttrs","isPrimaryKey","y$2","dataType","size","isForeignKey","isNullable","showOnView","showOnCreate","showOnEdit","showInLookup","lookupAttr","expr","entity","kind","cptn","dtype","ipk","ifk","lattr","lookupEntity","lent","dataAttr","dattr","lookupDataAttr","ldattr","defaultValue","defVal","nul","ivis","sov","soc","soe","sil","displayFormat","dfmt","udata","userData","edtr","defaultEditor","getEditorById","createValueEditor","D$2","tag","resType","defValue","defval","rtype","accept","multiline","subType","getValueText","text","None","Left","Center","Right","x$2","label","type","originAttrId","isAggr","groupFooterColumnTemplate","gfct","calculatedWidth","items","mapper","_dateColumnIdx","count","add","x","updateDateColumnIdx","getItems","put","move","getIndex","getDateColumnIndexes","removeAt","clear","columns","toArray","from","getValue","RangeError","setValue","I$2","newGuid","renderLiquidTemplate","RegExp","NaN","ceil","colStore","aggregates","groups","useGrandTotals","useRecordCount","_caseSensitiveGroups","COUNT_FIELD_NAME","caseSensitiveGroups","updateCompareProc","compareValues","strictCompare","caseInsensitiveCompare","addGroup","getColumnIds","to","validateColumns","hasColumnsInUse","addAggregateColumn","validateAggregate","colId","funcId","addGrandTotals","addCounts","getGroups","concat","getInternalGroups","lastGroup","getAggregates","hasAggregates","hasGroups","hasGrandTotals","hasRecordCount","isEmpty","drop","needAggrCalculation","saveToData","ugt","urc","csg","buildGroupKey","_chunkSize","_elasticChunks","cachedRows","total","loader","needTotal","isInMemory","chunkSize","elasticChunks","inMemory","_columns","E","onUpdate","rows","createRow","addRow","getRows","pageSize","page","offset","limit","Promise","resolve","loadChunk","prototype","apply","table","getCachedRows","getCachedCount","fireUpdated","getRow","getTotal","setTotal","b","mapDate","totalIsKnown","silentMode","events","source","subscribe","getEventRecByType","I","callback","eventCallbacks","unsubscribe","fire","setTimeout","enterSilentMode","exitSilentMode","isSilent","responseBody","_responseBody","defaultHeaders","customPayload","send","post","contentType","XMLHttpRequest","XDomainRequest","beforeEachRequest","onRequest","JSON","stringify","responseType","onerror","responseText","onreadystatechange","getResponseHeader","response","parse","onResponse","decodeArrayBuffer","message","FileReader","onloadend","DONE","result","readAsText","mainEntity","rootEntity","displayFormats","Map","getMainEntity","loadFromJSON","version","vers","editors","entroot","getDisplayFormats","getDisplayFormatsForType","getDefaultFormat","isdef","setData","getId","getName","getRootEntity","getAttributeById","getEntityAttrById","checkAttrProperty","listByEntityWithFilter","isEntity","listByEntity","includeRootData","sortEntities","attrPlacement","addDefaultValueEditors","addOrUpdateValueEditor","getEntitiesTree","getEntitiesTreeWithFilter","getFullEntityPathByAttr","getEntityPathByAttr","getAttributeText","runThroughEntities","getFirstAttributeByFilter","date","_name","asTime","repeat","lastIndexOf","l$1","d$1","display","C","body","top","pageYOffset","scrollTop","left","pageXOffset","scrollLeft","T","right","bottom","width","height","getBoundingClientRect","clientTop","clientLeft","round","innerHeight","userAgent","IsIE","IsEdge","includes","IsFirefox","matchMedia","matches","addEventListener","isMobileMode","setIsMobileMode","onMobileModeChanged","getMobileCssClass","S","value","selectionStart","test","selectionEnd","keyCode","preventDefault","createEvent","initEvent","dispatchEvent","fromCharCode","charCode","element","createElement","parentElement","appendChild","addChild","L","addChildElement","attr","setAttribute","focus","title","removeAttribute","show","removeStyle","hide","setStyle","visible","isVisible","offsetWidth","offsetHeight","getClientRects","addClass","classList","removeClass","remove","toggleClass","toggle","on","off","removeEventListener","setProperty","removeProperty","innerText","html","innerHTML","tagName","replaceWith","addText","createTextNode","addHtml","toDOM","appendTo","O$1","R","cols","P$1","valueAsDate","valueAsNumber","mask","addOption","selected","HTMLDivElement","HTMLSpanElement","HTMLAnchorElement","HTMLButtonElement","HTMLImageElement","HTMLInputElement","P","HTMLTextAreaElement","O","HTMLSelectElement","A","k","TouchEvent","N","Allow","Forbid","$$1","dropEffect","pageX","pageY","item","dragImage","sourceEvent","MouseEvent","touches","H$1","F$1","delta","draggableItem","finishedSuccessfully","mouseDownPosition","containerDescriptors","containerDescriptorIndex","classPrefix","DRAG_DISABLED_ATTR","registerDraggableItem","ondragstart","hasAttribute","stopPropagation","abs","mouseMoveDragListener","beforeDragStart","cloneNode","renderer","updateCusror","updateImageClass","scope","updateDragItemPosition","$","onDragStart","scopes","onDrop","onDragLeave","onDragEnd","removeChild","registerDropContainer","removeDropContainer","detectDragEnterEvent","dragEnterEvent","detectDragLeaveEvent","dragLeaveEvent","onDragOver","setCursorStyle","cursor","children","onDragEnter","_","F","Y","B","Always","Once","Never","NONE","LEFT","CENTER","RIGHT","W$1","_label","_description","align","isRowNum","dataColumn","grid","options","columnWidths","alignment","default","rowNumColumn","G$1","sync","W","onSyncGridColumn","z","V","U","STRING","NUMBER","DATETIME","BOOL","j","q","K","call","Q","J$1","renderers","defaultRenderers","registerRenderer","setDefaultRenderer","getDefaultRenderer","getCellType","getDefaultRendererByType","getRenderer","Z$1","cssPrefix","slot","yearRange","currentDate","dateChanged","onDateChanged","tt$1","calendar","timePicker","render","setDateTime","currentDateTime","setTime","getDateTime","showCalendar","createCalendar","showDateTimeInput","timePickerIsUsed","showTimePicker","oneClickDateSelection","dateTimeChanged","createTimePicker","onTimeChanged","setHours","setMinutes","beforeShow","clientHeight","onApply","destroy","cancel","onCancel","onDateTimeChanged","et$1","Z","daysOfWeek","months","calendarBody","isManualInputChanging","selectedMonth","selectedYear","rerenderMonth","renderManualDateInput","headerTextElem","renderCalendarButtons","getInputDateFormat","manualInputElem","jump","className","updateDisplayedDateValue","prev","selectMonthElem","selectYearElem","next","rerenderSelectYear","exec","target","getAttribute","onDrawDay","it$1","currentTime","timeChanged","st$1","it","updateDisplayedTime","hoursInput","minutesInput","timeText","at","ot","rt$1","rt","openConfirm","closable","submitable","cancelable","onSubmit","openPrompt","submitOnEnter","arrangeParents","beforeOpen","getElementById","lt","onDestroy","untrack","track","createSet","ht","openDialogs","openProgress","dt","getAllDialogs","closeAllDialogs","close","lt$1","submitHandler","cancelHandler","keydownHandler","isActiveDialog","dialogId","windowElement","headerElement","alertElement","bodyElement","footerAlignment","footerElement","submitButtonText","recaptchaSiteKey","grecaptcha","ready","execute","action","cancelButtonText","getData","getRootElement","getSubmitButtonElement","getCancelButtonElement","querySelector","querySelectorAll","clearAlert","onInput","onShow","submit","disableButtons","disabled","enableButtons","showAlert","dt$1","content","determinated","contentElement","progressElement","updateContent","updateProgress","in01","ht$1","dialogService","currentDialog","currentIndex","getCurrent","openNext","openPrev","ct","ut","GridPageInfo","GridItemsPerPage","ButtonApply","ButtonNow","LblTotal","THIS_WEEK","LAST_WEEK","THIS_MONTH","FIRST_MONTH","LAST_MONTH","THIS_YEAR","QUARTER_1","QUARTER_2","QUARTER_3","QUARTER_4","UNDEF","TODAY","YESTERDAY","TOMORROW","WEEK_START","WEEK_END","MONTH_START","MONTH_END","YEAR_START","YEAR_END","setupDialog","weekStart","append","drawDialog","calendar1","calendar2","alignDate","start","finish","represent","setSeconds","setMilliseconds","select","et","log","mt","zIndex","renderButtons","globalMouseDownHandler","event","srcElement","contains","nowButton","submitButton","calendarSlot","timePickerSlot","st","pagination","paginationOptions","maxButtonCount","useBootstrap","defaultDataGridOptions","dataTable","fixHeightOnFirstRender","syncGridColumns","useRowNumeration","allowDragDrop","calculator","paging","enabled","pageSizeItems","autoResize","stringColumns","numberColumns","boolColumns","dateColumns","otherColumns","showPlusButton","viewportRowsCount","showActiveRow","rowsOnPagePromise","containerInitialHeight","firstRender","prevRowTotals","landingIndex","landingSlot","_activeRowIndex","mergeOptions","processColumnWidthsOptions","eventEmitter","cellRendererStore","J","G","setSlot","init","getElementsByClassName","onInit","onRowClick","onRowDbClick","onPlusButtonClick","onColumnChanged","onColumnDeleted","onColumnMoved","onPageChanged","onActiveRowChanged","activeRowIndex","showLandingSlot","hideLandingSlot","column","refresh","fireEvent","columnId","newIndex","getColumns","clearDOM","hasData","rootDiv","renderHeader","headerDiv","renderBody","bodyDiv","renderFooter","footerDiv","updateHeight","resizeColumns","bodyCellContainerDiv","firstElementChild","bodyViewportDiv","getContainerWidth","reduce","headerViewportDiv","headerCellContainerDiv","headerRowDiv","renderColumnHeader","renderHeaderButtons","canShowAggregates","showProgress","getRowsToRender","hideProgress","updateTotalsState","renderRow","showGrandTotalsOnEachPage","isLastPage","onViewportKeydown","bind","renderTotalsRow","applyGroupColumnTemplate","renderCell","getAggrContainer","getAggregateData","firstChild","key","ensureRowVisibility","getDataRow","footerPaginateDiv","renderPageNavigator","renderPageInfoBlock","getLocalIndexByGlobal","getGlobalIndexByLocal","row","rowIndex","getCellRenderer","onGetCellRenderer","setPage","allowPageSizeChange","Set","plusButtonTitle","insertBefore","updateActiveRow","oldValue","newValue","getActiveRow","visibility","whiteSpace","cssClass","Event","gt","getComputedStyle","overflow","paddingTop","paddingBottom","marginTop","marginBottom","boxSizing","transitionProperty","transitionDuration","duration","complete","v","sourceTable","sourceId","isLookup","filterValue","justServerSide","applyCore","class","filters","lookup","applyInMemoryFilter","X","nt","pt","ft","yt","vt","Dt","Ct","wt","Tt","bt","xt","Et","history","state","pushState","It","St","validate","successed","messages","Mt","context","validators","getHtml","setHtmlInt","errorsDiv","clearErrors","getMetaData","validateValue","markInputValid","checked","fileToBase64","files","mapValue","all","readAsDataURL","onload","useValidator","useValidators","Rt","instantMode","instantTimeout","highlightCellRenderer","filterInput","inputKeydownHandler","inputKeyupHandler","clearButtonClickHander","searchButtonClickHandler","applyFilter","applyFilterTimeout","clearTimeout","highlightText","HTMLElement","backgroundColor","index","index2","kt","At","params","reset","form","setupLookupField","resolveInputType","getDataLoader","fetchRecord","createFilter","setupDateTimeField","applySumbit","setupListField","setupFileField","setupTextField","setupTextArea","addFormField","isEditForm","resolveEditor","sumbitCallback","build","getActiveEntity","Pt","Ot","resolveEndpoint","startProcess","getHttpClient","resultSet","meta","totalRecords","hasNext","endProcess","Nt","endpoints","endpointVarsRegex","http","model","metaDataId","dataLoader","setDefaultEndpoints","endpoint","activeEntity","setActiveSource","loadMetaData","sourceError","fetchDataset","createRecord","updateRecord","deleteRecord","setEndpoint","setEnpointIfNotExist","match","onProcessStart","onProcessEnd","Lt","isInteger","Ft","$t","basePath","showFilterBox","showBackToEntities","defaultValidators","dlg","location","pathname","renderGrid","syncGridColumnHandler","addClickHandler","manageCellRenderer","rowDbClickHandler","filterWidget","editClickHandler","deleteClickHandler","refreshData","processError","showEditForm","Bt","metaData","renderEntitySelector","decodeURIComponent","RequiredError","NumberError","IntNumberError","DateTimeError","LookupSelectedItem","LookupDlgCaption","NavigationBtnTitle","CalendarBtnTitle","TimerBtnTitle","AddBtnTitle","AddRecordBtnTitle","EditBtn","DeleteBtn","SelectLink","AddDlgCaption","EditDlgCaption","DeleteDlgCaption","DeleteDlgMessage","EntityMenuDesc","BackToEntities","SearchBtn","SearchInputPlaceholder","RootViewTitle","ModelIsEmpty","container","onSetLocation","setActiveView","attach","normalizeBasePath","setContainer","trimSlashes","toLocaleLowerCase","getActiveSourceId","run","EDView","detach"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"easydata.min.js","sources":["../../core/dist/easydata.core.es.js","../../ui/dist/easydata.ui.es.js","../dist/easydata.crud.es.js"],"sourcesContent":["/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const s={Unknown:\"Unknown\",Edit:\"EDIT\",DateTime:\"DATETIME\",List:\"LIST\",CustomList:\"CUSTOMLIST\",File:\"FILE\"};class i{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;u.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let s=e.getDay();return s=0==s?6:s-1,e.setDate(e.getDate()-s),e}FirstDayOfPrevWeek(t){let e=new Date,s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()-s),e}FirstDayOfNextWeek(t){let e=new Date;var s=e.getDay();return s=0==s?1:8-s,e.setDate(e.getDate()+s),e}}var r,o,a,h,l,u=new n;function c(t){u=t}!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));class d{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const s of t){const t=s.split(\": \"),i=t.shift(),n=t.join(\": \");e[i]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return s};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,s){e||(e={});for(let i of s)if(i)for(let s in i)if(i.hasOwnProperty(s)){let o=i[s];null!==o&&\"object\"==typeof o?t.has(o)?e[s]=t.get(o):Array.isArray(o)?(e[s]=r(o),t.set(o,e[s])):(void 0!==e[s]&&null!=e[s]||(e[s]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[s]),n(t,e[s],[o])):e[s]=o}return e}function r(t){let e=[];for(let s of t)e.push(s);return e}e.assign=function(t,...e){for(let s=0;s=t.length)throw\"Index out of bounds: \"+e;s>=t.length&&(s=t.length-1);let i=t.splice(e,1)[0];t.splice(s,0,i)},e.removeArrayItem=function(t,e){let s=t.indexOf(e);if(-1!=s)return t.splice(s,1)[0]},e.insertArrayItem=function(t,e,s){t.splice(e,0,s)},e.fillArray=function(t,e,s=0,i){let n=t.length>>>0;var r=s>>0,o=r<0?Math.max(n+r,0):Math.min(r,n),a=void 0===i?n:i>>0;let h=a<0?Math.max(n+a,0):Math.min(a,n);for(;oi&&(r=i-n-10,t+r<0&&(r=10-t)),r},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return s.indexOf(t)>=0},e.isIntType=function(t){return i.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,s){return void 0===e||void 0===s||e==t.Unknown||s==t.Unknown||e==s||e==t.Date&&s==t.DateTime||e==t.DateTime&&s==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const s=t.length;if(s>e){let i=s/e,n=\"\";n+=t[0];let r,o=i;for(let e=1;eo&&(n+=r,o+=i);return n}return t}function h(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let s=t.split(\"-\"),i=1,n=e;s.length0&&(e+=\"-\");var s=o[h(0,o.length)]+o[h(0,o.length)]+o[h(0,o.length)],i=h(0,1e4);return e+s+function(t,e=36){var s=\"\",i=t;do{s=o[i%e]+s,i=Math.floor(i/=e)}while(i>0);return s}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-i)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const s=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),i=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=s.split(\"-\"),r=i.indexOf(\"MM\"),o=i.indexOf(\"dd\"),a=i.indexOf(\"yyyy\"),h=i.indexOf(\"HH\"),u=i.indexOf(\"mm\"),c=i.indexOf(\"ss\"),d=new Date;try{const t=a>-1&&a-1&&r11)throw\"\";const s=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const i=h>-1&&h23)throw\"\";const g=u>-1&&u59)throw\"\";const f=c>-1&&c59)throw\"\";return new Date(t,e,s,i,g,f)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";return new Date(0,0,0,t,s,i)}catch(e){throw`${t} is not a valid time.`}}}(o||(o={}));class g{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class f extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,s){return this.send(r.Post,t,e,s)}put(t,e,s){return this.send(r.Put,t,e,s)}delete(t,e,s){return this.send(r.Delete,t,e,s)}send(t,e,s,i){const n=(i=i||{}).dataType||\"json\",r=i.contentType||\"form-data\"!==n?\"application/json\":null;s&&\"form-data\"!=n&&this.customPayload&&(s.data=o.assignDeep(s.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),h={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),i.headers||{}),queryParams:i.queryParams||{},data:s};r&&(h.headers[\"Content-Type\"]=r);const l=new d(a,h);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(l)),this.onRequest&&this.onRequest(l);const u=l.data&&\"string\"!=typeof l.data&&\"json\"==n?JSON.stringify(l.data):l.data;return l.open(),new g(l,new Promise(((t,s)=>{i.responseType&&(a.responseType=i.responseType),a.onerror=t=>{s(new f(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const i=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)s(new f(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==i.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else{(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const r=0==i.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=r;const o=r.message||(404==n?`No such endpoint: ${e}`:r);s(new f(n,o))}))}},a.send(u)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((s=>{e.onloadend=function(){e.readyState==FileReader.DONE&&s(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let s,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},r={\"en-US\":n};const a=[];function h(t){for(const e of a)e(t)}function l(){return s.localeId}function u(t){const e=r[t];e?o.assignDeep(s,e):(s.englishName=t,s.displayName=t,s.texts=o.assignDeep({},n.texts)),s.localeId=t}function c(){return s.settings}function d(t){s.settings||(s.settings=o.assignDeep({},i)),s.settings=o.assignDeep(s.settings,t)}function g(t,e){h(e);let i=s;t&&(e.localeId||(e.localeId=t),i=r[t],i||(i=o.assignDeep({},n),r[t]=i)),o.assignDeep(i,e)}function f(){!function(t){const e=new Date(2020,5,7,19,34,56,88),i=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let r=i.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");s.settings||(s.settings={}),d({shortDateFormat:r,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in r)t.push({locale:e,englishName:r[e].englishName,displayName:r[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=l,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),u(t)},e.setCurrentLocale=u,e.getText=function(...t){let e=s.texts,i=\"\";if(t&&t.length){const s=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=d,e.updateLocaleTexts=function(t){\"object\"==typeof t?(h({localeId:s.localeId,texts:t}),o.assignDeep(s.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in r){let s=r[e];s.texts=o.assignDeep({},t,s.texts)}s.texts=o.assignDeep({},t,s.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){s||(s=o.assignDeep({},n),f())};const m=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(t,s){const i=t.getFullYear().toString(),n=t.getMonth()+1,r=t.getDate(),o=t.getHours(),a=t.getMinutes(),h=t.getSeconds(),l=o%12||12,u=o>11,c={yyyy:i,yy:i.substring(i.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:r<10?\"0\"+r:r.toString(),d:r.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:l<10?\"0\"+l:l.toString(),h:l.toString(),tt:u?\"PM\":\"AM\",mm:a<10?\"0\"+a:a.toString(),ss:h<10?\"0\"+h:h.toString()};return s.replace(m,((t,e)=>e||c[t]))}function y(e){const s=c();let i;switch(e){case t.Date:i=s.shortDateFormat;break;case t.Time:i=s.shortTimeFormat;break;default:i=s.shortDateFormat+\" \"+s.shortTimeFormat}return i}function D(e){const s=c();let i;switch(e){case t.Date:i=s.longDateFormat;break;case t.Time:i=s.longTimeFormat;break;default:i=s.longDateFormat+\" \"+s.longTimeFormat}return i}e.dateTimeToStr=p,e.dateTimeToStrEx=function(e,s,i){return i?\"d\"==i?i=y(t.Date):\"D\"==i?i=D(t.Date):\"f\"==i?i=y(t.DateTime):\"F\"==i&&(i=D(t.DateTime)):i=y(s),p(e,i)},e.numberToStr=function(t,s,i){if(s&&s.length>0){const i=s.charAt(0).toUpperCase();if(\"S\"===i)return function(t,s){if(!w[s]){const t=s.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(w[s]={},t.length>0)if(t[0].length>1)for(const e of t)w[s][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{w[s][e]=t[0]}))}const i=w[s];if(void 0!==i[t]){const s=i[t];return e.getText(s)||s}return t.toString()}(t,s.slice(1));if([\"D\",\"F\",\"C\"].indexOf(i)>=0){const e=l();return t.toLocaleString(e,function(t){const e=c(),s=t[0].toUpperCase(),i=t.length>1?Number.parseInt(t.slice(1)):\"D\"==s?1:2;switch(s){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:i};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:i};default:return{style:\"decimal\",minimumFractionDigits:i,maximumFractionDigits:i}}}(s))}return function(t,e){let s=t.toString(),i=\"\",n=s.length-1;for(let t=e.length-1;t>=0;t--){const r=e.charAt(t);\"#\"===r||\"0\"===r?n>=0?(i+=s.charAt(n),n--):\"0\"===r&&(i+=0):i+=r}return i.split(\"\").reverse().join(\"\")}(Math.trunc(t),s)}const n=c();return i=i||n.decimalSeparator,t.toString().replace(\".\",i)},e.booleanToStr=function(t,s){if(s&&s.length>0){if(\"S\"===s.charAt(0).toUpperCase()){const i=s.slice(1).split(\"|\");if(i.length>1){const s=i[t?1:0];return e.getText(s)||s}}}return`${t}`};const w={}}(a||(a={}));class p{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let s=0;s{if(e&&e(n,s),n.attributes){let e=n.attributes.length;for(let i=0;it.isPrimaryKey))}}class y{constructor(s){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=s,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const s=o.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&s?new Date(e.defVal):e.defVal,this.isNullable=o.getIfDefined(e.nul,this.isNullable),this.isEditable=o.getIfDefined(e.ied,this.isEditable),this.showOnView=o.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=o.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=o.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=o.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=s.Unknown,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let s of this.values)t.indexOf(s.id)>=0&&(e+=s.text+\",\");else for(let s of this.values)s.id===t&&(e+=s.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class w{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new p(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let s=this.getAttributeById(t);if(s){if(void 0===s[e])throw\"No such property: \"+e;return!!s[e]||!!s.lookupAttr&&(t=s.lookupAttr,s=this.getAttributeById(t),s&&s[e])}return!1}getEntityAttrById(t,e){let s,i;if(t.attributes){let i=t.attributes.length;for(s=0;s0&&i.push(t)}}let r=null;if(t.attributes){let n=t.attributes.length;for(let h=0;h0&&n.push(t)}}let l=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),r.sort(c)),u=e.attrPlacement&&0!=e.attrPlacement?r.concat(n):n.concat(r),2==e.attrPlacement&&u.sort(c),e.includeRootData?(i=a.getText(\"Entities\",t.name),i||(i=t.caption),{id:t.name,text:i,items:u}):u}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s.Edit,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",s.DateTime,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",s.DateTime,t.DateTime)}addOrUpdateValueEditor(t,e,s){let i=o.findItemById(this.editors,t);return i||(i=this.createValueEditor(),i.id=t,this.editors.push(i)),i.tag=e,i.resType=s,i}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,s,i){if(!t)return\"\";s=s||\" \";let n=\"\";if(t.caption&&!i){let e=a.getText(\"Entities\",t.caption);n=e||t.caption}if(t.attributes){let s=t.attributes.length;for(let i=0;i(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('\"drop()\" method is obsolete. Use \"clear()\" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups){if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0}for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const s=!this.caseSensitiveGroups;let i={};if(t)for(const n of t.columns){let t=e.getValue(n);s&&\"string\"==typeof t&&(t=t.toLowerCase()),i[n]=t}return i}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){if(t instanceof Date)return t.getTime()===e.getTime();return(\"string\"==typeof t?t.toLowerCase():t)===(\"string\"==typeof e?e.toLowerCase():e)}}!function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(h||(h={}));class x{constructor(e){if(!e)throw Error(\"Options are required\");if(!e.id)throw Error(\"Field Id is required\");if(!e.label)throw Error(\"Label is required\");this.id=e.id,this.type=o.getIfDefined(e.type,t.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class E{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let s;s=e instanceof x?e:new x(e);const i=this.items.length;return this.items.push(s),this.mapper[s.id]=i,[t.Date,t.DateTime,t.Time].indexOf(s.type)>=0&&this._dateColumnIdx.push(i),i}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&s!=e&&(o.moveArrayItem(this.items,s,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(s,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class b{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let s;if(\"string\"==typeof t){if(s=this.columns.getIndex(t),void 0===s)throw new RangeError(`No column with id '${t}'`)}else s=t;if(s>=this.values.length)throw new RangeError(\"Out of range: \"+s);this.values[s]=e}}class C{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new E,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,s=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),s=t.pageSize):(e=t.offset,s=t.limit));let i=e+s;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);i>this.total&&(i=this.total)}if(this.isInMemory&&i>this.cachedRows.length&&(i=this.cachedRows.length),i<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,i));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${i}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let r=this.cachedRows.length,o=i-r;o{if(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),i>this.cachedRows.length&&(i=this.cachedRows.length),this.elasticChunks){t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),s=new Array(this._columns.count),i=t instanceof b?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=i(t.id),r=this.columns.getIndex(t.id);s[r]=e.indexOf(r)>=0?this.mapDate(n,t.type):n})),new b(this._columns,s)}mapDate(e,s){if(e){let i=new Date(e);return isNaN(i.getTime())&&s==t.Time&&(i=o.strToTime(e)),i}return null}addRow(t){let e;if(Array.isArray(t)){let s=t;const i=this._columns.getDateColumnIndexes();if(i.length>0)for(const t of i)s[t]&&(s[t]=this.mapDate(s[t],this._columns.get(t).type));e=new b(this._columns,s)}else e=this.createRow(t);this.cachedRows.push(e);const s=this.getCachedCount();return s>this.total&&(this.total=s),e}getCachedRows(){return this.cachedRows}totalIsKnown(){if(this.elasticChunks){return this.getCachedCount()===this.total}return!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class I{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class A{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let s=this.getEventRecByType(t);const i={id:I.newGuid(),callback:e};return s?s.eventCallbacks.push(i):(s={type:t,eventCallbacks:new Array(i)},this.events.push(s)),i.id}unsubscribe(t,e){let s=this.getEventRecByType(t);if(s){let t=-1;for(t=0;t=0&&s.eventCallbacks.splice(t,1)}}fire(t,e,s=0,i=!1){if(this.silentMode&&!i)return;let n=this.getEventRecByType(t);if(n){const i={type:t,source:this.source,data:e};let r=()=>{for(let t of n.eventCallbacks)t.callback(i)};s>0?setTimeout(r,s):r()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function v(t,e){return t.repeat(e)}function F(t){return t.split(\"\").reverse().join(\"\")}function S(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function M(t,e){let s=t;return null!=s&&s.length>0?(\"/\"!=s.charAt(s.length-1)&&(s+=\"/\"),s+=e):s=e,s}!function(t){t.renderLiquidTemplate=function(t,e){let s=t;if(e)for(let t in e){const i=new RegExp(\"{{\"+t+\"}}\",\"g\");s=s.replace(i,e[t])}return s}}(l||(l={})),a.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});export{T as AggregationSettings,h as ColumnAlignment,x as DataColumn,E as DataColumnList,b as DataRow,t as DataType,C as EasyDataTable,I as EasyGuid,s as EditorTag,e as EntityAttrKind,A as EventEmitter,m as HttpClient,r as HttpMethod,d as HttpRequest,f as HttpResponseError,w as MetaData,p as MetaEntity,y as MetaEntityAttr,n as SpecialDatesResolver,i as TimeValue,D as ValueEditor,M as combinePath,a as i18n,l as liquid,c as registerSpecialDatesResolver,v as repeatString,F as reverseString,S as strEndsWith,o as utils};\n//# sourceMappingURL=easydata.core.es.js.map\n","/*!\n * EasyData.JS UI\n * Copyright 2020 - 2024 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e,i,s,n,a,o,r;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(i||(i={})),function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let o=s[i];null!==o&&\"object\"==typeof o?t.has(o)?e[i]=t.get(o):Array.isArray(o)?(e[i]=a(o),t.set(o,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(o))),t.set(o,e[i]),n(t,e[i],[o])):e[i]=o}return e}function a(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var a=i>>0,o=a<0?Math.max(n+a,0):Math.min(a,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;os&&(a=s-n-10,t+a<0&&(a=10-t)),a},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let a,o=s;for(let e=1;eo&&(n+=a,o+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let a=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[l(0,36)]+o[l(0,36)]+o[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),a=s.indexOf(\"MM\"),o=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&a11)throw\"\";const i=o>-1&&ofunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const g=h>-1&&h59)throw\"\";const p=c>-1&&c59)throw\"\";return new Date(t,e,i,s,g,p)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(s||(s={})),function(e){let i,n={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},a={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:n},o={\"en-US\":a};const r=[];function l(t){for(const e of r)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?s.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=s.assignDeep({},a.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=s.assignDeep({},n)),i.settings=s.assignDeep(i.settings,t)}function g(t,e){l(e);let n=i;t&&(e.localeId||(e.localeId=t),n=o[t],n||(n=s.assignDeep({},a),o[t]=n)),s.assignDeep(n,e)}e.addMapper=function(t){r.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(l({localeId:i.localeId,texts:t}),s.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=s.assignDeep({},t,i.texts)}i.texts=s.assignDeep({},t,i.texts)},e.updateLocaleInfo=g,e.addLocale=function(t,e){g(t,e)},e.resetLocales=function(){i||(i=s.assignDeep({},a),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let a=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),o=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:a,shortTimeFormat:o})}(\"object\"==typeof navigator?navigator.language:void 0))};const p=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,a=t.getDate(),o=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=o%12||12,h=o>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:a<10?\"0\"+a:a.toString(),d:a.toString(),HH:o<10?\"0\"+o:o.toString(),H:o.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(p,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function D(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=D(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=D(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!y[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(y[i]={},t.length>0)if(t[0].length>1)for(const e of t)y[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{y[i][e]=t[0]}))}const s=y[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const a=e.charAt(t);\"#\"===a||\"0\"===a?n>=0?(s+=i.charAt(n),n--):\"0\"===a&&(s+=0):s+=a}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const y={}}(n||(n={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(a||(a={}));class l{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class d{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class h{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:d.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let a=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(a,i):a()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function c(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function u(t,e,i){let s=document.createElement(e),n=i||{};return n.cssClass&&(s.className=n.cssClass),t.appendChild(s),s}function g(t,e){t.className=t.className?t.className+\" \"+e:e}function p(t){t.style.display=\"none\"}function m(t,e){e||(e=\"\"),t.style.display=e}function f(t,e,i){i||(i={}),i.display||(i.display=\"\"),i.duration||(i.duration=200),p(t),m(e,i.display),i.complete&&i.complete()}function D(t){return\"none\"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function y(t){var e;return\"function\"==typeof Event?e=new Event(t):(e=document.createEvent(\"Event\")).initEvent(t,!0,!0),e}function v(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function w(){if(r.IsIE())return b();return{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function C(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function T(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,a=C(),o=a.top,r=a.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+o-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}function b(){return{width:window.innerWidth,height:window.innerHeight}}function E(t,e,i){t.style.removeProperty(\"display\");let s=window.getComputedStyle(t).display;\"none\"===s&&(s=\"block\"),t.style.display=s;let n=t.offsetHeight;t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",t.offsetHeight,t.style.boxSizing=\"border-box\",t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.height=n+\"px\",t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),window.setTimeout((()=>{t.style.removeProperty(\"height\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}function x(t,e,i){t.style.transitionProperty=\"height, margin, padding\",t.style.transitionDuration=e+\"ms\",t.style.boxSizing=\"border-box\",t.style.height=t.offsetHeight+\"px\",t.offsetHeight,t.style.overflow=\"hidden\",t.style.height=\"0px\",t.style.paddingTop=\"0px\",t.style.paddingBottom=\"0px\",t.style.marginTop=\"0px\",t.style.marginBottom=\"0px\",window.setTimeout((()=>{t.style.display=\"none\",t.style.removeProperty(\"height\"),t.style.removeProperty(\"padding-top\"),t.style.removeProperty(\"padding-bottom\"),t.style.removeProperty(\"margin-top\"),t.style.removeProperty(\"margin-bottom\"),t.style.removeProperty(\"overflow\"),t.style.removeProperty(\"transition-duration\"),t.style.removeProperty(\"transition-property\"),t.style.removeProperty(\"box-sizing\"),i&&i()}),e)}(o||(o={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},n.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,a,o=!1,r=()=>{const t=l();o=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&a&&a(e)};function l(){return void 0!==n?n:o}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&a&&a(i)},t.onMobileModeChanged=function(t){a=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(r||(r={}));const S=\"eqjs\",M=\"eqjs-mobile\";function I(t,e){const i={9:\"[0-9]\",a:\"[a-z]\"},s=e.split(\"\"),n=e=>{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],a=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let a=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(a?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=a};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],a=t.selectionStart;if(0==a)return;let o=a,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=a-1&&(r=!1),e===a-1&&o--,n.push(s&&e!=a-1?t.value.charAt(e):\"_\")}else e===o-1&&o--,a-1===e&&a--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=o<0?0:o;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let a=[],o=t.selectionStart,r=o;s.forEach(((e,s)=>{if(i[e]){const l=s!=o?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);a.push(d?l:\"_\"),d&&o===s&&r++}else a.push(e),r===s&&r++,o===s&&o++})),t.value=a.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}class R{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=L(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new H(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=L(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const a=new $(this.draggableItem,this.dragImage,n);a.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(a),this.dropEffect!==a.dropEffect&&(this.dropEffect=a.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},a=t=>{k&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new H(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",o),document.addEventListener(\"touchend\",o)};e.addEventListener(\"mousedown\",a),e.addEventListener(\"touchstart\",a);const o=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new $(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===N.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new $(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",o),document.removeEventListener(\"touchend\",o)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)s.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case N.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case N.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case N.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case N.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case N.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==N.Forbid&&(this.dropEffect=N.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new $(this.draggableItem,this.dragImage,t);s.dropEffect=N.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=T(t),s=new H(e);return!(s.yi.y+t.offsetHeight)&&!(s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=T(t),s=new H(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&s.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-left`)},q=(t,e,i,s)=>{let a=(t||\"\").toString();\"number\"==typeof t&&(a=e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(V,((e,i)=>n.numberToStr(t,i))):t.toLocaleString()),i.innerText=a,i.title=a,e.align==B.NONE&&i.classList.add(`${z}-cell-value-align-right`)},K=(e,i,s,a)=>{const o=\"[object Date]\"===Object.prototype.toString.call(e);let r=(e||\"\").toString();if(o)if(i.dataColumn&&i.dataColumn.displayFormat&&V.test(i.dataColumn.displayFormat))r=i.dataColumn.displayFormat.replace(V,((t,s)=>n.dateTimeToStrEx(e,i.type,s)));else{const s=n.getCurrentLocale(),a={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(i.type){case t.Date:r=e.toLocaleDateString(s);break;case t.Time:r=e.toLocaleTimeString(s,a);break;case t.DateTime:r=`${e.toLocaleDateString(s)} ${e.toLocaleTimeString(s,a)}`}}s.innerText=r,s.title=r,i.align==B.NONE&&s.classList.add(`${z}-cell-value-align-right`)},Q=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&V.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(V,((e,i)=>n.booleanToStr(t,i)));return j(s,e,i)}i.classList.add(`${z}-cell-value-bool`),i.classList.add(`${z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class J{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",j),this.setDefaultRenderer(U.STRING,j),this.registerRenderer(\"NumberDefault\",q),this.setDefaultRenderer(U.NUMBER,q),this.registerRenderer(\"DateTimeDefault\",K),this.setDefaultRenderer(U.DATETIME,K),this.registerRenderer(\"BoolDefault\",Q),this.setDefaultRenderer(U.BOOL,Q)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[U[e]]}getDefaultRendererByType(t){return this.defaultRenderers[U[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[U[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(e){switch(e){case t.Autoinc:case t.Byte:case t.Word:case t.Currency:case t.Float:case t.Int32:case t.Int64:return U.NUMBER;case t.Date:case t.DateTime:case t.Time:return U.DATETIME;case t.Bool:return U.BOOL;default:return U.STRING}}}class X{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:Y.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=L(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(L(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=s.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new h(this),this.cellRendererStore=new J(t),this.columns=new G(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=s.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=s.assignDeep({},this.defaultDataGridOptions.paging,t.paging),n=s.assign({},this.defaultDataGridOptions,t);return n.columnWidths=e,n.paging=i,n}processColumnWidthsOptions(){const e=this.options.columnWidths;if(!e)return;s.getStringDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.stringColumns),e[t])})),s.getNumericDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.numberColumns),e[t])})),e[t.Bool]=Object.assign(Object.assign({},e.boolColumns),e[t.Bool]),s.getDateDataTypes().forEach((t=>{e[t]=Object.assign(Object.assign({},e.dateColumns),e[t])}));const i=[...s.getStringDataTypes(),...s.getNumericDataTypes(),...s.getDateDataTypes(),t.Bool];s.getAllDataTypes().forEach((t=>{t in i||(e[t]=Object.assign(Object.assign({},e.otherColumns),e[t]))})),e[t.Unknown]=e.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),s.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&_.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${S}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=N.Forbid,this.slot.classList.remove(`${S}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==Y.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,L(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=L(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=L(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=L(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=L(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&L(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();L(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=L(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||L(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&L(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&_.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=N.Allow}}),s}renderBody(){this.bodyDiv=L(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=L(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=L(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{L(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const a=t[n-1];for(const t of a.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new l(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let a=\"\";const o=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(a=e.getValue(o)),o==this.dataTable.columns.count-1&&(a=\". . . . . .\"),n.appendChild(this.renderCell(t,i,a,n))}));const a=this.options.aggregates.calculator.getAggrContainer(),o=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return a.getAggregateData(t,r).then((a=>{for(const t of o)e.setValue(t,a[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=o.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";if(t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u){d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,a[i.COUNT_FIELD_NAME])}}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=a&&t.top>0&&t.bottoma&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-a),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>o&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-o)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=L(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=L(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let a=this.dataTable.getTotal().toString();if(this.dataTable.elasticChunks){this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(a=\"?\")}e.innerHTML=n.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${a}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=L(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const a=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let o=e.isRowNum?i+1:t.getValue(a);n.appendChild(this.renderCell(e,s,o,n))})),n}renderCell(t,e,i,s){const n=L(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==B.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==B.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==B.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const a=n.toDOM(),o=a.appendChild(L(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,o,s),a}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(U.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,a,o)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!a){o&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let a=s(i-1,\"«\",1==i,!0,!1);n.appendChild(a),a=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(a),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,a=this.paginationOptions.maxButtonCount||10,o=i-1;let r=o-o%a+1,l=r+a-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const a=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],r=new Set(o);r.add(this.options.paging.pageSize||20),Array.from(r).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),a.appendChild(e)})),a.value=(this.pagination.pageSize||20).toString(),s.appendChild(a),a.addEventListener(\"change\",e);const l=document.createElement(\"div\");l.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(l);const d=document.createElement(\"span\");d.innerText=n.getText(\"GridItemsPerPage\"),l.appendChild(d),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?L(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():L(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let a=this.landingIndex;for(let e of s){const i=T(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let d=0;if(r>0)e+=r,o.width=r,l.forEach((t=>{t.parentElement.style.width=`${r}px`})),n[a].style.width=`${r}px`;else if(0==l.length&&(n[a].style.width=null,n[a].style.whiteSpace=\"nowrap\"),d=n[a].offsetWidth,l.length>0){l.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>d&&(d=e)})),d+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;d>t&&(d=t),d{t.parentElement.style.width=`${d}px`})),n[a].style.width=`${d}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=d)}else e+=d;a++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class Z{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class tt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class et extends Z{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),L(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=L(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=L(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=s.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return L(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{L(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=n.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class nt extends tt{render(){const t=L(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=L(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(n.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(n.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(n.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new et(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=L(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new st(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=T(t||document.body),i=T(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var at;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(at||(at={}));const ot=\"kdlg\";class rt{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${ot}-dialog-form-input`);i&&(t.value=i),t.focus()}},a=t=>{const e=document.getElementById(`${ot}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>a(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>a(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new lt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new ht(t,this)}untrack(t){const e=rt.openDialogs.indexOf(t);e>=0&&rt.openDialogs.splice(e,1)}track(t){rt.openDialogs.push(t)}openProgress(t){const e=new dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(rt.openDialogs)}closeAllDialogs(){for(const t of Array.from(rt.openDialogs))t.close()}}rt.openDialogs=[];class lt{constructor(t,e){this.options=t,this.submitHandler=t=>(!this.options.onSubmit||!1!==this.options.onSubmit(this,t))&&(this.destroy(),!0),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=s.generateId(\"dlg\"),this.data=e,this.slot=L(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${ot}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${ot}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${ot}-header`).addChild(\"p\",(e=>e.addClass(`${ot}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${ot}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${ot}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${ot}-body`).toDOM(),\"string\"==typeof t.body){const s=o.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==at.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${ot}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||n.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||n.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),L(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${ot}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=L(\"div\").addClass(`${ot}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${ot}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${ot}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class ht{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var ct,ut;n.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(ct||(ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(ut||(ut={}));class gt extends lt{constructor(t){super({title:t.title||\"Select a period\",body:\"\",submitButtonText:t.submitButtonText||\"OK\",cancelButtonText:t.cancelButtonText||\"Cancel\",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{\"function\"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||0,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){const t=L(\"div\").addClass(\"tsp__container\").addChild(\"div\",(t=>{t.addClass(\"tsp__intervals\").addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Week\").on(\"click\",(()=>{this.select(ct.THIS_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Week\").on(\"click\",(()=>{this.select(ct.LAST_WEEK)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Month\").on(\"click\",(()=>{this.select(ct.THIS_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"First Month\").on(\"click\",(()=>{this.select(ct.FIRST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Last Month\").on(\"click\",(()=>{this.select(ct.LAST_MONTH)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"This Year\").on(\"click\",(()=>{this.select(ct.THIS_YEAR)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 1\").on(\"click\",(()=>{this.select(ct.QUARTER_1)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 2\").on(\"click\",(()=>{this.select(ct.QUARTER_2)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 3\").on(\"click\",(()=>{this.select(ct.QUARTER_3)})))).addChild(\"button\",(t=>t.addClass(\"tsp__button\").addText(\"Quarter 4\").on(\"click\",(()=>{this.select(ct.QUARTER_4)}))))})).addChild(\"div\",(t=>{t.addClass(\"tsp__form\").addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Start\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar1=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__date\").addChild(\"div\",(t=>{t.addClass(\"tsp__label\").addChild(\"label\",(t=>{t.addText(\"Finish\")})).addChild(\"select\",(t=>{t.addOption({value:ut.UNDEF,title:\"Jump To\"}).addOption({value:ut.TODAY,title:\"Today\"}).addOption({value:ut.YESTERDAY,title:\"Yesterday\"}).addOption({value:ut.TOMORROW,title:\"Tomorrow\"}).addOption({value:ut.WEEK_START,title:\"Week Start\"}).addOption({value:ut.WEEK_END,title:\"Week End\"}).addOption({value:ut.MONTH_START,title:\"Month Start\"}).addOption({value:ut.MONTH_END,title:\"Month End\"}).addOption({value:ut.YEAR_START,title:\"Year Start\"}).addOption({value:ut.YEAR_END,title:\"Year End\"}),t.on(\"change\",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild(\"div\",(t=>{t.addClass(\"tsp__calendar\"),this.calendar2=new et(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add(\"day-in-range\"):t.classList.remove(\"day-in-range\")}})}))}))})).toDOM();return t}setupDialog(){}jump(t,e,i){let s,n=1===t?\"from\":\"to\";const a=new Date;switch(e){case ut.TODAY:s=a;break;case ut.YESTERDAY:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()-1);break;case ut.TOMORROW:s=new Date(a.getFullYear(),a.getMonth(),a.getDate()+1);break;case ut.WEEK_START:s=new Date(a.setDate(a.getDate()-a.getDay()+this.weekStart));break;case ut.WEEK_END:s=new Date(a.setDate(a.getDate()-a.getDay()+6+this.weekStart));break;case ut.MONTH_START:s=new Date(a.getFullYear(),a.getMonth(),1);break;case ut.MONTH_END:s=new Date(a.getFullYear(),a.getMonth()+1,0);break;case ut.YEAR_START:s=new Date(a.getFullYear(),0,1);break;case ut.YEAR_END:s=new Date(a.getFullYear(),12,0)}s=this.alignDate(s),i.value=ut.UNDEF,\"from\"===n?(this.from=s,this.to=this.from&&(this[n]=s),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(t){switch(t){case ct.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case ct.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case ct.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case ct.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case ct.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case ct.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case ct.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case ct.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case ct.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const e=this.alignDate(new Date),i={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()-1)),Tomorrow:this.alignDate(new Date(e.getFullYear(),e.getMonth(),e.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(e.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(e.setDate(e.getDate()-e.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(e.getFullYear(),e.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(e.getFullYear()+1,0,1))};for(let e in i)if(console.log(i[e],t),i[e].getTime()===t.getTime())return`\\${{${e}}}`;return n.dateTimeToStr(t,n.getLocaleSettings().editDateFormat)}}const pt=t=>new gt(t).open(),mt=new rt;export{Y as AutoResizeColumns,Z as Calendar,U as CellRendererType,V as DFMT_REGEX,tt as DateTimePicker,et as DefaultCalendar,nt as DefaultDateTimePicker,lt as DefaultDialog,rt as DefaultDialogService,ht as DefaultDialogSet,dt as DefaultProgressDialog,st as DefaultTimePicker,at as DialogFooterAlignment,R as DomElementBuilder,P as DomInputElementBuilder,A as DomSelectElementBuilder,O as DomTextAreaElementBuilder,F as DragManager,N as DropEffect,X as EasyGrid,$ as EqDragEvent,J as GridCellRendererStore,W as GridColumn,B as GridColumnAlign,G as GridColumnList,ut as JUMP_TO,ct as PRE_SELECT,it as TimePicker,gt as TimeSpanPicker,g as addCssClass,u as addElement,r as browserUtils,y as createBrowserEvent,mt as dialogs,L as domel,M as eqCssMobile,S as eqCssPrefix,_ as eqDragManager,w as getDocSize,T as getElementAbsolutePos,C as getScrollPos,v as getViewportSize,b as getWinSize,p as hideElement,D as isVisible,I as mask,m as showElement,pt as showTimeSpanPicker,E as slideDown,x as slideUp,f as toggleVisibility,c as wrapInner};\n//# sourceMappingURL=easydata.ui.es.js.map\n","/*!\n * EasyData.JS CRUD\n * Copyright 2024 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/\nvar t,e;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(t||(t={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(e||(e={}));const i=\"Unknown\",s=\"EDIT\",n=\"DATETIME\",o=\"LIST\",a=\"FILE\";var r,l,d,h,c;!function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(r||(r={}));let u=class{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\\r\\n]+/),e={};for(const i of t){const t=i.split(\": \"),s=t.shift(),n=t.join(\": \");e[s]=n}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI(\"?\"+Object.keys(this.queryParams).map((t=>t+\"=\"+this.queryParams[t])).join(\"&\"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader(\"X-Requested-With\",\"XMLHttpRequest\");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}};!function(e){e.getAllDataTypes=function(){return Object.values(t).filter((t=>\"number\"==typeof t))},e.getDateDataTypes=function(){return[t.Time,t.Date,t.DateTime]},e.getStringDataTypes=function(){return[t.String,t.Memo,t.FixedChar]};const i=[t.Byte,t.Word,t.Int32,t.Int64,t.Float,t.Currency,t.Autoinc];e.getNumericDataTypes=function(){return i};const s=[t.Byte,t.Word,t.Int32,t.Int64,t.Autoinc];function n(t,e,i){e||(e={});for(let s of i)if(s)for(let i in s)if(s.hasOwnProperty(i)){let a=s[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=o(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),n(t,e[i],[a])):e[i]=a}return e}function o(t){let e=[];for(let i of t)e.push(i);return e}e.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},e.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},e.insertArrayItem=function(t,e,i){t.splice(e,0,i)},e.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},e.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},e.isNumericType=function(t){return i.indexOf(t)>=0},e.isIntType=function(t){return s.indexOf(t)>=0},e.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},e.areCompatibleDataTypes=function(e,i){return void 0===e||void 0===i||e==t.Unknown||i==t.Unknown||e==i||e==t.Date&&i==t.DateTime||e==t.DateTime&&i==t.Date},e.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const a=\"0123456789abcdefghijklmnopqrstuvwxyz\";function r(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function l(t,e){return Math.floor(Math.random()*(e-t))+t}function d(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}e.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=a[l(0,36)]+a[l(0,36)]+a[l(0,36)],s=l(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=a[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},e.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),l=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=l>-1&&l23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},e.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?d(e[0]):0;if(t>23)throw\"\";const i=e.length>1?d(e[1]):0;if(i>59)throw\"\";const s=e.length>1?d(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(l||(l={}));class p{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class g extends Error{constructor(t,e){super(e),this.status=t}}class m{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(t,e){return this.send(r.Get,t,null,e)}post(t,e,i){return this.send(r.Post,t,e,i)}put(t,e,i){return this.send(r.Put,t,e,i)}delete(t,e,i){return this.send(r.Delete,t,e,i)}send(t,e,i,s){const n=(s=s||{}).dataType||\"json\",o=s.contentType||\"form-data\"!==n?\"application/json\":null;i&&\"form-data\"!=n&&this.customPayload&&(i.data=l.assignDeep(i.data||{},this.customPayload));const a=new(\"onload\"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),r={method:t,url:e,headers:Object.assign(Object.assign({},this.defaultHeaders),s.headers||{}),queryParams:s.queryParams||{},data:i};o&&(r.headers[\"Content-Type\"]=o);const d=new u(a,r);this.beforeEachRequest&&(console.warn(\"HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\\n Use 'onRequest' instead\"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const h=d.data&&\"string\"!=typeof d.data&&\"json\"==n?JSON.stringify(d.data):d.data;return d.open(),new p(d,new Promise(((t,i)=>{s.responseType&&(a.responseType=s.responseType),a.onerror=t=>{i(new g(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const s=a.getResponseHeader(\"Content-Type\")||\"\",n=a.status;if(0===n)i(new g(n,\"Network error or the request was aborted\"));else if(n>=200&&n<400){const e=\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?a.response:0==s.indexOf(\"application/json\")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else(\"arraybuffer\"===a.responseType||\"blob\"===a.responseType?m.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const o=0==s.indexOf(\"application/json\")?JSON.parse(t):t;this._responseBody=o;const a=o.message||(404==n?`No such endpoint: ${e}`:o);i(new g(n,a))}))},a.send(h)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}!function(e){let i,s={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},n={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:s},o={\"en-US\":n};const a=[];function r(t){for(const e of a)e(t)}function d(){return i.localeId}function h(t){const e=o[t];e?l.assignDeep(i,e):(i.englishName=t,i.displayName=t,i.texts=l.assignDeep({},n.texts)),i.localeId=t}function c(){return i.settings}function u(t){i.settings||(i.settings=l.assignDeep({},s)),i.settings=l.assignDeep(i.settings,t)}function p(t,e){r(e);let s=i;t&&(e.localeId||(e.localeId=t),s=o[t],s||(s=l.assignDeep({},n),o[t]=s)),l.assignDeep(s,e)}e.addMapper=function(t){a.push(t)},e.getLocales=function(){let t=[];for(let e in o)t.push({locale:e,englishName:o[e].englishName,displayName:o[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},e.getCurrentLocale=d,e.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),h(t)},e.setCurrentLocale=h,e.getText=function(...t){let e=i.texts,s=\"\";if(t&&t.length){const i=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},e.getLongMonthName=function(t){const e=c();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},e.getShortWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.getLongWeekDayName=function(t){const e=c();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},e.updateLocaleSettings=u,e.updateLocaleTexts=function(t){\"object\"==typeof t?(r({localeId:i.localeId,texts:t}),l.assignDeep(i.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},e.updateDefaultTexts=function(t){for(let e in o){let i=o[e];i.texts=l.assignDeep({},t,i.texts)}i.texts=l.assignDeep({},t,i.texts)},e.updateLocaleInfo=p,e.addLocale=function(t,e){p(t,e)},e.resetLocales=function(){i||(i=l.assignDeep({},n),function(t){const e=new Date(2020,5,7,19,34,56,88),s=e.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=e.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");i.settings||(i.settings={}),u({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const g=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function m(t,i){const s=t.getFullYear().toString(),n=t.getMonth()+1,o=t.getDate(),a=t.getHours(),r=t.getMinutes(),l=t.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:e.getLongMonthName(n),MMM:e.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(g,((t,e)=>e||c[t]))}function f(e){const i=c();let s;switch(e){case t.Date:s=i.shortDateFormat;break;case t.Time:s=i.shortTimeFormat;break;default:s=i.shortDateFormat+\" \"+i.shortTimeFormat}return s}function y(e){const i=c();let s;switch(e){case t.Date:s=i.longDateFormat;break;case t.Time:s=i.longTimeFormat;break;default:s=i.longDateFormat+\" \"+i.longTimeFormat}return s}e.dateTimeToStr=m,e.dateTimeToStrEx=function(e,i,s){return s?\"d\"==s?s=f(t.Date):\"D\"==s?s=y(t.Date):\"f\"==s?s=f(t.DateTime):\"F\"==s&&(s=y(t.DateTime)):s=f(i),m(e,s)},e.numberToStr=function(t,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(t,i){if(!D[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(D[i]={},t.length>0)if(t[0].length>1)for(const e of t)D[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{D[i][e]=t[0]}))}const s=D[i];if(void 0!==s[t]){const i=s[t];return e.getText(i)||i}return t.toString()}(t,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const e=d();return t.toLocaleString(e,function(t){const e=c(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(t),i)}const n=c();return s=s||n.decimalSeparator,t.toString().replace(\".\",s)},e.booleanToStr=function(t,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[t?1:0];return e.getText(i)||i}}return`${t}`};const D={}}(d||(d={}));class f{constructor(t){this.isEditable=!0,this.name=\"\",this.caption=\"\",this.description=\"\",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(n,i),n.attributes){let e=n.attributes.length;for(let s=0;st.isPrimaryKey))}}class y{constructor(i){this.id=\"\",this.caption=\"{Unrecognized attribute}\",this.dataType=t.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr=\"\",this.expr=\"\",this.entity=i,this.kind=e.Data}loadFromData(t,e){if(e){this.id=e.id,this.description=e.desc,this.caption=e.cptn,this.dataType=e.dtype,this.isPrimaryKey=e.ipk,this.isForeignKey=e.ifk,this.size=e.size,this.lookupAttr=e.lattr,this.lookupEntity=e.lent,this.dataAttr=e.dattr,this.lookupDataAttr=e.ldattr;const i=l.getDateDataTypes().indexOf(this.dataType);this.defaultValue=e.defVal&&i?new Date(e.defVal):e.defVal,this.isNullable=l.getIfDefined(e.nul,this.isNullable),this.isEditable=l.getIfDefined(e.ied,this.isEditable),this.showOnView=l.getIfDefined(e.ivis||e.sov,this.showOnView),this.showOnCreate=l.getIfDefined(e.soc,this.showOnCreate),this.showOnEdit=l.getIfDefined(e.soe,this.showOnEdit),this.showInLookup=l.getIfDefined(e.sil,this.showInLookup),this.kind=e.kind,this.displayFormat=e.dfmt,e.udata&&(this.userData=e.udata),e.edtr&&(this.defaultEditor=t.getEditorById(e.edtr)||t.createValueEditor())}}}class D{constructor(){this.id=\"\",this.tag=i,this.resType=t.Unknown,this.defValue=\"\"}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e=\"\";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+\",\");else for(let i of this.values)i.id===t&&(e+=i.text+\",\");return e&&(e=e.substring(0,e.length-1)),e}}class v{constructor(){this.mainEntity=null,this.id=\"__none\",this.name=\"Empty model\",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new f(t)}createEntityAttr(t){return new y(t)}createValueEditor(){return new D}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){\"string\"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){return this.getEntityAttrById(this.getRootEntity(),t)||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw\"No such property: \"+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,s;if(t.attributes){let s=t.attributes.length;for(i=0;i0&&s.push(t)}}let o=null;if(t.attributes){let n=t.attributes.length;for(let a=0;a0&&n.push(t)}}let r=null;if(t.attributes){let e=t.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return e.sortEntities&&(n.sort(c),o.sort(c)),h=e.attrPlacement&&0!=e.attrPlacement?o.concat(n):n.concat(o),2==e.attrPlacement&&h.sort(c),e.includeRootData?(s=d.getText(\"Entities\",t.name),s||(s=t.caption),{id:t.name,text:s,items:h}):h}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=\"\"}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor(\"_DTE\",s,t.String),e.defValue=\"\",this.addOrUpdateValueEditor(\"_DPDE\",n,t.DateTime),this.addOrUpdateValueEditor(\"_DPTE\",n,t.DateTime)}addOrUpdateValueEditor(t,e,i){let s=l.findItemById(this.editors,t);return s||(s=this.createValueEditor(),s.id=t,this.editors.push(s)),s.tag=e,s.resType=i,s}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||\" \",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(t,e,i,s){if(!t)return\"\";i=i||\" \";let n=\"\";if(t.caption&&!s){n=d.getText(\"Entities\",t.caption)||t.caption}if(t.attributes){let i=t.attributes.length;for(let s=0;s=0&&this._dateColumnIdx.push(s),s}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.Date,t.DateTime,t.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&i!=e&&(l.moveArrayItem(this.items,i,e),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class T{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}let b=class{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new w,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&(\"page\"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let s=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);s>this.total&&(s=this.total)}if(this.isInMemory&&s>this.cachedRows.length&&(s=this.cachedRows.length),s<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,s));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${s}`;const n=this.needTotal;this.needTotal&&(this.needTotal=!1);let o=this.cachedRows.length,a=s-o;return a(n&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),s>this.cachedRows.length&&(s=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),s=t instanceof T?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const n=s(t.id),o=this.columns.getIndex(t.id);i[o]=e.indexOf(o)>=0?this.mapDate(n,t.type):n})),new T(this._columns,i)}mapDate(e,i){if(e){let s=new Date(e);return isNaN(s.getTime())&&i==t.Time&&(s=l.strToTime(e)),s}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const s=this._columns.getDateColumnIndexes();if(s.length>0)for(const t of s)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new T(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}};function x(t,e){let i=t;return null!=i&&i.length>0?(\"/\"!=i.charAt(i.length-1)&&(i+=\"/\"),i+=e):i=e,i}(c||(c={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},d.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)});class E{constructor(t,e,i,s=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=s,this.filterValue=\"\",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue=\"\",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:\"__substring\",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((e=>{const i=new b({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);i.setTotal(e.total);for(const t of e.table.getCachedRows())i.addRow(t);return i}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,e)=>{const i=new b({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())i.columns.add(t);const s=this.filterValue.split(\"||\").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>l.isNumericType(t.type)||l.getStringDataTypes().indexOf(t.type)>=0)),o=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of s)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())o(t)&&i.addRow(t);i.setTotal(i.getCachedCount()),t(i)}))}}\n/*!\n * EasyData.JS UI\n * Copyright 2020 - 2024 Korzh.com\n * Licensed under MIT\n !*/\n/*!\n * EasyData.JS Core\n * Copyright 2023 Korzh.com\n * Licensed under MIT\n !*/var I,S,M,R,k,A,P,O;!function(t){t[t.Unknown=0]=\"Unknown\",t[t.String=1]=\"String\",t[t.Byte=2]=\"Byte\",t[t.Word=3]=\"Word\",t[t.Int32=4]=\"Int32\",t[t.Int64=5]=\"Int64\",t[t.Bool=6]=\"Bool\",t[t.Float=7]=\"Float\",t[t.Currency=8]=\"Currency\",t[t.BCD=9]=\"BCD\",t[t.Date=10]=\"Date\",t[t.Time=11]=\"Time\",t[t.DateTime=12]=\"DateTime\",t[t.Autoinc=13]=\"Autoinc\",t[t.Memo=14]=\"Memo\",t[t.Blob=15]=\"Blob\",t[t.FixedChar=16]=\"FixedChar\",t[t.Guid=17]=\"Guid\",t[t.Geometry=18]=\"Geometry\",t[t.Geography=19]=\"Geography\"}(I||(I={})),function(t){t[t.Data=0]=\"Data\",t[t.Virtual=1]=\"Virtual\",t[t.Lookup=2]=\"Lookup\"}(S||(S={})),function(t){t.Trace=\"TRACE\",t.Options=\"OPTIONS\",t.Get=\"GET\",t.Put=\"PUT\",t.Post=\"POST\",t.Delete=\"DELETE\"}(M||(M={})),function(t){t.getAllDataTypes=function(){return Object.values(I).filter((t=>\"number\"==typeof t))},t.getDateDataTypes=function(){return[I.Time,I.Date,I.DateTime]},t.getStringDataTypes=function(){return[I.String,I.Memo,I.FixedChar]};const e=[I.Byte,I.Word,I.Int32,I.Int64,I.Float,I.Currency,I.Autoinc];t.getNumericDataTypes=function(){return e};const i=[I.Byte,I.Word,I.Int32,I.Int64,I.Autoinc];function s(t,e,i){e||(e={});for(let o of i)if(o)for(let i in o)if(o.hasOwnProperty(i)){let a=o[i];null!==a&&\"object\"==typeof a?t.has(a)?e[i]=t.get(a):Array.isArray(a)?(e[i]=n(a),t.set(a,e[i])):(void 0!==e[i]&&null!=e[i]||(e[i]=Object.create(Object.getPrototypeOf(a))),t.set(a,e[i]),s(t,e[i],[a])):e[i]=a}return e}function n(t){let e=[];for(let i of t)e.push(i);return e}t.assign=function(t,...e){for(let i=0;i=t.length)throw\"Index out of bounds: \"+e;i>=t.length&&(i=t.length-1);let s=t.splice(e,1)[0];t.splice(i,0,s)},t.removeArrayItem=function(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]},t.insertArrayItem=function(t,e,i){t.splice(e,0,i)},t.fillArray=function(t,e,i=0,s){let n=t.length>>>0;var o=i>>0,a=o<0?Math.max(n+o,0):Math.min(o,n),r=void 0===s?n:s>>0;let l=r<0?Math.max(n+r,0):Math.min(r,n);for(;as&&(o=s-n-10,t+o<0&&(o=10-t)),o},t.isObject=function(t){return null!==t&&(\"function\"==typeof t||\"object\"==typeof t)},t.isNumericType=function(t){return e.indexOf(t)>=0},t.isIntType=function(t){return i.indexOf(t)>=0},t.isNumeric=function(t){return!isNaN(parseFloat(t))&&isFinite(t)},t.areCompatibleDataTypes=function(t,e){return void 0===t||void 0===e||t==I.Unknown||e==I.Unknown||t==e||t==I.Date&&e==I.DateTime||t==I.DateTime&&e==I.Date},t.isPropSet=function(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]};const o=\"0123456789abcdefghijklmnopqrstuvwxyz\";function a(t,e){const i=t.length;if(i>e){let s=i/e,n=\"\";n+=t[0];let o,a=s;for(let e=1;ea&&(n+=o,a+=s);return n}return t}function r(t,e){return Math.floor(Math.random()*(e-t))+t}function l(t){const e=parseInt(t);if(isNaN(e))throw`\"${t}\" is not a valid number`;return e}t.generateId=function(t){t||(t=\"easy\");let e=t.length>4?function(t,e){let i=t.split(\"-\"),s=1,n=4;i.length<4&&(s=4/i.length,n=i.length);let o=\"\";for(let t=0;t0&&(e+=\"-\");var i=o[r(0,36)]+o[r(0,36)]+o[r(0,36)],s=r(0,1e4);return e+i+function(t,e=36){var i=\"\",s=t;do{i=o[s%e]+i,s=Math.floor(s/=e)}while(s>0);return i}(621355968e9+1e4*(new Date).getTime()-0x8d60e562e627800-s)},t.strToDateTime=function(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,\"-\"),s=e.replace(/[^a-zA-Z0-9_]/g,\"-\").split(\"-\"),n=i.split(\"-\"),o=s.indexOf(\"MM\"),a=s.indexOf(\"dd\"),r=s.indexOf(\"yyyy\"),d=s.indexOf(\"HH\"),h=s.indexOf(\"mm\"),c=s.indexOf(\"ss\"),u=new Date;try{const t=r>-1&&r-1&&o11)throw\"\";const i=a>-1&&afunction(t,e){return new Date(e,t+1,0).getDate()}(e,t))throw\"\";const s=d>-1&&d23)throw\"\";const p=h>-1&&h59)throw\"\";const g=c>-1&&c59)throw\"\";return new Date(t,e,i,s,p,g)}catch(e){throw`${t} is not a valid date.`}},t.strToTime=function(t){const e=t.split(\":\");try{const t=e.length>0?l(e[0]):0;if(t>23)throw\"\";const i=e.length>1?l(e[1]):0;if(i>59)throw\"\";const s=e.length>1?l(e[1]):0;if(s>59)throw\"\";return new Date(0,0,0,t,i,s)}catch(e){throw`${t} is not a valid time.`}}}(R||(R={})),function(t){let e,i={shortDateFormat:\"MM/dd/yyyy\",longDateFormat:\"dd MMM, yyyy\",editDateFormat:\"MM/dd/yyyy\",shortTimeFormat:\"HH:mm\",editTimeFormat:\"HH:mm\",longTimeFormat:\"HH:mm:ss\",shortMonthNames:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longMonthNames:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],shortWeekDayNames:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longWeekDayNames:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],decimalSeparator:\".\",currency:\"USD\"},s={localeId:\"en-US\",englishName:\"English\",displayName:\"English\",texts:{ButtonOK:\"OK\",ButtonCancel:\"Cancel\",Yes:\"Yes\",No:\"No\",True:\"True\",False:\"False\"},settings:i},n={\"en-US\":s};const o=[];function a(t){for(const e of o)e(t)}function r(){return e.localeId}function l(t){const i=n[t];i?R.assignDeep(e,i):(e.englishName=t,e.displayName=t,e.texts=R.assignDeep({},s.texts)),e.localeId=t}function d(){return e.settings}function h(t){e.settings||(e.settings=R.assignDeep({},i)),e.settings=R.assignDeep(e.settings,t)}function c(t,i){a(i);let o=e;t&&(i.localeId||(i.localeId=t),o=n[t],o||(o=R.assignDeep({},s),n[t]=o)),R.assignDeep(o,i)}t.addMapper=function(t){o.push(t)},t.getLocales=function(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))},t.getCurrentLocale=r,t.setLocale=function(t){console.warn(\"This method is deprecated. Use setCurrentLocale instead\"),l(t)},t.setCurrentLocale=l,t.getText=function(...t){let i=e.texts,s=\"\";if(t&&t.length){const e=t.length;for(let n=0;n0&&t<13)return e.shortMonthNames[t-1];throw\"Wrong month number: \"+t},t.getLongMonthName=function(t){const e=d();if(t>0&&t<13)return e.longMonthNames[t-1];throw\"Wrong month number: \"+t},t.getShortWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.getLongWeekDayName=function(t){const e=d();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw\"Wrong month number: \"+t},t.updateLocaleSettings=h,t.updateLocaleTexts=function(t){\"object\"==typeof t?(a({localeId:e.localeId,texts:t}),R.assignDeep(e.texts,t)):console.error(\"Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead\")},t.updateDefaultTexts=function(t){for(let e in n){let i=n[e];i.texts=R.assignDeep({},t,i.texts)}e.texts=R.assignDeep({},t,e.texts)},t.updateLocaleInfo=c,t.addLocale=function(t,e){c(t,e)},t.resetLocales=function(){e||(e=R.assignDeep({},s),function(t){const i=new Date(2020,5,7,19,34,56,88),s=i.toLocaleDateString(t,{year:\"numeric\",month:\"numeric\",day:\"numeric\"}),n=i.toLocaleTimeString(t,{hour:\"numeric\",minute:\"numeric\",second:\"numeric\"});let o=s.replace(\"07\",\"dd\").replace(\"7\",\"d\").replace(\"06\",\"MM\").replace(\"6\",\"M\").replace(\"2020\",\"yyyy\").replace(\"20\",\"yy\"),a=n.replace(\"19\",\"HH\").replace(\"07\",\"hh\").replace(\"7\",\"h\").replace(\"34\",\"mm\").replace(\"56\",\"ss\").replace(\"PM\",\"tt\");e.settings||(e.settings={}),h({shortDateFormat:o,shortTimeFormat:a})}(\"object\"==typeof navigator?navigator.language:void 0))};const u=/\\[([^\\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function p(e,i){const s=e.getFullYear().toString(),n=e.getMonth()+1,o=e.getDate(),a=e.getHours(),r=e.getMinutes(),l=e.getSeconds(),d=a%12||12,h=a>11,c={yyyy:s,yy:s.substring(s.length-2),MMMM:t.getLongMonthName(n),MMM:t.getShortMonthName(n),MM:n<10?\"0\"+n:n.toString(),M:n.toString(),dd:o<10?\"0\"+o:o.toString(),d:o.toString(),HH:a<10?\"0\"+a:a.toString(),H:a.toString(),hh:d<10?\"0\"+d:d.toString(),h:d.toString(),tt:h?\"PM\":\"AM\",mm:r<10?\"0\"+r:r.toString(),ss:l<10?\"0\"+l:l.toString()};return i.replace(u,((t,e)=>e||c[t]))}function g(t){const e=d();let i;switch(t){case I.Date:i=e.shortDateFormat;break;case I.Time:i=e.shortTimeFormat;break;default:i=e.shortDateFormat+\" \"+e.shortTimeFormat}return i}function m(t){const e=d();let i;switch(t){case I.Date:i=e.longDateFormat;break;case I.Time:i=e.longTimeFormat;break;default:i=e.longDateFormat+\" \"+e.longTimeFormat}return i}t.dateTimeToStr=p,t.dateTimeToStrEx=function(t,e,i){return i?\"d\"==i?i=g(I.Date):\"D\"==i?i=m(I.Date):\"f\"==i?i=g(I.DateTime):\"F\"==i&&(i=m(I.DateTime)):i=g(e),p(t,i)},t.numberToStr=function(e,i,s){if(i&&i.length>0){const s=i.charAt(0).toUpperCase();if(\"S\"===s)return function(e,i){if(!f[i]){const t=i.split(\"|\").filter((t=>t.length>0)).map((t=>t.split(\"=\")));if(f[i]={},t.length>0)if(t[0].length>1)for(const e of t)f[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{f[i][e]=t[0]}))}const s=f[i];if(void 0!==s[e]){const i=s[e];return t.getText(i)||i}return e.toString()}(e,i.slice(1));if([\"D\",\"F\",\"C\"].indexOf(s)>=0){const t=r();return e.toLocaleString(t,function(t){const e=d(),i=t[0].toUpperCase(),s=t.length>1?Number.parseInt(t.slice(1)):\"D\"==i?1:2;switch(i){case\"D\":return{style:\"decimal\",useGrouping:!1,minimumIntegerDigits:s};case\"C\":return{style:\"currency\",currency:e.currency,minimumFractionDigits:s};default:return{style:\"decimal\",minimumFractionDigits:s,maximumFractionDigits:s}}}(i))}return function(t,e){let i=t.toString(),s=\"\",n=i.length-1;for(let t=e.length-1;t>=0;t--){const o=e.charAt(t);\"#\"===o||\"0\"===o?n>=0?(s+=i.charAt(n),n--):\"0\"===o&&(s+=0):s+=o}return s.split(\"\").reverse().join(\"\")}(Math.trunc(e),i)}const n=d();return s=s||n.decimalSeparator,e.toString().replace(\".\",s)},t.booleanToStr=function(e,i){if(i&&i.length>0&&\"S\"===i.charAt(0).toUpperCase()){const s=i.slice(1).split(\"|\");if(s.length>1){const i=s[e?1:0];return t.getText(i)||i}}return`${e}`};const f={}}(k||(k={})),function(t){t[t.None=0]=\"None\",t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(A||(A={}));class N{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if(\"string\"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError(\"Out of range: \"+e);return this.values[e]}setValue(t,e){let i;if(\"string\"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError(\"Out of range: \"+i);this.values[i]=e}}class L{static newGuid(){return\"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx\".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return(\"x\"==t?e:3&e|8).toString(16)}))}}class F{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const s={id:L.newGuid(),callback:e};return i?i.eventCallbacks.push(s):(i={type:t,eventCallbacks:new Array(s)},this.events.push(i)),s.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,s=!1){if(this.silentMode&&!s)return;let n=this.getEventRecByType(t);if(n){const s={type:t,source:this.source,data:e};let o=()=>{for(let t of n.eventCallbacks)t.callback(s)};i>0?setTimeout(o,i):o()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function $(t){let e={x:0,y:0};if(null!==t){const i=function(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const s=document.body,n=document.documentElement,o=function(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}(),a=o.top,r=o.left,l=n.clientTop||s.clientTop||0,d=n.clientLeft||s.clientLeft||0,h=i.top+a-l,c=i.left+r-d;return{top:Math.round(h),left:Math.round(c)}}(t);e={x:i.left,y:i.top}}return e}(P||(P={})).renderLiquidTemplate=function(t,e){let i=t;if(e)for(let t in e){const s=new RegExp(\"{{\"+t+\"}}\",\"g\");i=i.replace(s,e[t])}return i},k.resetLocales(),\"function\"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),\"function\"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),function(t){let e=null,i=null;function s(){if(null===i){const t=navigator.userAgent;i=t.indexOf(\"MSIE \")>-1||t.indexOf(\"Trident/\")>-1}return i}t.IsIE=s,t.IsEdge=function(){const t=window.navigator.userAgent;return!s()&&t.includes(\"Edge/\")},t.IsFirefox=function(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf(\"firefox\")>-1}return e};let n,o,a=!1,r=()=>{const t=l();a=window.matchMedia(\"only screen and (max-width: 840px)\").matches||window.matchMedia(\"only screen and (max-height: 420px)\").matches;const e=l();e!==t&&o&&o(e)};function l(){return void 0!==n?n:a}r(),window.addEventListener(\"resize\",(()=>r())),t.isMobileMode=l,t.setIsMobileMode=function(t){const e=l();n=t;const i=l();i!==e&&o&&o(i)},t.onMobileModeChanged=function(t){o=t},t.getMobileCssClass=function(){return l()?\"k-mobile\":null}}(O||(O={}));const B=\"eqjs\";class H{constructor(t,e){this.element=\"string\"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=z(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr(\"id\",t)}focus(){return this.element.focus(),this}title(t){return this.attr(\"title\",t)}data(t,e=null){return null===e?(this.element.removeAttribute(\"data-\"+t),this):this.attr(\"data-\"+t,e)}show(){return this.removeStyle(\"display\")}hide(t=!0){return t?this.setStyle(\"display\",\"none\"):this}visible(t=!0){return t?this.setStyle(\"visibility\",\"visible\"):this.setStyle(\"visibility\",\"hidden\")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(\" \"),...e];for(let t=0;t{if(\"focus\"===e.type&&\"\"!==t.value)return;let n=[],o=t.selectionStart;s.forEach(((e,s)=>{if(i[e]){let o=new RegExp(i[e],\"i\").test(t.value.charAt(s));n.push(o?t.value.charAt(s):\"_\")}else n.push(e)})),t.value=n.join(\"\"),t.selectionStart=t.selectionEnd=o};t.addEventListener(\"keydown\",(e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let n=[],o=t.selectionStart;if(0==o)return;let a=o,r=!0;for(let e=s.length-1;e>=0;e--){const l=s[e];if(i[l]){let s=new RegExp(i[l],\"i\").test(t.value.charAt(e));s&&e!=o-1&&(r=!1),e===o-1&&a--,n.push(s&&e!=o-1?t.value.charAt(e):\"_\")}else e===a-1&&a--,o-1===e&&o--,n.push(l)}t.value=r?\"\":n.reverse().join(\"\"),t.selectionStart=t.selectionEnd=a<0?0:a;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"keypress\",(e=>{const n=String.fromCharCode(e.charCode);if(n){e.preventDefault();let o=[],a=t.selectionStart,r=a;s.forEach(((e,s)=>{if(i[e]){const l=s!=a?t.value.charAt(s):n;let d=new RegExp(i[e],\"i\").test(l);o.push(d?l:\"_\"),d&&a===s&&r++}else o.push(e),r===s&&r++,a===s&&a++})),t.value=o.join(\"\"),t.selectionStart=t.selectionEnd=r;const l=document.createEvent(\"Event\");l.initEvent(\"input\",!0,!0),t.dispatchEvent(l)}})),t.addEventListener(\"input\",n),t.addEventListener(\"focus\",n)}(this.element,t),this}}class W extends H{constructor(t,e){super(t||\"select\",e)}addOption(t){const e=document.createElement(\"option\");return\"string\"==typeof t?(e.value=t,e.innerHTML=t):(e.value=t.value,e.innerHTML=t.title||t.value,e.selected=t.selected||!1),this.element.appendChild(e),this}value(t){return this.element.value=t,this}}function z(t,e){return\"div\"===t||t instanceof HTMLDivElement||\"span\"===t||t instanceof HTMLSpanElement||\"a\"===t||t instanceof HTMLAnchorElement||\"button\"===t||t instanceof HTMLButtonElement||\"img\"===t||t instanceof HTMLImageElement?new H(t,e):\"input\"===t||t instanceof HTMLInputElement?new _(t instanceof HTMLInputElement?t:null,e):\"textarea\"===t||t instanceof HTMLTextAreaElement?new V(t instanceof HTMLTextAreaElement?t:null,e):\"select\"===t||t instanceof HTMLSelectElement?new W(t instanceof HTMLSelectElement?t:null,e):new H(t,e)}const j=\"undefined\"!=typeof TouchEvent;var G;!function(t){t.None=\"none\",t.Allow=\"allow\",t.Forbid=\"forbid\"}(G||(G={}));class U{constructor(t,e,i){this.dropEffect=G.Allow,this.pageX=0,this.pageY=0,this.item=t,this.dragImage=e,this.data=t.data,this.sourceEvent=i,i&&i instanceof MouseEvent&&(this.pageX=i.pageX,this.pageY=i.pageY),i&&j&&i instanceof TouchEvent&&i.touches[0]&&(this.pageX=i.touches[0].pageX,this.pageY=i.touches[0].pageY)}}class q{constructor(t){t&&t instanceof MouseEvent&&(this.x=t.pageX,this.y=t.pageY),t&&j&&t instanceof TouchEvent&&t.touches[0]&&(this.x=t.touches[0].pageX,this.y=t.touches[0].pageY)}}const Y=new class{constructor(){this.delta=5,this.draggableItem=null,this.dragImage=null,this.finishedSuccessfully=!1,this.mouseDownPosition=null,this.containerDescriptors=[],this.containerDescriptorIndex=-1,this.dropEffect=G.None,this.classPrefix=\"eqjs-drop\",this.DRAG_DISABLED_ATTR=\"drag-disabled\"}registerDraggableItem(t){const e=t.element;if(!e)throw Error(\"Element in draggle item is null or undefined\");e.ondragstart=function(){return!1};const i=t=>{if(e.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const i=new q(t);(Math.abs(i.x-this.mouseDownPosition.x)>this.delta||Math.abs(i.y-this.mouseDownPosition.y)>this.delta)&&n(t)},s=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),this.finishedSuccessfully=!1,t.beforeDragStart&&t.beforeDragStart(),this.dragImage=z(\"div\").setStyle(\"position\",\"absolute\").setStyle(\"z-index\",\"65530\").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(e.cloneNode(!0)),t.renderer&&t.renderer(this.dragImage),this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:e,scope:t.scope,data:t.data},this.updateDragItemPosition(n);const o=new U(this.draggableItem,this.dragImage,n);o.dropEffect=this.dropEffect,t.onDragStart&&t.onDragStart(o),this.dropEffect!==o.dropEffect&&(this.dropEffect=o.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener(\"mousemove\",s,!0),document.addEventListener(\"touchmove\",s,!0)},o=t=>{j&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new q(t),e.addEventListener(\"mousemove\",i),e.addEventListener(\"touchmove\",i),document.addEventListener(\"mouseup\",a),document.addEventListener(\"touchend\",a)};e.addEventListener(\"mousedown\",o),e.addEventListener(\"touchstart\",o);const a=t=>{this.mouseDownPosition=null,e.removeEventListener(\"mousemove\",i),e.removeEventListener(\"touchmove\",i),document.removeEventListener(\"mousemove\",s,!0),document.removeEventListener(\"touchmove\",s,!0),this.draggableItem&&r(t)},r=e=>{try{if(this.containerDescriptorIndex>=0){const t=this.containerDescriptors[this.containerDescriptorIndex],i={element:t.element,scopes:t.scopes,data:t.data},s=new U(this.draggableItem,this.dragImage,e);try{i.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===G.Allow&&(this.finishedSuccessfully=!0,t.onDrop&&t.onDrop(i,s))}finally{t.onDragLeave&&t.onDragLeave(i,s)}}}finally{try{const i=new U(this.draggableItem,this.dragImage,e);i.data.finishedSuccessfully=this.finishedSuccessfully,t.onDragEnd&&t.onDragEnd(i)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener(\"mouseup\",a),document.removeEventListener(\"touchend\",a)}}}}registerDropContainer(t){if(!t.element)throw Error(\"Element in drop container is null or undefined\");this.containerDescriptors.push(t)}removeDropContainer(t){const e=this.containerDescriptors.filter((e=>e===t||e.element==t));if(e)for(const t of e)R.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,s)}}}updateCusror(t){switch(t){case G.Allow:this.setCursorStyle(this.dragImage,\"grabbing\");break;case G.Forbid:this.setCursorStyle(this.dragImage,\"no-drop\");break;default:this.setCursorStyle(this.dragImage,\"grabbing\")}}updateImageClass(t){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),t){case G.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case G.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case G.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.Allow,e.onDragEnter&&e.onDragEnter(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==G.Forbid&&(this.dropEffect=G.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(t){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const s=new U(this.draggableItem,this.dragImage,t);s.dropEffect=G.None,e.onDragLeave&&e.onDragLeave(i,s),this.dropEffect=s.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=$(t),s=new q(e);return!(s.yi.y+t.offsetHeight||s.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=$(t),s=new q(e);return!(s.y>i.y&&s.yi.x&&s.x=0&&t=0&&i!=e&&R.moveArrayItem(this.items,i,e)}get(t){return t>=0&&t{const n=t?t.toString().replace(/\\n/g,\"↵ \"):\"\";i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-left`)},st=(t,e,i,s)=>{let n=(t||\"\").toString();\"number\"==typeof t&&(n=e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)?e.dataColumn.displayFormat.replace(tt,((e,i)=>k.numberToStr(t,i))):t.toLocaleString()),i.innerText=n,i.title=n,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},nt=(t,e,i,s)=>{const n=\"[object Date]\"===Object.prototype.toString.call(t);let o=(t||\"\").toString();if(n)if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat))o=e.dataColumn.displayFormat.replace(tt,((i,s)=>k.dateTimeToStrEx(t,e.type,s)));else{const i=k.getCurrentLocale(),s={hour:\"numeric\",minute:\"numeric\",second:\"numeric\"};switch(e.type){case I.Date:o=t.toLocaleDateString(i);break;case I.Time:o=t.toLocaleTimeString(i,s);break;case I.DateTime:o=`${t.toLocaleDateString(i)} ${t.toLocaleTimeString(i,s)}`}}i.innerText=o,i.title=o,e.align==J.NONE&&i.classList.add(`${Z}-cell-value-align-right`)},ot=(t,e,i,s)=>{if(e.dataColumn&&e.dataColumn.displayFormat&&tt.test(e.dataColumn.displayFormat)){const s=e.dataColumn.displayFormat.replace(tt,((e,i)=>k.booleanToStr(t,i)));return it(s,e,i)}i.classList.add(`${Z}-cell-value-bool`),i.classList.add(`${Z}-${t?\"cell-value-true\":\"cell-value-false\"}`)};class at{constructor(t){this.renderers={},this.defaultRenderers={},this.registerRenderer(\"StringDefault\",it),this.setDefaultRenderer(et.STRING,it),this.registerRenderer(\"NumberDefault\",st),this.setDefaultRenderer(et.NUMBER,st),this.registerRenderer(\"DateTimeDefault\",nt),this.setDefaultRenderer(et.DATETIME,nt),this.registerRenderer(\"BoolDefault\",ot),this.setDefaultRenderer(et.BOOL,ot)}getDefaultRenderer(t){const e=this.getCellType(t);return this.defaultRenderers[et[e]]}getDefaultRendererByType(t){return this.defaultRenderers[et[t]]}setDefaultRenderer(t,e){e&&(this.defaultRenderers[et[t]]=e)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(t){switch(t){case I.Autoinc:case I.Byte:case I.Word:case I.Currency:case I.Float:case I.Int32:case I.Int64:return et.NUMBER;case I.Date:case I.DateTime:case I.Time:return et.DATETIME;case I.Bool:return et.BOOL;default:return et.STRING}}}class rt{constructor(t){if(this.cssPrefix=\"keg\",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:K.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=z(\"div\").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(z(\"div\").toDOM()).toDOM(),this._activeRowIndex=-1,t&&t.paging&&(t.paging=R.assign(this.defaultDataGridOptions.paging,t.paging)),this.options=this.mergeOptions(t),this.processColumnWidthsOptions(),!this.options.slot)throw Error('\"slot\" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('\"dataTable\" parameter is required to initialize EasyDataGrid');this.dataTable=t.dataTable,this.eventEmitter=new F(this),this.cellRendererStore=new at(t),this.columns=new Q(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const e=R.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),i=R.assignDeep({},this.defaultDataGridOptions.paging,t.paging),s=R.assign({},this.defaultDataGridOptions,t);return s.columnWidths=e,s.paging=i,s}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;R.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),R.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[I.Bool]=Object.assign(Object.assign({},t.boolColumns),t[I.Bool]),R.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const e=[...R.getStringDataTypes(),...R.getNumericDataTypes(),...R.getDateDataTypes(),I.Bool];R.getAllDataTypes().forEach((i=>{i in e||(t[i]=Object.assign(Object.assign({},t.otherColumns),t[i]))})),t[I.Unknown]=t.otherColumns}setSlot(t){if(\"string\"==typeof t){if(t.length)if(\"#\"===t[0])this.slot=document.getElementById(t.substring(1));else{if(\".\"!==t[0])throw Error(\"Unrecognized slot parameter (Must be id, class or HTMLElement): \"+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(t){t.onInit&&this.addEventListener(\"init\",t.onInit),t.onRowClick&&this.addEventListener(\"rowClick\",t.onRowClick),t.onRowDbClick&&this.addEventListener(\"rowDbClick\",t.onRowDbClick),t.onPlusButtonClick&&this.addEventListener(\"plusButtonClick\",t.onPlusButtonClick),t.onColumnChanged&&this.addEventListener(\"columnChanged\",t.onColumnChanged),t.onColumnDeleted&&this.addEventListener(\"columnDeleted\",t.onColumnDeleted),t.onColumnMoved&&this.addEventListener(\"columnMoved\",t.onColumnMoved),t.onPageChanged&&this.addEventListener(\"pageChanged\",t.onPageChanged),t.onActiveRowChanged&&this.addEventListener(\"activeRowChanged\",t.onActiveRowChanged),this.addEventListener(\"pageChanged\",(t=>this.activeRowIndex=-1)),R.assignDeep(this.paginationOptions,t.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&Y.registerDropContainer({element:this.slot,scopes:[\"gridColumnMove\"],onDragEnter:(t,e)=>{this.slot.classList.add(`${B}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(t,e)=>{e.dropEffect=G.Forbid,this.slot.classList.remove(`${B}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:\"columnMoved\",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent(\"init\")}fireEvent(t){\"string\"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=\"\"}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=\"\"}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement(\"div\"),this.rootDiv.style.width=\"100%\",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let t=document.createElement(\"div\");t.classList.add(`${this.cssPrefix}-container`),t.appendChild(this.rootDiv),this.slot.appendChild(t);const e=this.options.columnWidths.autoResize!==K.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,e&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:36)*this.options.viewportRowsCount;return z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,z(this.bodyViewportDiv).setStyle(\"height\",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=z(\"div\").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=z(\"div\",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=z(\"div\",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=z(\"div\",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&z(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();z(this.headerCellContainerDiv).setStyle(\"width\",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(t,e){let i=z(\"div\").addClass(`${this.cssPrefix}-header-cell`).data(\"col-idx\",`${e}`).setStyle(\"width\",`${t.width}px`);t.dataColumn&&i.data(\"col-id\",`${t.dataColumn.id}`);let s=i.toDOM();return z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-resize`),t.isRowNum||z(\"div\",s).addClass(`${this.cssPrefix}-header-cell-label`).text(t.label),t.description&&z(\"div\",s).addClass(\"question-mark\").title(t.description),this.options.allowDragDrop&&Y.registerDraggableItem({element:s,scope:\"gridColumnMove\",data:{column:t},renderer:e=>{e.innerHTML=\"\";const i=document.createElement(\"div\");i.innerText=t.label,e.classList.add(`${this.cssPrefix}-sortable-helper`),e.appendChild(i)},onDragStart:t=>{t.dropEffect=G.Allow}}),s}renderBody(){this.bodyDiv=z(\"div\").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=z(\"div\",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr(\"tabIndex\",\"0\").toDOM(),this.bodyCellContainerDiv=z(\"div\",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const t=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((e=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML=\"\",this.prevRowTotals=null;let i=0;if(e.length){const s=t?this.options.aggregates.settings.getGroups():[];i=e.length{if(t&&this.updateTotalsState(s,e),n(console.error(t),0)))),this.bodyViewportDiv.addEventListener(\"scroll\",(t=>{z(this.headerViewportDiv).setStyle(\"margin-left\",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener(\"keydown\",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,e,i=!1){const s=this.options.aggregates.settings;if(this.prevRowTotals&&s.hasGroups()){let i=-1;for(let n=1;n<=t.length;n++){const o=t[n-1];for(const t of o.columns)if(!s.compareValues(this.prevRowTotals.getValue(t),e.getValue(t))){i=n;break}if(-1!==i)break}if(-1!==i)for(let e=t.length;e>=i;e--){const t=new N(this.dataTable.columns,this.prevRowTotals.toArray()),i=this.renderTotalsRow(e,t);this.bodyCellContainerDiv.appendChild(i)}}if(i&&s.hasGrandTotals()&&s.hasAggregates()){const t=this.renderTotalsRow(0,e);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=e}applyGroupColumnTemplate(t,e,i){let s=t.replace(/{{\\s*GroupValue\\s*}}/g,e?`${e}`:\"-\");return s=s.replace(/{{\\s*GroupCount\\s*}}/g,i?`${i}`:\"-\"),s}renderTotalsRow(t,e){const i=this.options.aggregates.settings,s=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},n=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data(\"totals-level\",`${t}`).attr(\"tabindex\",\"-1\").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let o=\"\";const a=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&s.columns.indexOf(t.dataColumn.id)>=0&&(o=e.getValue(a)),a==this.dataTable.columns.count-1&&(o=\". . . . . .\"),n.appendChild(this.renderCell(t,i,o,n))}));const o=this.options.aggregates.calculator.getAggrContainer(),a=i.getAggregates().map((t=>t.colId)),r=i.buildGroupKey(s,e);return o.getAggregateData(t,r).then((o=>{for(const t of a)e.setValue(t,o[t]);n.innerHTML=\"\",this.columns.getItems().forEach(((r,l)=>{if(!r.isVisible)return;let d=\"\";const h=r.isRowNum?-1:this.dataTable.columns.getIndex(r.dataColumn.id);if(!r.isRowNum){let c=!1;if(r.dataColumn){const i=s.columns.indexOf(r.dataColumn.id),n=a.indexOf(r.dataColumn.id);c=t>0?i==s.columns.length-1:0==h,(i>=0||n>=0)&&(d=e.getValue(h))}let u=\"\";t>0&&(u=r.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&c&&(u=\"{{GroupValue}} ({{GroupCount}})\")),u&&(d=this.renderCell(r,l,d,n).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,o[i.COUNT_FIELD_NAME]))}const c=this.renderCell(r,l,d,n);n.appendChild(c)}))})).catch((t=>console.error(t))),n}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case\"ArrowLeft\":case\"ArrowRight\":break;case\"ArrowUp\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case\"ArrowDown\":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&n<=o&&t.top>0&&t.bottomo&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+n-o),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>a&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-a)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=z(\"div\").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML=\"\",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const e=z(\"div\").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const i=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,s=t?i+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n=\"?\"),e.innerHTML=k.getText(\"GridPageInfo\").replace(\"{FirstPageRecordNum}\",`${i.toString()}`).replace(\"{LastPageRecordNum}\",`${s.toString()}`).replace(\"{Total}\",`${n}`)}return e}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),s=z(\"div\").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?\"odd\":\"even\"}`).data(\"row-idx\",`${i}`).attr(\"tabindex\",\"-1\").on(\"click\",(i=>{this.activeRowIndex=e,this.fireEvent({type:\"rowClick\",row:t,rowIndex:e,sourceEvent:i})})).on(\"dblclick\",(i=>{this.fireEvent({type:\"rowDbClick\",row:t,rowIndex:e,sourceEvent:i})}));0==e&&s.addClass(`${this.cssPrefix}-row-first`);let n=s.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&s.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,s)=>{if(!e.isVisible)return;const o=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let a=e.isRowNum?i+1:t.getValue(o);n.appendChild(this.renderCell(e,s,a,n))})),n}renderCell(t,e,i,s){const n=z(\"div\").addClass(`${this.cssPrefix}-cell`).data(\"col-idx\",`${e}`).attr(\"tabindex\",\"-1\").setStyle(\"width\",`${t.width}px`);t.align==J.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):t.align==J.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):t.align==J.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const o=n.toDOM(),a=o.appendChild(z(\"div\").addClass(`${this.cssPrefix}-cell-value`).toDOM()),r=this.getCellRenderer(t);return r&&r(i,t,a,s),o}getCellRenderer(t){let e;return e=t.isRowNum?this.cellRendererStore.getDefaultRendererByType(et.NUMBER):this.cellRendererStore.getDefaultRenderer(t.type),this.options&&this.options.onGetCellRenderer&&(e=this.options.onGetCellRenderer(t,e)||e),e}setPage(t){this.pagination.page=t,this.fireEvent({type:\"pageChanged\",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement(\"div\");t.className=`${this.cssPrefix}-pagination-wrapper`;const e=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&e>0){const e=this.paginationOptions.useBootstrap?\"\":`${this.cssPrefix}-`,i=t=>{const e=t.target;if(e.hasAttribute(\"data-page\")){const t=parseInt(e.getAttribute(\"data-page\"));this.setPage(t)}},s=(t,s,n,o,a)=>{const r=document.createElement(\"li\");if(r.className=`${e}page-item`,!o){a&&(r.className+=\" active\");const n=document.createElement(\"a\");return n.setAttribute(\"href\",\"javascript:void(0)\"),n.innerHTML=s||t.toString(),n.setAttribute(\"data-page\",`${t}`),n.className=`${e}page-link`,n.addEventListener(\"click\",i),r.appendChild(n),r}let l=document.createElement(\"span\");if(l.setAttribute(\"aria-hidden\",\"true\"),l.className=`${e}page-link`,n)r.className+=\" disabled\";else{if(this.paginationOptions.useBootstrap)l=document.createElement(\"a\"),l.setAttribute(\"href\",\"javascript:void(0)\"),l.setAttribute(\"data-page\",`${t}`);else{let e=document.createElement(\"a\");e.setAttribute(\"href\",\"javascript:void(0)\"),e.setAttribute(\"data-page\",`${t}`),l=e}l.className=`${e}page-link`,l.addEventListener(\"click\",i)}return l.innerHTML=s,r.appendChild(l),r};if(this.dataTable.elasticChunks){const i=this.pagination.page||1;let n=document.createElement(\"ul\");n.className=`${e}pagination`;let o=s(i-1,\"«\",1==i,!0,!1);n.appendChild(o),o=s(i+1,\"»\",this.isLastPage(),!0,!1),n.appendChild(o),t.appendChild(n)}else if(this.pagination.total>this.pagination.pageSize){const i=this.pagination.page||1,n=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,o=this.paginationOptions.maxButtonCount||10,a=i-1;let r=a-a%o+1,l=r+o-1;l>n&&(l=n);let d=document.createElement(\"ul\");d.className=`${e}pagination`;let h=s(r-1,\"«\",1==r,!0,!1);d.appendChild(h);for(let t=r;t<=l;t++)h=s(t,t.toString(),!1,!1,t==i),d.appendChild(h);h=s(l+1,\"»\",l==n,!0,!1),d.appendChild(h),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const e=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},i=document.createElement(\"div\");i.className=`${this.cssPrefix}-page-sizes`;const s=document.createElement(\"div\");s.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,i.appendChild(s);const n=document.createElement(\"select\"),o=this.options.paging.pageSizeItems||[],a=new Set(o);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement(\"option\");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),s.appendChild(n),n.addEventListener(\"change\",e);const r=document.createElement(\"div\");r.className=`${this.cssPrefix}-page-sizes-label`,i.appendChild(r);const l=document.createElement(\"span\");l.innerText=k.getText(\"GridItemsPerPage\"),r.appendChild(l),t.appendChild(i)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?z(\"div\").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||\"Add\").addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").on(\"click\",(t=>{t.preventDefault(),this.fireEvent({type:\"plusButtonClick\",sourceEvent:t})})))).toDOM():z(\"span\").addText(\"#\").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),s=[];for(let t=1;t=n.x&&t<=n.x+this.landingSlot.offsetWidth)return;let o=this.landingIndex;for(let e of s){const i=$(e),s=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:\"activeRowChanged\",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let l=0;if(a>0)e+=a,o.width=a,r.forEach((t=>{t.parentElement.style.width=`${a}px`})),s[n].style.width=`${a}px`;else if(0==r.length&&(s[n].style.width=null,s[n].style.whiteSpace=\"nowrap\"),l=s[n].offsetWidth,r.length>0){r.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>l&&(l=e)})),l+=3;const t=o.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[o.dataColumn.type].max||2e3,i=o.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[o.dataColumn.type].min||20;l>t&&(l=t),l{t.parentElement.style.width=`${l}px`})),s[n].style.width=`${l}px`,o.dataColumn&&(o.dataColumn.calculatedWidth=l)}else e+=l;n++}e>0?(this.bodyCellContainerDiv.style.width=`${e}px`,this.headerCellContainerDiv.style.width=`${e}px`):(this.bodyCellContainerDiv.style.width=t,this.headerCellContainerDiv.style.width=t),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute(\"style\")}}class lt{get cssPrefix(){return\"kdtp-cal\"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange=\"c-10:c+10\")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class dt{get cssPrefix(){return\"kdtp\"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body);this.slot.style.top=e.y+t.clientHeight+\"px\",this.slot.style.left=e.x+\"px\"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class ht extends lt{constructor(t,e){super(t,e),this.daysOfWeek=[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],this.months=[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),z(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=z(\"div\",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=k.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),e=z(\"input\").attr(\"placeholder\",t).addClass(`${this.cssPrefix}-header-input`);return e.mask(t.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\")).on(\"input\",(i=>{e.removeClass(\"error\");try{this.isManualInputChanging=!0;const e=R.strToDateTime(this.manualInputElem.value,t);this.currentDate=e,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){e.addClass(\"error\")}finally{this.isManualInputChanging=!1}})).on(\"keydown\",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf(\"error\")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on(\"focus\",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=e.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=k.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=k.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString(\"en\"==t?void 0:t,{year:\"numeric\",month:\"long\",day:\"numeric\"})}}renderCalendarButtons(){return z(\"nav\").addClass(`${this.cssPrefix}-nav`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on(\"click\",(()=>{this.prev()})).addChild(\"span\",(t=>t.html(\"‹\"))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild(\"select\",(t=>{t.on(\"change\",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr(\"value\",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild(\"select\",(t=>this.selectYearElem=t.on(\"change\",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on(\"click\",(()=>{this.next()})).addChild(\"span\",(t=>t.html(\"›\"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\\d*):c\\+(\\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML=\"\";for(let t=0;t<=e+i;t++){let i=document.createElement(\"option\"),s=this.selectedYear-e+t;i.value=s.toString(),i.innerText=s.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML=\"\",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{z(\"div\",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:\"\").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute(\"data-date\"))),this.dateChanged(this.options.oneClickDateSelection)}));s===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),s===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const n=(t+s-1)%7;0!=n&&6!=n||e.addClass(`${this.cssPrefix}-weekend`),\"function\"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,s)])}const s=(t+e)%7,n=0==s?0:7-s;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Hours\").addChild(\"input\",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"23\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild(\"div\",(t=>t.addClass(`${this.cssPrefix}-time-row`).title(\"Minutes\").addChild(\"input\",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type(\"range\").attr(\"min\",\"0\").attr(\"max\",\"59\").attr(\"step\",\"1\").on(\"input\",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=k.getCurrentLocale(),e=this.currentTime.toLocaleString(\"en\"==t?void 0:t,{hour:\"numeric\",minute:\"numeric\"});this.timeText.innerText=e}}class pt extends dt{render(){const t=z(\"div\",document.body).addClass(`${this.cssPrefix}`).attr(\"tabIndex\",\"0\").setStyle(\"position\",\"absolute\").setStyle(\"top\",\"-1000px\").setStyle(\"left\",\"-1000px\").on(\"keydown\",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle(\"z-index\",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener(\"mousedown\",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=z(\"div\",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild(\"button\",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(k.getText(\"ButtonNow\")).on(\"click\",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(k.getText(\"ButtonApply\")).on(\"click\",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild(\"button\",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(k.getText(\"ButtonCancel\")).on(\"click\",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new ht(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=z(\"div\",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new ut(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=$(t||document.body),i=$(t?t.parentElement||t:document.body);this.slot.style.top=i.y+\"px\",this.slot.style.left=e.x+\"px\"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener(\"mousedown\",this.globalMouseDownHandler,!0)}),1)}}var gt;!function(t){t[t.Left=1]=\"Left\",t[t.Center=2]=\"Center\",t[t.Right=3]=\"Right\"}(gt||(gt={}));const mt=\"kdlg\";class ft{openConfirm(t,e,i){const s={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(s.onSubmit=()=>{i(!0)},s.onCancel=()=>{i(!1)},void this.open(s)):new Promise((t=>{s.onSubmit=()=>{t(!0)},s.onCancel=()=>{t(!1)},this.open(s)}))}openPrompt(t,e,i,s){const n={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \\n
    \\n \\n \\n
    \\n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${mt}-dialog-form-input`);i&&(t.value=i),t.focus()}},o=t=>{const e=document.getElementById(`${mt}-dialog-form-input`),i=e.value;return i&&i.replace(/\\s/g,\"\").length>0?(t(i),!0):(e.classList.add(\"eqjs-invalid\"),!1)};return s?(n.onSubmit=()=>o(s),n.onCancel=()=>{s(\"\")},void this.open(n)):new Promise((t=>{n.onSubmit=()=>o(t),n.onCancel=()=>{t(\"\")},this.open(n)}))}open(t,e){const i=new yt(t,e),s=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),s&&s(t)},i.open(),this.track(i),i}createSet(t){return new vt(t,this)}untrack(t){const e=ft.openDialogs.indexOf(t);e>=0&&ft.openDialogs.splice(e,1)}track(t){ft.openDialogs.push(t)}openProgress(t){const e=new Dt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ft.openDialogs)}closeAllDialogs(){for(const t of Array.from(ft.openDialogs))t.close()}}ft.openDialogs=[];class yt{constructor(t,e){this.options=t,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener(\"keydown\",this.keydownHandler,!1),!1),this.dialogId=R.generateId(\"dlg\"),this.data=e,this.slot=z(\"div\",document.body).attr(\"tab-index\",\"-1\").data(\"dialog-id\",this.dialogId).addClass(`${mt}-modal`,\"is-active\").focus().addChild(\"div\",(t=>t.addClass(\"kdlg-modal-background\"))).addChild(\"div\",(i=>this.windowElement=i.addClass(`${mt}-modal-window`).addChild(\"header\",(e=>{this.headerElement=e.addClass(`${mt}-header`).addChild(\"p\",(e=>e.addClass(`${mt}-header-title`).addText(t.title))).toDOM(),!1!==t.closable&&e.addChild(\"button\",(t=>t.addClass(`${mt}-modal-close`).on(\"click\",(()=>{this.cancelHandler()})).focus()))})).addChild(\"div\",(t=>{t.addClass(`${mt}-alert-container`),this.alertElement=t.toDOM()})).addChild(\"section\",(i=>{if(this.bodyElement=i.addClass(`${mt}-body`).toDOM(),\"string\"==typeof t.body){const s=P.renderLiquidTemplate(t.body,e);i.addHtml(s)}else i.addChildElement(t.body)})).addChild(\"footer\",(e=>{let i=null;i=t.footerAlignment&&t.footerAlignment==gt.Center?\"align-center\":\"align-right\",this.footerElement=e.addClass(`${mt}-footer`).toDOM(),e.addClass(i),!1!==t.submitable&&(e.addChild(\"button\",(e=>{e.id(this.dialogId+\"-btn-submit\").addClass(\"kfrm-button\",\"is-info\").addText(t.submitButtonText||k.getText(\"ButtonOK\")),t.recaptchaSiteKey?(e.data(\"sitekey\",t.recaptchaSiteKey),e.addClass(\"g-recaptcha\"),e.on(\"click\",(e=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(t.recaptchaSiteKey,{action:\"submit\"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):e.on(\"click\",(t=>{this.submitHandler()})),e.focus()})),!1!==t.cancelable&&e.addChild(\"button\",(e=>e.id(this.dialogId+\"-btn-cancel\").addClass(\"kfrm-button\").addText(t.cancelButtonText||k.getText(\"ButtonCancel\")).on(\"click\",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+\"-btn-submit\")}getCancelButtonElement(){return document.getElementById(this.dialogId+\"-btn-cancel\")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),z(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${mt}-modal-window`);this.options.height&&(t.style.height=\"string\"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width=\"string\"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener(\"keydown\",this.keydownHandler,!1),this.slot.querySelectorAll(\"input\").forEach((t=>t.addEventListener(\"input\",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll(\"button\").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let s=z(\"div\").addClass(`${mt}-alert ${e||\"\"}`).addChild(\"span\",(t=>t.addClass(`${mt}-alert-closebtn`).text(\"×\").on(\"click\",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(s)}clearAlert(){this.alertElement.innerHTML=\"\"}destroy(){document.querySelectorAll(`[data-dialog-id=\"${this.dialogId}\"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener(\"keydown\",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(\".kdlg-modal\");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(\".kdlg-modal-window\");for(let i=0;ii=e.text(t.content||\"\").toDOM())).addChild(\"div\",(e=>{e.addClass(`${mt}-progress-line`).addChild(\"div\",(e=>{s=e.addClass(\"fill\").toDOM(),t.determinated?e.setStyle(\"width\",\"0%\"):e.addClass(\"indeterminate\")}))})).toDOM();super({title:t.title,body:n,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=s}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+\"%\",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class vt{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}var Ct,wt;k.updateDefaultTexts({GridPageInfo:\"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records\",GridItemsPerPage:\"items per page\",ButtonOK:\"OK\",ButtonCancel:\"Cancel\",ButtonApply:\"Apply\",ButtonNow:\"Now\",LblTotal:\"Total\"}),function(t){t[t.THIS_WEEK=0]=\"THIS_WEEK\",t[t.LAST_WEEK=1]=\"LAST_WEEK\",t[t.THIS_MONTH=2]=\"THIS_MONTH\",t[t.FIRST_MONTH=3]=\"FIRST_MONTH\",t[t.LAST_MONTH=4]=\"LAST_MONTH\",t[t.THIS_YEAR=5]=\"THIS_YEAR\",t[t.QUARTER_1=6]=\"QUARTER_1\",t[t.QUARTER_2=7]=\"QUARTER_2\",t[t.QUARTER_3=8]=\"QUARTER_3\",t[t.QUARTER_4=9]=\"QUARTER_4\"}(Ct||(Ct={})),function(t){t.UNDEF=\"-1\",t.TODAY=\"1\",t.YESTERDAY=\"2\",t.TOMORROW=\"3\",t.WEEK_START=\"4\",t.WEEK_END=\"5\",t.MONTH_START=\"6\",t.MONTH_END=\"7\",t.YEAR_START=\"8\",t.YEAR_END=\"9\"}(wt||(wt={}));const Tt=\"yyyy-MM-dd\",bt=\"HH:mm\",xt=e=>{const i=d.getLocaleSettings();return e==t.Date?i.editDateFormat:e==t.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},Et=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event(\"ed_set_location\"))};class It{}class St extends It{constructor(){super(),this.name=\"DateTime\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.getDateDataTypes().indexOf(t.dataType)>=0)try{const i=xt(t.dataType);l.strToDateTime(e,i)}catch(t){return{successed:!1,messages:[d.getText(\"DateTimeError\")]}}return{successed:!0}}}class Mt{constructor(t){this.context=t,this.validators=[new St]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(\".errors-block\")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll(\"input, select\"));let e=!0;for(const i of t){const t=this.context.getMetaData().getAttributeById(i.name);if(\"checkbox\"===i.type)continue;const s=this.validateValue(t,i.value);if(!s.successed){e&&z(this.errorsDiv).addChild(\"ul\"),e=!1;for(const e of s.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(i,s.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],s=Array.from(this.html.querySelectorAll(\"input, select, textarea\"));let n={};for(const t of s){const e=t.name.substring(t.name.lastIndexOf(\".\")+1),s=this.context.getMetaData().getAttributeById(t.name);\"checkbox\"===t.type?n[e]=t.checked:\"file\"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>n[e]=t))):n[e]=this.mapValue(s.dataType,t.value)}Promise.all(i).then((()=>t(n))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const s=new FileReader;s.readAsDataURL(t),s.onload=()=>{const t=s.result.toString();e(t.substring(t.indexOf(\",\")+1))},s.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(e,i){if(l.getDateDataTypes().indexOf(e)>=0){if(e!==t.Time&&i&&i.length){const n=xt(e),o=(s=e)==t.Date?Tt:s==t.Time?bt:`${Tt}T${bt}`,a=l.strToDateTime(i,n);return d.dateTimeToStr(a,o)}return i&&i.length?i:null}var s;return l.isIntType(e)?parseInt(i):l.isNumericType(e)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML=\"\",this.html.querySelectorAll(\"input, select\").forEach((t=>{t.classList.remove(\"is-valid\"),t.classList.remove(\"is-invalid\")}))}markInputValid(t,e){t.classList.add(e?\"is-valid\":\"is-invalid\")}validateValue(t,e){const i={successed:!0,messages:[]};for(const s of this.validators){const n=s.validate(t,e);n.successed||(i.successed=!1,i.messages=i.messages.concat(n.messages))}return i}}class Rt{constructor(t,e,i,s){this.slot=t,this.grid=e,this.filter=i,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=l.assignDeep(this.options,s||{});const n=this.grid.cellRendererStore.getDefaultRendererByType(et.STRING);this.grid.cellRendererStore.setDefaultRenderer(et.STRING,((t,e,i,s)=>this.highlightCellRenderer(n,t,e,i,s)));const o=this.grid.cellRendererStore.getDefaultRendererByType(et.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(et.NUMBER,((t,e,i,s)=>this.highlightCellRenderer(o,t,e,i,s))),this.render()}render(){const t=O.IsIE()?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",e=O.IsIE()||O.IsEdge();z(this.slot).addClass(t).addChild(\"div\",(t=>{t.addClass(\"control\").addChild(\"input\",(t=>{this.filterInput=t.toDOM(),t.attr(\"placeholder\",d.getText(\"SearchInputPlaceholder\")).type(\"text\"),t.on(\"keydown\",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on(\"keyup\",this.inputKeyupHandler.bind(this))})),e||t.addClass(\"has-icons-right\").addChild(\"span\",(t=>{t.addClass(\"icon\").addClass(\"is-right\").addClass(\"is-clickable\").html(\"🗙\").on(\"click\",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||z(this.slot).addChild(\"button\",(t=>t.addClass(\"kfrm-button\").addText(d.getText(\"SearchBtn\")).on(\"click\",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value=\"\",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return(!t||e!=this.filterInput.value)&&(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),!0)}highlightCellRenderer(t,e,i,s,n){if((l.isNumericType(i.type)||l.getStringDataTypes().indexOf(i.type)>=0)&&e){e=i.dataColumn&&i.dataColumn.displayFormat&&tt.test(i.dataColumn.displayFormat)?i.dataColumn.displayFormat.replace(tt,((t,i)=>d.numberToStr(e,i))):e.toLocaleString();const t=this.highlightText(e.toString());if(t instanceof HTMLElement)return s.title=e,void s.appendChild(t)}t(e,i,s,n)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const s=[],n=i.split(\"||\").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(s.push({index:t,length:n[i].length}),o=t+a.length):o++}}}if(s.length>0){s.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(s[t].length+=i),s.splice(t+1,1)}else t++}const e=document.createElement(\"div\");for(let i=0;it.id==e.lookupEntity))[0],o=this.context.getMetaData().getAttributeById(e.dataAttr);if(!o)return;i=i||!o.isEditable,s=this.params.values?this.params.values.getValue(o.id):void 0;const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\";let r;z(t).addChild(\"div\",(t=>{t.addClass(a).addChild(\"input\",(t=>{r=t.toDOM(),t.attr(\"readonly\",\"\"),t.name(o.id),t.type(this.resolveInputType(o.dataType)),t.value(l.IsDefinedAndNotNull(s)?s.toString():\"\")})),i||t.addChild(\"button\",(t=>t.addClass(\"kfrm-button\").attr(\"title\",d.getText(\"NavigationBtnTitle\")).addText(\"...\").on(\"click\",(i=>{const s=new b({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:n.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:n.id}).then((i=>{for(const t of i.table.columns.getItems()){const e=n.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&s.columns.add(t)}s.setTotal(i.total);for(const t of i.table.getCachedRows())s.addRow(t);const o=new ft;let a,l=null,h=null;const c=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"kfrm-field\").addChild(\"label\",(t=>t.addText(d.getText(\"LookupSelectedItem\")).toDOM())).addChild(\"div\",(t=>h=t.addText(\"None\").toDOM())))).addChild(\"div\",(t=>a=t.toDOM())).addChild(\"div\",(t=>t.addClass(\"kfrm-control\").addChild(\"div\",(t=>l=t.toDOM())))).toDOM();let u=r.value;const p=t=>{h.innerHTML=s.columns.getItems().map((e=>`${e.label}: ${((t,e)=>t instanceof T?t.getValue(e):t[e.substring(e.lastIndexOf(\".\")+1)])(t,e.id)}`)).join(\", \")};if(u){const t=n.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(\".\")+1);this.context.fetchRecord({[e]:u},n.id).then((t=>{t.entity&&p(t.entity)})).catch((t=>{console.error(t)}))}const g=new rt({slot:l,dataTable:s,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{g.getData().getRow(t.rowIndex).then((t=>{u=t.getValue(e.lookupDataAttr),p(t)}))}});o.open({title:d.getText(\"LookupDlgCaption\").replace(\"{entity}\",n.caption),body:c,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(n.id,g.getData(),!0);new Rt(a,g,t,{instantMode:!0,focus:!0})},onSubmit:()=>(r.value=u,!0),onDestroy:()=>{g.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(e,i,s,n,o){const a=kt?\"kfrm-fields-ie is-horizontal\":\"kfrm-fields is-horizontal\",r=xt(i.dataType);let h;const c=r.replace(\"yyyy\",\"9999\").replace(\"MM\",\"99\").replace(\"dd\",\"99\").replace(\"HH\",\"99\").replace(\"mm\",\"99\").replace(\"ss\",\"99\");z(e).addChild(\"div\",(e=>{e.addClass(a).addChild(\"input\",(t=>{h=t.toDOM(),t.name(i.id),t.type(o?\"hidden\":this.resolveInputType(i.dataType)),n?t.attr(\"readonly\",\"\"):(t.mask(c),t.on(\"keypress\",(t=>this.applySumbit(t))).on(\"input\",(e=>{t.removeClass(\"is-invalid\");try{l.strToDateTime(h.value,r)}catch(e){t.addClass(\"is-invalid\")}})).on(\"blur\",(t=>{h.value===c.replace(/[9]/g,\"_\")&&(h.value=\"\")}))),t.value(l.IsDefinedAndNotNull(s)?d.dateTimeToStr(s,r):\"\")})),n||e.addChild(\"button\",(e=>e.addClass(\"kfrm-button\").attr(\"title\",d.getText(i.dataType!==t.Time?\"CalendarBtnTitle\":\"TimerBtnTitle\")).addChild(\"i\",(e=>e.addClass(i.dataType!==t.Time?\"ed-calendar-icon\":\"ed-timer-icon\"))).on(\"click\",(e=>{let s;try{s=h.value.length?i.dataType!==t.Time?l.strToDateTime(h.value,r):l.strToTime(h.value):new Date((new Date).setSeconds(0))}catch(t){s=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:i.dataType!==t.Time,showTimePicker:i.dataType!==t.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),h.value=d.dateTimeToStr(t,r)}},o=new pt(n);o.setDateTime(s),o.show(e.target)})).toDOM()))}))}setupListField(t,e,i,s,n){z(t).addChild(\"div\",(t=>t.addClass(\"kfrm-select full-width\").addChild(\"select\",(t=>{if(n&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.on(\"keypress\",(t=>this.applySumbit(t))),s)for(let e=0;e{i&&t.attr(\"readonly\",\"\"),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr(\"accept\",s)}))}setupTextField(e,i,s,n,o){z(e).addChild(\"input\",(e=>{n&&e.attr(\"readonly\",\"\"),e.type(o?\"hidden\":this.resolveInputType(i.dataType)),e.name(i.id).type(this.resolveInputType(i.dataType)),i.dataType==t.Bool?s&&e.attr(\"checked\",\"\"):e.on(\"keypress\",(t=>this.applySumbit(t))).value(l.IsDefinedAndNotNull(s)?s.toString():\"\")}))}setupTextArea(t,e,i,s){z(t).addChild(\"textarea\",(t=>{s&&t.attr(\"readonly\",\"\"),t.attr(\"name\",e.id),t.setStyle(\"height\",\"120px\"),t.value(l.IsDefinedAndNotNull(i)?i.toString():\"\")}))}addFormField(t,i){const s=this.params.values&&i.kind!==e.Lookup?this.params.values.getValue(i.id):this.params.isEditForm?void 0:i.defaultValue,r=this.resolveEditor(i),l=this.params.isEditForm&&(i.isPrimaryKey||!i.isEditable),d=!i.isNullable;kt&&(t=z(\"div\",t).addClass(\"kfrm-field-ie\").toDOM()),z(t).addChild(\"label\",(t=>{t.attr(\"for\",i.id),t.addHtml(`${i.caption} ${d?'*':\"\"}: `),i.description&&t.addChild(\"div\",(t=>t.attr(\"title\",i.description).addClass(\"question-mark\").setStyle(\"vertical-align\",\"middle\").setStyle(\"display\",\"inline-block\")))}));const h=i.isPrimaryKey;if(i.kind!==e.Lookup)switch(r.tag){case n:this.setupDateTimeField(t,i,s,l,h);break;case o:this.setupListField(t,i,s,r.values,l);break;case a:this.setupFileField(t,i,l,r.accept);break;default:r.multiline?this.setupTextArea(t,i,s,l):this.setupTextField(t,i,s,l,h)}else this.setupLookupField(t,i,l,s)}resolveInputType(e){return e===t.Bool?\"checkbox\":e===t.Blob?\"file\":\"text\"}resolveEditor(t){let e=t.defaultEditor||new D;return e.tag==i&&(l.getDateDataTypes().indexOf(t.dataType)>=0?e.tag=n:e.tag=s),e}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=z(\"div\").addClass(\"kfrm-form\").addChild(\"div\",(t=>t.addClass(\"errors-block\").toDOM())).addChild(\"div\",(e=>{e.addClass(\"\"+(kt?\"kfrm-fields-ie col-ie-1-4 label-align-right\":\"kfrm-fields col-a-1 label-align-right\")),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class Pt{constructor(t){this.slot=t,this.hide(),this.slot.classList.add(\"ed-progress-bar\")}show(){this.slot.style.removeProperty(\"display\")}hide(){this.slot.style.display=\"none\"}}class Ot{constructor(t){this.context=t}loadChunk(t){const e=this.context.resolveEndpoint(\"FetchDataset\",{sourceId:t.sourceId||this.context.getActiveEntity().id});delete t.sourceId,this.context.startProcess();return this.context.getHttpClient().post(e,t).then((e=>{const i=new b({chunkSize:1e3}),s=e.resultSet;for(const t of s.cols)i.columns.add(t);for(const t of s.rows)i.addRow(t);let n=0;return e.meta&&e.meta.totalRecords&&(n=e.meta.totalRecords),{table:i,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class Nt{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\\{.*?\\}/g,this.options=t||{},this.http=new m,this.model=new v,this.model.id=t.metaDataId||\"__default\",this.dataLoader=new Ot(this);const e=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new b(e),this.setDefaultEndpoints(this.options.endpoint||\"/api/easydata\")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new E(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint(\"GetMetaData\");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint(\"FetchRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint(\"CreateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint(\"UpdateRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint(\"DeleteRecord\",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:\"json\"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+\" endpoint is not defined\";let s=i.match(this.endpointVarsRegex);if(s)for(let t of s){let s=t.substring(1,t.length-1),n=e[s];if(!n)if(\"modelId\"==s)n=this.model.getId();else{if(\"sourceId\"!=s)throw`Parameter [${s}] is not defined`;n=this.activeEntity.id}i=i.replace(t,n)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist(\"GetMetaData\",x(t,\"models/{modelId}\")),this.setEnpointIfNotExist(\"FetchDataset\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"FetchRecord\",x(t,\"models/{modelId}/sources/{sourceId}/fetch\")),this.setEnpointIfNotExist(\"CreateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/create\")),this.setEnpointIfNotExist(\"UpdateRecord\",x(t,\"models/{modelId}/sources/{sourceId}/update\")),this.setEnpointIfNotExist(\"DeleteRecord\",x(t,\"models/{modelId}/sources/{sourceId}/delete\"))}}class Lt extends It{constructor(){super(),this.name=\"Type\"}validate(t,e){if(!l.IsDefinedAndNotNull(e)||\"\"==e)return{successed:!0};if(l.isNumericType(t.dataType)){if(!l.isNumeric(e))return{successed:!1,messages:[d.getText(\"NumberError\")]};if(l.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(e)))return{successed:!1,messages:[d.getText(\"IntNumberError\")]}}return{successed:!0}}}class Ft extends It{constructor(){super(),this.name=\"Required\"}validate(t,e){return t.isNullable||l.IsDefinedAndNotNull(e)&&\"\"!==e?{successed:!0}:{successed:!1,messages:[d.getText(\"RequiredError\")]}}}class $t{constructor(t,e,i,s){this.slot=t,this.context=e,this.basePath=i,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new Ft,new Lt],this.options=l.assignDeep(this.options,s||{}),this.dlg=new ft;const n=this.context.getActiveEntity();if(!n)throw\"Can't find active entity for \"+window.location.pathname;this.slot.innerHTML+=`

    ${n.captionPlural||n.caption}

    `,this.options.showBackToEntities&&z(this.slot).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(`← ${d.getText(\"BackToEntities\")}`).on(\"click\",(t=>{t.preventDefault(),Et(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const e=document.createElement(\"div\");if(this.slot.appendChild(e),e.id=\"Grid\",this.grid=new rt(l.assignDeep({slot:e,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:d.getText(\"AddRecordBtnTitle\"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const i=z(\"div\").addClass(\"kfrm-form\").setStyle(\"margin\",\"10px 0px\").addChild(\"div\",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(i,e);const s=this.context.createFilter();this.filterWidget=new Rt(t,this.grid,s)}}))}manageCellRenderer(t,e){if(t.isRowNum)return t.width=110,(t,e,i,s)=>{const n=z(\"div\",i).addClass(\"keg-cell-value\");this.context.getActiveEntity().isEditable&&n.addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"EditBtn\")).on(\"click\",(t=>this.editClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\"))))))).addChild(\"span\",(t=>t.text(\" | \"))).addChild(\"a\",(t=>t.attr(\"href\",\"javascript:void(0)\").text(d.getText(\"DeleteBtn\")).on(\"click\",(t=>this.deleteClickHandler(t,parseInt(s.getAttribute(\"data-row-idx\")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),e=new At(this.context).onSubmit((()=>i.submit())).build();e.useValidators(this.defaultValidators);const i=this.dlg.open({title:d.getText(\"AddDlgCaption\").replace(\"{entity}\",t.caption),body:e.getHtml(),onSubmit:()=>{if(!e.validate())return!1;e.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const e=this.context.getActiveEntity(),i=new At(this.context,{isEditForm:!0,values:t}).onSubmit((()=>s.submit())).build();i.useValidators(this.defaultValidators);const s=this.dlg.open({title:d.getText(\"EditDlgCaption\").replace(\"{entity}\",e.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{if(t){const e=this.context.getActiveEntity(),i=e.getPrimaryAttrs(),s=i.map((e=>t.getValue(e.id))),n=i.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(\".\")+1)]=s[i],t)),{});this.dlg.openConfirm(d.getText(\"DeleteDlgCaption\").replace(\"{entity}\",e.caption),d.getText(\"DeleteDlgMessage\").replace(\"{recordId}\",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(\";\"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:\"Ooops, something went wrong\",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class Bt{constructor(t,e,i){this.slot=t,this.context=e,this.basePath=i,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${d.getText(\"RootViewTitle\")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&z(this.slot).addChild(\"div\",(e=>e.addClass(\"ed-root\").addChild(\"div\",(t=>t.addClass(\"ed-menu-description\").addText(d.getText(this.metaData.isEmpty()?\"ModelIsEmpty\":\"EntityMenuDesc\")))).addChild(\"ul\",(e=>{e.addClass(\"ed-entity-menu\"),t.forEach((t=>{e.addChild(\"li\",(e=>{e.addClass(\"ed-entity-item\").on(\"click\",(()=>{Et(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-caption\").addText(t.captionPlural||t.caption)})),t.description&&e.addChild(\"div\",(e=>{e.addClass(\"ed-entity-item-descr\").addText(`${t.description}`)}))}))}))}))))}}class Ht{constructor(t){this.options={container:\"#EasyDataContainer\",basePath:\"easydata\"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener(\"ed_set_location\",this.onSetLocation),window.addEventListener(\"popstate\",this.onSetLocation)},this.options=l.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath=\"/\"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const e=document.createElement(\"div\"),i=new Pt(e),s=this.container.parentElement;s.insertBefore(e,s.firstElementChild),this.context=new Nt({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>i.show(),onProcessEnd:()=>i.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):\"/\"}trimSlashes(t){return t.replace(/^\\/|\\/$/g,\"\")}setContainer(t){if(!t)throw\"Container is undefined\";if(\"string\"==typeof t){if(t.length){if(\".\"===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else\"#\"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error(\"Unrecognized `container` parameter: \"+t+\"\\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.\")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new $t(this.container,this.context,this.basePath,this.options)):window.EDView=new Bt(this.container,this.context,this.basePath)}clear(){this.container.innerHTML=\"\",this.context.getData().clear()}detach(){window.removeEventListener(\"ed_set_location\",this.onSetLocation),window.removeEventListener(\"popstate\",this.onSetLocation)}}d.updateDefaultTexts({RequiredError:\"Value is required.\",NumberError:\"Value should be a number\",IntNumberError:\"Value should be an integer number\",DateTimeError:\"Invalid date or time value\",LookupSelectedItem:\"Selected item: \",LookupDlgCaption:\"Select {entity}\",None:\"None\",NavigationBtnTitle:\"Navigation values\",CalendarBtnTitle:\"Open calendar\",TimerBtnTitle:\"Open timer\",AddBtnTitle:\"Add\",AddRecordBtnTitle:\"Add record\",EditBtn:\"Edit\",DeleteBtn:\"Delete\",SelectLink:\"[ select ]\",AddDlgCaption:\"Create {entity}\",EditDlgCaption:\"Edit {entity}\",DeleteDlgCaption:\"Delete {entity}\",DeleteDlgMessage:\"Are you sure you want to remove this record: {{recordId}}?\",EntityMenuDesc:\"Click on an entity to view/edit its content\",BackToEntities:\"Back to entities\",SearchBtn:\"Search\",SearchInputPlaceholder:\"Search...\",RootViewTitle:\"Entities\",ModelIsEmpty:\"No entity was found.\"});export{Nt as DataContext,Ot as EasyDataServerLoader,Ht as EasyDataViewDispatcher,$t as EntityDataView,Mt as EntityEditForm,At as EntityEditFormBuilder,Pt as ProgressBar,Ft as RequiredValidator,Bt as RootDataView,E as TextDataFilter,Rt as TextFilterWidget,Lt as TypeValidator,It as Validator};\n//# sourceMappingURL=easydata.crud.es.js.map\n"],"names":["t","e","Unknown","String","Byte","Word","Int32","Int64","Bool","Float","Currency","BCD","Date","Time","DateTime","Autoinc","Memo","Blob","FixedChar","Guid","Geometry","Geography","Data","Virtual","Lookup","s","Edit","List","CustomList","File","getDateByName","this","Today","Yesterday","setDate","getDate","Tomorrow","FirstDayOfMonth","LastDayOfMonth","setMonth","getMonth","FirstDayOfNextMonth","FirstDayOfPrevMonth","FirstDayOfYear","FirstDayOfPrevYear","setFullYear","getFullYear","FirstDayOfNextYear","FirstDayOfWeek","getDay","FirstDayOfPrevWeek","FirstDayOfNextWeek","r","o","a","h","l","u","n","Trace","Options","Get","Put","Post","Delete","d$2","constructor","xhr","method","url","headers","queryParams","data","setHeader","setQueryParam","getXMLHttpRequest","getResponseHeaders","readyState","HEADERS_RECEIVED","getAllResponseHeaders","trim","split","i","shift","join","open","UNSENT","Object","keys","length","encodeURI","map","setRequestHeader","abort","getAllDataTypes","values","filter","getDateDataTypes","getStringDataTypes","getNumericDataTypes","hasOwnProperty","has","get","Array","isArray","set","create","getPrototypeOf","push","assign","assignDeep","WeakMap","getIfDefined","IsDefinedAndNotNull","copyArrayTo","createArrayFrom","findItemById","id","findItemIndexById","indexOfArrayItem","indexOf","moveArrayItem","splice","removeArrayItem","insertArrayItem","fillArray","Math","max","min","shiftToFitWindow","document","getElementsByTagName","window","innerWidth","documentElement","clientWidth","isObject","isNumericType","isIntType","isNumeric","isNaN","parseFloat","isFinite","areCompatibleDataTypes","isPropSet","toLowerCase","toUpperCase","floor","random","parseInt","generateId","getTime","strToDateTime","replace","c","d","g","f","strToTime","g$2","request","promise","getPromise","getRequest","then","catch","finally","f$2","Error","super","status","shortDateFormat","longDateFormat","editDateFormat","shortTimeFormat","editTimeFormat","longTimeFormat","shortMonthNames","longMonthNames","shortWeekDayNames","longWeekDayNames","decimalSeparator","currency","localeId","englishName","displayName","texts","ButtonOK","ButtonCancel","Yes","No","True","False","settings","addMapper","getLocales","locale","sort","getCurrentLocale","setLocale","console","warn","setCurrentLocale","getText","getLocaleSettings","getOneLocaleSetting","getShortMonthName","getLongMonthName","getShortWeekDayName","toString","getLongWeekDayName","updateLocaleSettings","updateLocaleTexts","error","updateDefaultTexts","updateLocaleInfo","addLocale","resetLocales","toLocaleDateString","year","month","day","toLocaleTimeString","hour","minute","second","navigator","language","m","p","getHours","getMinutes","getSeconds","yyyy","yy","substring","MMMM","MMM","MM","M","dd","HH","H","hh","tt","mm","ss","y","D","dateTimeToStr","dateTimeToStrEx","numberToStr","charAt","w","Number","forEach","slice","toLocaleString","style","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","reverse","trunc","booleanToStr","isEditable","name","caption","description","parent","attributes","subEntities","loadFromData","captionPlural","namePlur","desc","ied","ents","createEntity","attrs","createEntityAttr","scan","stop","getFirstPrimaryAttr","getPrimaryAttrs","isPrimaryKey","y$2","dataType","size","isForeignKey","isNullable","showOnView","showOnCreate","showOnEdit","showInLookup","lookupAttr","expr","entity","kind","cptn","dtype","ipk","ifk","lattr","lookupEntity","lent","dataAttr","dattr","lookupDataAttr","ldattr","defaultValue","defVal","nul","ivis","sov","soc","soe","sil","displayFormat","dfmt","udata","userData","edtr","defaultEditor","getEditorById","createValueEditor","D$2","tag","resType","defValue","defval","rtype","accept","multiline","subType","getValueText","text","None","Left","Center","Right","x$2","label","type","originAttrId","isAggr","groupFooterColumnTemplate","gfct","calculatedWidth","items","mapper","_dateColumnIdx","count","add","x","updateDateColumnIdx","getItems","put","move","getIndex","getDateColumnIndexes","removeAt","clear","columns","toArray","from","getValue","RangeError","setValue","I$2","newGuid","renderLiquidTemplate","RegExp","NaN","ceil","colStore","aggregates","groups","useGrandTotals","useRecordCount","_caseSensitiveGroups","COUNT_FIELD_NAME","caseSensitiveGroups","updateCompareProc","compareValues","strictCompare","caseInsensitiveCompare","addGroup","getColumnIds","to","validateColumns","hasColumnsInUse","addAggregateColumn","validateAggregate","colId","funcId","addGrandTotals","addCounts","getGroups","concat","getInternalGroups","lastGroup","getAggregates","hasAggregates","hasGroups","hasGrandTotals","hasRecordCount","isEmpty","drop","needAggrCalculation","saveToData","ugt","urc","csg","buildGroupKey","_chunkSize","_elasticChunks","cachedRows","total","loader","needTotal","isInMemory","chunkSize","elasticChunks","inMemory","_columns","E","onUpdate","rows","createRow","addRow","getRows","pageSize","page","offset","limit","Promise","resolve","loadChunk","prototype","apply","table","getCachedRows","getCachedCount","fireUpdated","getRow","getTotal","setTotal","b","mapDate","totalIsKnown","silentMode","events","source","subscribe","getEventRecByType","I","callback","eventCallbacks","unsubscribe","fire","setTimeout","enterSilentMode","exitSilentMode","isSilent","responseBody","_responseBody","defaultHeaders","customPayload","send","post","contentType","XMLHttpRequest","XDomainRequest","beforeEachRequest","onRequest","JSON","stringify","responseType","onerror","responseText","onreadystatechange","getResponseHeader","response","parse","onResponse","decodeArrayBuffer","message","FileReader","onloadend","DONE","result","readAsText","mainEntity","rootEntity","displayFormats","Map","getMainEntity","loadFromJSON","version","vers","editors","entroot","getDisplayFormats","getDisplayFormatsForType","getDefaultFormat","isdef","setData","getId","getName","getRootEntity","getAttributeById","getEntityAttrById","checkAttrProperty","listByEntityWithFilter","isEntity","listByEntity","includeRootData","sortEntities","attrPlacement","addDefaultValueEditors","addOrUpdateValueEditor","getEntitiesTree","getEntitiesTreeWithFilter","getFullEntityPathByAttr","getEntityPathByAttr","getAttributeText","runThroughEntities","getFirstAttributeByFilter","date","_name","asTime","repeat","lastIndexOf","l$1","d$1","display","C","body","top","pageYOffset","scrollTop","left","pageXOffset","scrollLeft","T","right","bottom","width","height","getBoundingClientRect","clientTop","clientLeft","round","innerHeight","userAgent","IsIE","IsEdge","includes","IsFirefox","matchMedia","matches","addEventListener","isMobileMode","setIsMobileMode","onMobileModeChanged","getMobileCssClass","S","value","selectionStart","test","selectionEnd","keyCode","preventDefault","createEvent","initEvent","dispatchEvent","fromCharCode","charCode","element","createElement","parentElement","appendChild","addChild","L","addChildElement","attr","setAttribute","focus","title","removeAttribute","show","removeStyle","hide","setStyle","visible","isVisible","offsetWidth","offsetHeight","getClientRects","addClass","classList","removeClass","remove","toggleClass","toggle","on","off","removeEventListener","setProperty","removeProperty","innerText","html","innerHTML","tagName","replaceWith","addText","createTextNode","addHtml","toDOM","appendTo","O$1","R","cols","P$1","valueAsDate","valueAsNumber","mask","addOption","selected","HTMLDivElement","HTMLSpanElement","HTMLAnchorElement","HTMLButtonElement","HTMLImageElement","HTMLInputElement","P","HTMLTextAreaElement","O","HTMLSelectElement","A","k","TouchEvent","N","Allow","Forbid","$$1","dropEffect","pageX","pageY","item","dragImage","sourceEvent","MouseEvent","touches","H$1","F$1","delta","draggableItem","finishedSuccessfully","mouseDownPosition","containerDescriptors","containerDescriptorIndex","classPrefix","DRAG_DISABLED_ATTR","registerDraggableItem","ondragstart","hasAttribute","stopPropagation","abs","mouseMoveDragListener","beforeDragStart","cloneNode","renderer","updateCusror","updateImageClass","scope","updateDragItemPosition","$","onDragStart","scopes","onDrop","onDragLeave","onDragEnd","removeChild","registerDropContainer","removeDropContainer","detectDragEnterEvent","dragEnterEvent","detectDragLeaveEvent","dragLeaveEvent","onDragOver","setCursorStyle","cursor","children","onDragEnter","_","F","Y","B","Always","Once","Never","NONE","LEFT","CENTER","RIGHT","W$1","_label","_description","align","isRowNum","dataColumn","grid","options","columnWidths","alignment","default","rowNumColumn","G$1","sync","W","onSyncGridColumn","z","V","U","STRING","NUMBER","DATETIME","BOOL","j","q","K","call","Q","J$1","renderers","defaultRenderers","registerRenderer","setDefaultRenderer","getDefaultRenderer","getCellType","getDefaultRendererByType","getRenderer","Z$1","cssPrefix","slot","yearRange","currentDate","dateChanged","onDateChanged","tt$1","calendar","timePicker","render","setDateTime","currentDateTime","setTime","getDateTime","showCalendar","createCalendar","showDateTimeInput","timePickerIsUsed","showTimePicker","oneClickDateSelection","dateTimeChanged","createTimePicker","onTimeChanged","setHours","setMinutes","beforeShow","clientHeight","onApply","destroy","cancel","onCancel","onDateTimeChanged","et$1","Z","daysOfWeek","months","calendarBody","isManualInputChanging","selectedMonth","selectedYear","rerenderMonth","renderManualDateInput","headerTextElem","renderCalendarButtons","getInputDateFormat","manualInputElem","jump","className","updateDisplayedDateValue","prev","selectMonthElem","selectYearElem","next","rerenderSelectYear","exec","target","getAttribute","onDrawDay","it$1","currentTime","timeChanged","st$1","it","updateDisplayedTime","hoursInput","minutesInput","timeText","at","ot","rt$1","rt","openConfirm","closable","submitable","cancelable","onSubmit","openPrompt","submitOnEnter","arrangeParents","beforeOpen","getElementById","lt","onDestroy","untrack","track","createSet","ht","openDialogs","openProgress","dt","getAllDialogs","closeAllDialogs","close","lt$1","submitHandler","cancelHandler","keydownHandler","isActiveDialog","dialogId","windowElement","headerElement","alertElement","bodyElement","footerAlignment","footerElement","submitButtonText","recaptchaSiteKey","grecaptcha","ready","execute","action","cancelButtonText","getData","getRootElement","getSubmitButtonElement","getCancelButtonElement","querySelector","querySelectorAll","clearAlert","onInput","onShow","submit","disableButtons","disabled","enableButtons","showAlert","dt$1","content","determinated","contentElement","progressElement","updateContent","updateProgress","in01","ht$1","dialogService","currentDialog","currentIndex","getCurrent","openNext","openPrev","ct","ut","GridPageInfo","GridItemsPerPage","ButtonApply","ButtonNow","LblTotal","THIS_WEEK","LAST_WEEK","THIS_MONTH","FIRST_MONTH","LAST_MONTH","THIS_YEAR","QUARTER_1","QUARTER_2","QUARTER_3","QUARTER_4","UNDEF","TODAY","YESTERDAY","TOMORROW","WEEK_START","WEEK_END","MONTH_START","MONTH_END","YEAR_START","YEAR_END","setupDialog","weekStart","append","drawDialog","calendar1","calendar2","alignDate","start","finish","represent","setSeconds","setMilliseconds","select","et","log","mt","zIndex","renderButtons","globalMouseDownHandler","event","srcElement","contains","nowButton","submitButton","calendarSlot","timePickerSlot","st","pagination","paginationOptions","maxButtonCount","useBootstrap","defaultDataGridOptions","dataTable","fixHeightOnFirstRender","syncGridColumns","useRowNumeration","allowDragDrop","calculator","paging","enabled","pageSizeItems","autoResize","stringColumns","numberColumns","boolColumns","dateColumns","otherColumns","showPlusButton","viewportRowsCount","showActiveRow","rowsOnPagePromise","containerInitialHeight","firstRender","prevRowTotals","landingIndex","landingSlot","_activeRowIndex","mergeOptions","processColumnWidthsOptions","eventEmitter","cellRendererStore","J","G","setSlot","init","getElementsByClassName","onInit","onRowClick","onRowDbClick","onPlusButtonClick","onColumnChanged","onColumnDeleted","onColumnMoved","onPageChanged","onActiveRowChanged","activeRowIndex","showLandingSlot","hideLandingSlot","column","refresh","fireEvent","columnId","newIndex","getColumns","clearDOM","hasData","rootDiv","renderHeader","headerDiv","renderBody","bodyDiv","renderFooter","footerDiv","updateHeight","resizeColumns","bodyCellContainerDiv","firstElementChild","bodyViewportDiv","getContainerWidth","reduce","headerViewportDiv","headerCellContainerDiv","headerRowDiv","renderColumnHeader","renderHeaderButtons","canShowAggregates","showProgress","getRowsToRender","hideProgress","updateTotalsState","renderRow","showGrandTotalsOnEachPage","isLastPage","onViewportKeydown","bind","renderTotalsRow","applyGroupColumnTemplate","renderCell","getAggrContainer","getAggregateData","firstChild","key","ensureRowVisibility","getDataRow","footerPaginateDiv","renderPageNavigator","renderPageInfoBlock","getLocalIndexByGlobal","getGlobalIndexByLocal","row","rowIndex","getCellRenderer","onGetCellRenderer","setPage","allowPageSizeChange","Set","plusButtonTitle","insertBefore","updateActiveRow","oldValue","newValue","getActiveRow","visibility","whiteSpace","cssClass","Event","gt","getComputedStyle","overflow","paddingTop","paddingBottom","marginTop","marginBottom","boxSizing","transitionProperty","transitionDuration","duration","complete","v","sourceTable","sourceId","isLookup","filterValue","justServerSide","applyCore","class","filters","lookup","applyInMemoryFilter","X","nt","pt","ft","yt","vt","Dt","Ct","wt","Tt","bt","xt","Et","history","state","pushState","It","St","validate","successed","messages","Mt","context","validators","getHtml","setHtmlInt","errorsDiv","clearErrors","getMetaData","validateValue","markInputValid","checked","fileToBase64","files","mapValue","all","readAsDataURL","onload","useValidator","useValidators","Rt","instantMode","instantTimeout","highlightCellRenderer","filterInput","inputKeydownHandler","inputKeyupHandler","clearButtonClickHander","searchButtonClickHandler","applyFilter","applyFilterTimeout","clearTimeout","highlightText","HTMLElement","backgroundColor","index","index2","kt","At","params","reset","form","setupLookupField","resolveInputType","getDataLoader","fetchRecord","createFilter","setupDateTimeField","applySumbit","setupListField","setupFileField","setupTextField","setupTextArea","addFormField","isEditForm","resolveEditor","sumbitCallback","build","getActiveEntity","Pt","Ot","resolveEndpoint","startProcess","getHttpClient","resultSet","meta","totalRecords","hasNext","endProcess","Nt","endpoints","endpointVarsRegex","http","model","metaDataId","dataLoader","setDefaultEndpoints","endpoint","activeEntity","setActiveSource","loadMetaData","sourceError","fetchDataset","createRecord","updateRecord","deleteRecord","setEndpoint","setEnpointIfNotExist","match","onProcessStart","onProcessEnd","Lt","isInteger","Ft","$t","basePath","showFilterBox","showBackToEntities","defaultValidators","dlg","location","pathname","renderGrid","syncGridColumnHandler","addClickHandler","manageCellRenderer","rowDbClickHandler","filterWidget","editClickHandler","deleteClickHandler","refreshData","processError","showEditForm","Bt","metaData","renderEntitySelector","decodeURIComponent","RequiredError","NumberError","IntNumberError","DateTimeError","LookupSelectedItem","LookupDlgCaption","NavigationBtnTitle","CalendarBtnTitle","TimerBtnTitle","AddBtnTitle","AddRecordBtnTitle","EditBtn","DeleteBtn","SelectLink","AddDlgCaption","EditDlgCaption","DeleteDlgCaption","DeleteDlgMessage","EntityMenuDesc","BackToEntities","SearchBtn","SearchInputPlaceholder","RootViewTitle","ModelIsEmpty","container","onSetLocation","setActiveView","attach","normalizeBasePath","setContainer","trimSlashes","toLocaleLowerCase","getActiveSourceId","run","EDView","detach"],"mappings":"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"} \ No newline at end of file diff --git a/easydata.js/packs/crud/package.json b/easydata.js/packs/crud/package.json index 43614b4c..79229cff 100644 --- a/easydata.js/packs/crud/package.json +++ b/easydata.js/packs/crud/package.json @@ -30,7 +30,7 @@ "browserslist": [ "defaults and supports es6-module" ], - "dependencies": { + "peerDependencies": { "@easydata/core": "*", "@easydata/ui": "*" }, diff --git a/easydata.js/packs/ui/package.json b/easydata.js/packs/ui/package.json index 044b4002..2eafa804 100644 --- a/easydata.js/packs/ui/package.json +++ b/easydata.js/packs/ui/package.json @@ -34,7 +34,7 @@ "browserslist": [ "defaults" ], - "dependencies": { + "peerDependencies": { "@juggle/resize-observer": "^3.4.0", "@easydata/core": "*" }, diff --git a/easydata.js/packs/ui/rollup.config.mjs b/easydata.js/packs/ui/rollup.config.mjs index 0209caca..b9124f8a 100644 --- a/easydata.js/packs/ui/rollup.config.mjs +++ b/easydata.js/packs/ui/rollup.config.mjs @@ -20,7 +20,7 @@ const const banner = ` /*! * EasyData.JS UI - * Copyright ${new Date().getFullYear()} Korzh.com + * Copyright 2020 - ${new Date().getFullYear()} Korzh.com * Licensed under MIT !*/ ` diff --git a/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml b/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml index f51e58b2..b9e1e610 100644 --- a/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml +++ b/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml @@ -4,18 +4,13 @@ ViewData["Title"] = "EasyData"; } - +
    @section Scripts { - - - - + + + + } \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml b/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml index 89a557bc..51076916 100644 --- a/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml +++ b/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml @@ -7,15 +7,15 @@
    @section Scripts { - - + @* *@ + } \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/Pages/Shared/_Layout.cshtml b/playground/EasyDataAspNetCoreTest01/Pages/Shared/_Layout.cshtml index f6a6ab24..329467ca 100644 --- a/playground/EasyDataAspNetCoreTest01/Pages/Shared/_Layout.cshtml +++ b/playground/EasyDataAspNetCoreTest01/Pages/Shared/_Layout.cshtml @@ -7,7 +7,7 @@ - + @* *@ @RenderSection("Styles", required: false) diff --git a/playground/EasyDataAspNetCoreTest01/package.json b/playground/EasyDataAspNetCoreTest01/package.json index 165001f9..3cc79d52 100644 --- a/playground/EasyDataAspNetCoreTest01/package.json +++ b/playground/EasyDataAspNetCoreTest01/package.json @@ -9,8 +9,7 @@ "watch1": "rollup --config -w" }, "dependencies": { - "@easydata/core": "*", - "@easydata/ui": "*", - "@easydata/crud": "*" + "@easydata/ui": "^1.4.20", + "@easydata/crud": "^1.4.20" } } diff --git a/playground/EasyDataAspNetCoreTest01/rollup.config.mjs b/playground/EasyDataAspNetCoreTest01/rollup.config.mjs index 1f8533f8..6c9b63a0 100644 --- a/playground/EasyDataAspNetCoreTest01/rollup.config.mjs +++ b/playground/EasyDataAspNetCoreTest01/rollup.config.mjs @@ -7,15 +7,15 @@ import progress from 'rollup-plugin-progress' import typescript from '@rollup/plugin-typescript' import typedoc from '@olton/rollup-plugin-typedoc' import noEmit from 'rollup-plugin-no-emit' +import multi from '@rollup/plugin-multi-entry' import * as path from "path"; import { fileURLToPath } from 'url'; const __filename = fileURLToPath(import.meta.url); const __dirname = path.dirname(__filename); -const - dev = (process.env.NODE_ENV !== 'production'), - sourcemap = dev +const production = !(process.env.ROLLUP_WATCH), + sourcemap = !production const banner = ` /*! @@ -27,59 +27,48 @@ const banner = ` export default [ { - input: './ts/easydata.ts', + input: ['./ts/styles.js', './ts/easydata.ts'], watch: { - include: './ts/**/*.ts', + include: './ts/**', clearScreen: false }, plugins: [ - progress({ - clearLine: true, - }), - typescript(), + progress({ clearLine: true, }), + multi(), + typescript({sourceMap: sourcemap, declaration: false, }), nodeResolve({ - browser: true }), commonjs(), + postcss({ + extract: false, + minimize: true, + use: ['less'], + sourceMap: sourcemap, + plugins: [ + autoprefixer(), + ] + }), ], output: [ { file: './wwwroot/js/easydata.js', format: 'iife', - name: 'myEasyData', + name: 'easydata', sourcemap, banner, plugins: [ - terser(), ] }, - ] - }, - { - input: './ts/styles.js', - plugins: [ - progress({ - clearLine: true, - }), - nodeResolve(), - postcss({ - extract: 'easydata.css', - minimize: true, - use: ['less'], - sourceMap: sourcemap, + { + file: './wwwroot/js/easydata.min.js', + format: 'iife', + name: 'easydata', + sourcemap, + banner, plugins: [ - autoprefixer(), + terser() ] - }), - noEmit({ - match(fileName, output) { - return 'styles.js' === fileName - } - }), - ], - output: { - dir: './wwwroot/css', - banner, - } + }, + ] }, ]; \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/ts/easydata.ts b/playground/EasyDataAspNetCoreTest01/ts/easydata.ts index 0ddf785c..6eeafe88 100644 --- a/playground/EasyDataAspNetCoreTest01/ts/easydata.ts +++ b/playground/EasyDataAspNetCoreTest01/ts/easydata.ts @@ -1,4 +1,4 @@ -import '@easydata/core' +// import '@easydata/crud' import { showTimeSpanPicker } from '@easydata/ui' import { EasyDataViewDispatcher, EasyDataViewDispatcherOptions } from '@easydata/crud'; diff --git a/playground/EasyDataAspNetCoreTest01/ts/styles.js b/playground/EasyDataAspNetCoreTest01/ts/styles.js index ec9dd61b..3dac915a 100644 --- a/playground/EasyDataAspNetCoreTest01/ts/styles.js +++ b/playground/EasyDataAspNetCoreTest01/ts/styles.js @@ -1,4 +1,5 @@ import '@easydata/ui/dist/assets/css/easy-grid.css' import '@easydata/ui/dist/assets/css/easy-dialog.css' import '@easydata/ui/dist/assets/css/easy-forms.css' -import '@easydata/crud/dist/assets/css/ed-view.css' \ No newline at end of file +import '@easydata/crud/dist/browser/ed-view.css' +// import '@easydata/crud/dist/assets/css/ed-view.css' \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css b/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css deleted file mode 100644 index 5d070aaf..00000000 --- a/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css +++ /dev/null @@ -1,4 +0,0 @@ -.keg-container *{outline:none}.keg-container,.keg-header{overflow:hidden}.keg-header{background-color:#f8f8f8;border-bottom:1px solid #babfc7;flex:0 0 auto}.keg-root{border:1px solid #babfc7;display:flex;flex-direction:column;font-family:Roboto,Arial,serif}.keg-body{flex:1;overflow:hidden}.keg-body-viewport{border:1px solid transparent;height:100%;overflow-x:auto;overflow-y:auto}.keg-body-viewport:focus,.keg-body-viewport:focus-within{border:1px solid #838383}.keg-header-row{color:rgba(0,0,0,.54);font-weight:600;min-height:30px}.keg-header-row,.keg-row{display:flex;font-size:12px}.keg-row{align-items:center;background-color:#fff;border-color:#dde2eb;border-bottom:solid #dde2eb;border-width:1px;color:#181d1f;height:26px;outline:none}.keg-row:not(.keg-row-active):not(.keg-row-totals):hover{background-color:#fffae9}.keg-row-odd{background-color:#fcfcfc}.keg-row-active{background-color:#fff3cf}.keg-cell,.keg-header-cell{display:flex}.keg-header-cell{align-items:center;padding:2px 6px;position:relative}.keg-header-cell-resize{align-items:center;display:flex;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:2}.keg-header-cell-resize:after{background-color:rgba(186,191,199,.5);content:"";display:block;height:50%;left:calc(50% - 1px);position:absolute;top:25%;width:2px;z-index:1}.keg-header-cell-label{-ms-word-wrap:keep-all;text-align:center;width:100%;word-break:keep-all}.keg-cell{align-items:center;border-right:solid transparent;height:100%;outline:none;padding:0 4px 0 10px}.keg-cell-value{max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.keg-cell-align-left,.keg-cell-value-align-left{text-align:left}.keg-cell-align-right,.keg-cell-value-align-right{text-align:right}.keg-cell-align-center,.keg-cell-value-align-center{text-align:center}.keg-cell-value-bool{margin:0 auto;width:auto}.keg-cell-value-true:before{color:#28a745;content:"\2714";font-size:16px}.keg-cell-value-false:before{color:#dc3545;content:"\2716";font-size:16px}.keg-header-btn-plus{height:23px;position:relative;width:23px}.keg-header-btn-plus a{background:url("data:image/png;base64,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") no-repeat;display:block;height:100%;width:100%}.keg-header-btn-plus a:hover{background-position:-25px 0!important}.keg-pagination,.keg-pagination-wrapper{display:inline-flex}.keg-pagination{border-radius:4px;margin:0;padding-left:0}.keg-page-item{display:inline}.keg-page-link{background-color:#fff;border:1px solid #ddd;color:#428bca;float:left;font-size:12px;line-height:1.42857;margin-left:-1px;padding:5px 10px;position:relative;text-decoration:none}.keg-page-link:focus,.keg-page-link:hover{background-color:#eee;border-color:#ddd;border-bottom:2px solid #ffd148!important;color:#2a6496}.keg-page-item.active>.keg-page-link,.keg-page-item.active>.keg-page-link:focus,.keg-page-item.active>.keg-page-link:hover{background-color:#428bca;border-color:#428bca;color:#fff;cursor:default;z-index:2}.keg-page-item.disabled>.keg-page-link,.keg-page-item.disabled>.keg-page-link:focus,.keg-page-item.disabled>.keg-page-link:hover{background-color:#fff;border-color:#ddd;color:#999;cursor:not-allowed}.keg-page-item:first-child>.keg-page-link{border-bottom-left-radius:3px;border-top-left-radius:3px;margin-left:0}.keg-page-item:last-child>.keg-page-link{border-bottom-right-radius:3px;border-top-right-radius:3px}.keg-page-sizes{display:inline-flex;margin-left:20px}.keg-page-sizes-select{font-size:12px;height:auto!important}.keg-page-sizes-select:after{border-width:2px!important;height:.6em!important;margin-top:-.6em!important;width:.6em!important}.keg-page-sizes-label{color:rgba(0,0,0,.54);font-size:16px;margin-left:10px;padding:5px 0;white-space:nowrap}.keg-footer{display:flex;flex-wrap:wrap;margin-top:5px}.keg-page-info{color:rgba(0,0,0,.54);flex:1 1 auto;font-size:16px;padding:5px 10px;text-align:end;white-space:nowrap}.keg-page-info>span{color:#212529}.keg-row-totals{font-weight:700}.keg-totals-lv0{background-color:#ace1af}.keg-totals-lv1{background-color:#d0f0c0}.keg-totals-lv2{background-color:#d0f2c0}.keg-totals-lv3{background-color:#d0f4c0}.keg-totals-lv4{background-color:#d0f6c0}.keg-totals-lv5{background-color:#d0f8c0}.keg-sortable-helper{background-color:#fff;border:2px solid #fb9c2f;border-radius:4px;padding:3px 20px}.eqjs-chart-content,.eqjs-chart-main,.keg-container,.keg-root{height:100%}.eqjs-chart-content canvas{max-height:100%}.question-mark{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC") no-repeat 50%;height:20px;margin-left:5px;position:relative;width:20px}.kdlg-modal,.kdlg-modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.kdlg-modal-background{background-color:hsla(0,0%,4%,.5)}.kdlg-modal{align-items:center;display:none;flex-direction:column;font-family:Roboto,Arial,serif;font-size:16px;font-weight:400;justify-content:center;line-height:1.5;overflow:hidden;position:fixed;z-index:9999}.kdlg-modal.is-active{display:flex}.kdlg-modal-window,.kdlg-modal-window.size-default{display:flex;flex-direction:column;margin:0 20px;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible;position:relative;width:100%}@media print,screen and (min-width:481px){.kdlg-modal-window.size-small{margin:0 auto;width:400px}}@media print,screen and (min-width:769px){.kdlg-modal-window,.kdlg-modal-window.size-default{margin:0 auto;width:640px}.kdlg-modal-window.size-large,.kdlg-modal-window.size-xl{margin:0 20px;width:100%}}@media print,screen and (min-width:1025px){.kdlg-modal-window.size-large{margin:0 auto;width:900px}}@media print,screen and (min-width:1383px){.kdlg-modal-window.size-xl{margin:0 auto;width:1200px}}.kdlg-footer,.kdlg-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.kdlg-footer.align-right{justify-content:flex-end}.kdlg-footer.align-center{justify-content:center}.kdlg-header{border-top-left-radius:6px;border-top-right-radius:6px}.kdlg-header.has-border{border-bottom:1px solid #dbdbdb}.kdlg-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:initial;height:auto;margin:unset;min-height:10px}.kdlg-footer.has-border{border-top:1px solid #dbdbdb}.kdlg-header-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.6em;line-height:1;margin:0;padding:0}.kdlg-modal-close{-webkit-touch-callout:none;-moz-appearance:none;-webkit-appearance:none;background-color:hsla(0,0%,4%,.2);border:none;border-radius:290486px;cursor:pointer;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;outline:0;pointer-events:auto;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;width:24px}.kdlg-modal-close:after,.kdlg-modal-close:before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.kdlg-modal-close:before{height:2px;width:50%}.kdlg-modal-close:after{height:50%;width:2px}.kdlg-modal-close:focus,.kdlg-modal-close:hover{background-color:rgba(255,1,1,.48)}.kdlg-body{-webkit-overflow-scrolling:touch;background-color:#fff;color:#4a4a4a;flex-grow:1;flex-shrink:1;font-size:1em;overflow:auto;padding:20px}.kdlg-alert-container{max-height:150px;overflow-y:auto}.kdlg-alert{background-color:#e2f5ff;color:#004aef;min-height:60px;min-width:1px;padding:20px}.kdlg-alert.success{background-color:#efffe6;color:#0c7905}.kdlg-alert.warning{background-color:#fff7e5;color:#e49e02}.kdlg-alert.error{background-color:#ffe2e2;color:red}.kdlg-alert-closebtn{cursor:pointer;float:right;font-size:22px;line-height:20px;margin-left:15px;transition:.3s}.kdlg-progress-line{background-color:#e0e0e0;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2);overflow:hidden;padding:3px;width:100%}.kdlg-progress-line .fill{background-color:#659cef;border-radius:3px;display:block;height:22px;transition:width .5s ease-in-out}.kdlg-progress-line .fill.indeterminate{animation:kdlg-progress-line-loading 2s linear infinite;left:-200px;position:relative;transition:none;width:200px}@keyframes kdlg-progress-line-loading{0%{left:-200px}to{left:120%}}.kfrm-buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.kfrm-buttons.align-right{justify-content:flex-end}.kfrm-buttons.align-center{justify-content:center}.kfrm-buttons:last-child{margin-bottom:-.5rem}.kfrm-buttons .kfrm-button{margin-bottom:.5rem}.kfrm-button{-webkit-touch-callout:none;align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1em;height:2.5em;justify-content:center;line-height:1.5;padding:calc(.5em - 1px) 1em;position:relative;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;white-space:nowrap}.kfrm-button:not(:last-child){margin-right:.5em}.kfrm-button.is-hovered,.kfrm-button:hover{border-color:#b5b5b5;color:#363636}.kfrm-button.is-focused,.kfrm-button:focus{border-color:#3273dc;color:#363636;outline:none}.kfrm-button.is-focused:not(:active),.kfrm-button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-active,.kfrm-button:active{border-color:#4a4a4a;color:#363636}.kfrm-button[disabled],fieldset[disabled] .kfrm-button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;cursor:not-allowed;opacity:.5}.kfrm-button.is-loading{color:transparent!important;pointer-events:none}.kfrm-button.is-loading:after{animation:spinAround .5s linear infinite;border-color:transparent transparent #dbdbdb #dbdbdb;border-radius:290486px;border-style:solid;border-width:2px;content:"";display:block;height:1em;left:calc(50% - .5em);position:absolute!important;top:calc(50% - .5em);width:1em}@keyframes spinAround{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kfrm-button.size-small,.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large){border-radius:2px;font-size:.75rem}.kfrm-button.size-default -.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large){font-size:1rem}.kfrm-button.size-medium,.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large){font-size:1.25rem}.kfrm-button.size-large -.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium){font-size:1.5rem}.kfrm-button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-hovered,.kfrm-button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused,.kfrm-button.is-white:focus{border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused:not(:active),.kfrm-button.is-white:focus:not(:active){box-shadow:0 0 0 .125em hsla(0,0%,59%,.15)}.kfrm-button.is-white.is-active,.kfrm-button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.kfrm-button.is-dark{background-color:#363636e6;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-hovered,.kfrm-button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused,.kfrm-button.is-dark:focus{border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused:not(:active),.kfrm-button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.kfrm-button.is-dark.is-active,.kfrm-button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.kfrm-button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-hovered,.kfrm-button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused,.kfrm-button.is-primary:focus{border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused:not(:active),.kfrm-button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.kfrm-button.is-primary.is-active,.kfrm-button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.kfrm-button.is-link.is-hovered,.kfrm-button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused,.kfrm-button.is-link:focus{border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused:not(:active),.kfrm-button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-link.is-active,.kfrm-button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.kfrm-button.is-link.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.kfrm-button.is-info.is-hovered,.kfrm-button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused,.kfrm-button.is-info:focus{border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused:not(:active),.kfrm-button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.kfrm-button.is-info.is-active,.kfrm-button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.kfrm-button.is-info.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.kfrm-button.is-success.is-hovered,.kfrm-button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.kfrm-button.is-success.is-focused:not(:active),.kfrm-button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.kfrm-button.is-success.is-active,.kfrm-button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.kfrm-button.is-success.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-hovered,.kfrm-button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused,.kfrm-button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused:not(:active),.kfrm-button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.kfrm-button.is-warning.is-active,.kfrm-button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-loading:after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.kfrm-button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-hovered,.kfrm-button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused,.kfrm-button.is-danger:focus{border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused:not(:active),.kfrm-button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.kfrm-button.is-danger.is-active,.kfrm-button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-row{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.kfrm-row:not(:last-child){margin-bottom:.75rem}@media print,screen and (min-width:769px){.kfrm-row{display:flex;flex-wrap:wrap}.kdlg-modal-window.size-small .kfrm-row{display:block}.kfrm-column.size-1{flex:none;width:8.33333%}.kfrm-column.size-2{flex:none;width:16.66667%}.kfrm-column.size-3{flex:none;width:25%}.kfrm-column.size-4{flex:none;width:33.33333%}.kfrm-column.size-5{flex:none;width:41.66667%}.kfrm-column.size-6{flex:none;width:50%}.kfrm-column.size-7{flex:none;width:58.33333%}.kfrm-column.size-8{flex:none;width:66.66667%}.kfrm-column.size-9{flex:none;width:75%}.kfrm-column.size-10{flex:none;width:83.33333%}.kfrm-column.size-11{flex:none;width:91.66667%}.kfrm-column.size-12{flex:none;width:100%}}.kfrm-column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.kfrm-form .errors-block{color:red}.kfrm-form .control{box-sizing:border-box;clear:both;display:inline-flex;max-width:100%;padding:0!important;position:relative;text-align:inherit;width:100%}.kfrm-form .icon{align-items:center;display:inline-flex;height:1.5em;justify-content:center;width:1.5em}.kfrm-form .control.has-icons-left .select select,.kfrm-form .control.has-icons-left input{padding-left:2.5em}.kfrm-form .control.has-icons-right .select select,.kfrm-form .control.has-icons-right input{padding-right:2.5em}.kfrm-form .control.has-icons-left .icon.is-left{left:0}.kfrm-form .control.has-icons-right .icon.is-right{right:0}.kfrm-form .control .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.kfrm-form .control .icon.is-clickable{pointer-events:auto}.kfrm-form .control .icon.is-clickable:hover{color:#4a4a4a;cursor:pointer}.kfrm-form input.is-valid:not([type=checkbox]),.kfrm-form input.is-valid:not([type=checkbox]):hover{border-color:green}.kfrm-form input.is-invalid:not([type=checkbox]),.kfrm-form input.is-invalid:not([type=checkbox]):hover{border-color:red}.kfrm-form input:not([type=checkbox]):-moz-read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]):read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea,.kfrm-select select{align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid transparent;border-color:#dbdbdb;border-radius:4px;box-shadow:none;color:#363636;display:inline-flex;font-size:1em;height:2.5em;justify-content:flex-start;line-height:1.5;outline:0;padding:calc(.5em - 1px) calc(.75em - 1px);position:relative;vertical-align:top}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea{box-shadow:inset 0 .0625em .125em hsla(0,0%,4%,.05);max-width:100%;width:100%}.kfrm-form input:not([type=checkbox]).is-hovered,.kfrm-form input:not([type=checkbox]):hover,.kfrm-form textarea.is-hovered,.kfrm-form textarea:hover,.kfrm-select select.is-hovered,.kfrm-select select:hover{border-color:#b5b5b5}.kfrm-form input:not([type=checkbox]).is-active,.kfrm-form input:not([type=checkbox]).is-focused,.kfrm-form input:not([type=checkbox]):active,.kfrm-form input:not([type=checkbox]):focus,.kfrm-form textarea.is-active,.kfrm-form textarea.is-focused,.kfrm-form textarea:active,.kfrm-form textarea:focus,.kfrm-select select.is-active,.kfrm-select select.is-focused,.kfrm-select select:active,.kfrm-select select:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25);outline:0}.kfrm-select{display:inline-block;max-width:100%;padding:0;position:relative;vertical-align:top;width:-moz-max-content;width:max-content}.kfrm-select.full-width{width:100%}.kfrm-select select::-ms-expand{display:none!important}.kfrm-select:not(.is-multiple){height:2.5em}.kfrm-select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.kfrm-select select:not([multiple]){padding-right:2.5em}.kfrm-select.kfrm-select.full-width select:not([multiple]){width:100%}.kfrm-select:not(.is-multiple):not(.is-loading):after{border:3px solid #3273dc;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.425em;margin-top:-.5em;pointer-events:none;position:absolute;right:.7em;top:50%;transform:rotate(-45deg);transform-origin:center;width:.425em;z-index:4}.kfrm-form textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.kfrm-form textarea:not([rows]){max-height:40em;min-height:8em}.kfrm-form{font-size:16px}.kfrm-form fieldset{border:1px solid #dbdbdb;border-radius:6px;padding:20px}.kfrm-form fieldset>legend{font-size:16px;font-weight:600;margin-bottom:0;padding-inline-end:10px;padding-inline-start:10px;width:auto}.kfrm-break,.kfrm-break-50{margin-top:50px}.kfrm-break-10{margin-top:10px}.kfrm-break-20{margin-top:20px}.kfrm-break-30{margin-top:30px}.kfrm-break-40{margin-top:40px}.kfrm-break-60{margin-top:60px}.kfrm-break-70{margin-top:70px}.kfrm-break-80{margin-top:10px}.kfrm-fields,.kfrm-fields.col-a{grid-gap:10px;display:grid;grid-auto-rows:auto;grid-template-columns:auto}.kfrm-fields:not(:last-child){margin-bottom:.75rem}.kfrm-fields>label{padding:.5em 0}.kfrm-fields .label-compact{font-size:.9em}fieldset .kfrm-fields>label{margin:0;padding:0}.kfrm-fields>label:not(.checkbox){font-weight:600}.kfrm-fields.label-above>label:not(.checkbox){font-weight:500;margin-bottom:-.5em;padding:.5em 0 0}.kfrm-fields.label-align-right>label:not(.checkbox){text-align:right}.kfrm-fields.col-a-1{grid-template-columns:auto 1fr}.kfrm-fields.col-1-a{grid-template-columns:1fr auto}.kfrm-fields.col-a-a{grid-template-columns:auto auto}.kfrm-fields.col-1-1{grid-template-columns:1fr 1fr}.kfrm-fields.col-1-2{grid-template-columns:1fr 2fr}.kfrm-fields.col-1-3{grid-template-columns:1fr 3fr}.kfrm-fields.col-2-1{grid-template-columns:2fr 1fr}.kfrm-fields.col-3-1{grid-template-columns:3fr 1fr}.kfrm-fields.col-2-3{grid-template-columns:2fr 3fr}.kfrm-fields.col-3-2{grid-template-columns:3fr 2fr}.kfrm-fields.is-horizontal{display:flex;padding:0}.kfrm-fields.is-horizontal.align-right{justify-content:flex-end}.kfrm-fields.is-horizontal.align-center{justify-content:center}.kfrm-fields.is-horizontal.align-evenly{justify-content:space-evenly}.kfrm-fields.is-horizontal>label:not(:first-child){margin-left:.5rem}.kfrm-fields-ie{display:flex;flex-direction:column;font-size:16px}.kfrm-field-ie{display:flex;margin-bottom:1em}.kfrm-field-ie>:first-child{margin-right:20px}.kfrm-field-ie>label{padding:.5em 0}.kfrm-fields-ie.col-ie-1-1>.kfrm-field-ie>:first-child{flex:0 0 50%}.kfrm-fields-ie.col-ie-1-2>.kfrm-field-ie>:first-child{flex:0 0 33.3333%}.kfrm-fields-ie.col-ie-1-3>.kfrm-field-ie>:first-child{flex:0 0 25%}.kfrm-fields-ie.col-ie-1-4>.kfrm-field-ie>:first-child{flex:0 0 20%}.kfrm-fields-ie.label-align-right .kfrm-field-ie>:first-child{text-align:right}.kfrm-fields-ie.label-above .kfrm-field-ie>:first-child:not(.checkbox){margin-bottom:-.5em;padding:.5em 0 0}.kfrm-field-ie>label:not(.checkbox),.kfrm-fields-ie>label:not(.checkbox){font-weight:600}.kfrm-fields-ie.is-horizontal{display:flex;flex-direction:row;padding:0!important}.kfrm-fields-ie.kfrm-fields-ie.is-horizontal>:not(.kfrm-select){padding:.5em}.kfrm-fields-ie.is-horizontal>:not(:first-child){margin-left:1em}.kfrm-fields-ie>label{padding-left:0!important;padding-right:0!important}.kfrm-field>label{padding-right:.5em}.kfrm-callout{font-size:1.2em;text-align:center}.kdtp{background-color:#fff;border:1px solid silver;border-radius:8px;box-shadow:4px 8px 15px 0 rgba(0,0,0,.16);font-size:.7rem;outline:none;overflow:hidden;z-index:100000}.kdtp-buttons{display:flex;flex-direction:row;justify-content:space-between;margin-top:1em}.kdtp-button{background-color:#09c;border:none;color:#fff;cursor:pointer;flex:1;font-weight:500;height:2.5em;text-align:center;text-decoration:none}.kdtp-button:active,.kdtp-button:focus{outline:0}.kdtp-button-now{background-color:#fff;border:none;color:#09c}.kdtp-button:nth-child(2){border-top-left-radius:8px}.kdtp-button:not(:first-child){margin-left:2px}.kdtp-cal{padding:0}.kdtp-cal *{outline:none!important}.kdtp-cal-body{grid-gap:.5em;-ms-grid-rows:1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,minmax(1em,1fr));padding:0 12px}.kdtp-cal-body>:first-child{-ms-grid-column:1;-ms-grid-row:1}.kdtp-cal-body>:nth-child(2){-ms-grid-column:3;-ms-grid-row:1}.kdtp-cal-body>:nth-child(3){-ms-grid-column:5;-ms-grid-row:1}.kdtp-cal-body>:nth-child(4){-ms-grid-column:7;-ms-grid-row:1}.kdtp-cal-body>:nth-child(5){-ms-grid-column:9;-ms-grid-row:1}.kdtp-cal-body>:nth-child(6){-ms-grid-column:11;-ms-grid-row:1}.kdtp-cal-body>:nth-child(7){-ms-grid-column:13;-ms-grid-row:1}.kdtp-cal-body>:nth-child(8){-ms-grid-column:1;-ms-grid-row:3}.kdtp-cal-body>:nth-child(9){-ms-grid-column:3;-ms-grid-row:3}.kdtp-cal-body>:nth-child(10){-ms-grid-column:5;-ms-grid-row:3}.kdtp-cal-body>:nth-child(11){-ms-grid-column:7;-ms-grid-row:3}.kdtp-cal-body>:nth-child(12){-ms-grid-column:9;-ms-grid-row:3}.kdtp-cal-body>:nth-child(13){-ms-grid-column:11;-ms-grid-row:3}.kdtp-cal-body>:nth-child(14){-ms-grid-column:13;-ms-grid-row:3}.kdtp-cal-body>:nth-child(15){-ms-grid-column:1;-ms-grid-row:5}.kdtp-cal-body>:nth-child(16){-ms-grid-column:3;-ms-grid-row:5}.kdtp-cal-body>:nth-child(17){-ms-grid-column:5;-ms-grid-row:5}.kdtp-cal-body>:nth-child(18){-ms-grid-column:7;-ms-grid-row:5}.kdtp-cal-body>:nth-child(19){-ms-grid-column:9;-ms-grid-row:5}.kdtp-cal-body>:nth-child(20){-ms-grid-column:11;-ms-grid-row:5}.kdtp-cal-body>:nth-child(21){-ms-grid-column:13;-ms-grid-row:5}.kdtp-cal-body>:nth-child(22){-ms-grid-column:1;-ms-grid-row:7}.kdtp-cal-body>:nth-child(23){-ms-grid-column:3;-ms-grid-row:7}.kdtp-cal-body>:nth-child(24){-ms-grid-column:5;-ms-grid-row:7}.kdtp-cal-body>:nth-child(25){-ms-grid-column:7;-ms-grid-row:7}.kdtp-cal-body>:nth-child(26){-ms-grid-column:9;-ms-grid-row:7}.kdtp-cal-body>:nth-child(27){-ms-grid-column:11;-ms-grid-row:7}.kdtp-cal-body>:nth-child(28){-ms-grid-column:13;-ms-grid-row:7}.kdtp-cal-body>:nth-child(29){-ms-grid-column:1;-ms-grid-row:9}.kdtp-cal-body>:nth-child(30){-ms-grid-column:3;-ms-grid-row:9}.kdtp-cal-body>:nth-child(31){-ms-grid-column:5;-ms-grid-row:9}.kdtp-cal-body>:nth-child(32){-ms-grid-column:7;-ms-grid-row:9}.kdtp-cal-body>:nth-child(33){-ms-grid-column:9;-ms-grid-row:9}.kdtp-cal-body>:nth-child(34){-ms-grid-column:11;-ms-grid-row:9}.kdtp-cal-body>:nth-child(35){-ms-grid-column:13;-ms-grid-row:9}.kdtp-cal-body>:nth-child(36){-ms-grid-column:1;-ms-grid-row:11}.kdtp-cal-body>:nth-child(37){-ms-grid-column:3;-ms-grid-row:11}.kdtp-cal-body>:nth-child(38){-ms-grid-column:5;-ms-grid-row:11}.kdtp-cal-body>:nth-child(39){-ms-grid-column:7;-ms-grid-row:11}.kdtp-cal-body>:nth-child(40){-ms-grid-column:9;-ms-grid-row:11}.kdtp-cal-body>:nth-child(41){-ms-grid-column:11;-ms-grid-row:11}.kdtp-cal-body>:nth-child(42){-ms-grid-column:13;-ms-grid-row:11}.kdtp-cal-body>:nth-child(43){-ms-grid-column:1;-ms-grid-row:13}.kdtp-cal-body>:nth-child(44){-ms-grid-column:3;-ms-grid-row:13}.kdtp-cal-body>:nth-child(45){-ms-grid-column:5;-ms-grid-row:13}.kdtp-cal-body>:nth-child(46){-ms-grid-column:7;-ms-grid-row:13}.kdtp-cal-body>:nth-child(47){-ms-grid-column:9;-ms-grid-row:13}.kdtp-cal-body>:nth-child(48){-ms-grid-column:11;-ms-grid-row:13}.kdtp-cal-body>:nth-child(49){-ms-grid-column:13;-ms-grid-row:13}.kdtp-cal-header-input{background:#fff;border:1px solid silver;color:#262626;font-size:1em;height:100%;outline:none;padding:2px 5px;width:100%}.kdtp-cal-header-input.error{border-color:red}.kdtp-cal-header{background-color:#09c;color:#fff;font-size:1.2em;font-weight:600;height:2em;line-height:2em;text-align:center}.kdtp-cal-nav{display:flex;line-height:1em;margin:.7em 0;padding:0}.kdtp-cal-nav-next,.kdtp-cal-nav-prev{color:#777;flex:0 0 auto;font-size:3em;font-weight:600;text-align:center;width:1em}.kdtp-cal-nav-next:hover,.kdtp-cal-nav-prev:hover{color:#09c;cursor:pointer}.kdtp-cal-nav-selectors{display:flex;flex:1 1 auto;font-size:1.2em;margin:0 .5em}.kdtp-cal-nav-month{flex:1 1 auto;margin-right:.5em}.kdtp-cal-nav-year{flex:0 0 auto}.kdtp-cal-nav-selectors select{border:none;color:#777;font-weight:600}.kdtp-cal-nav-selectors select:hover{color:#09c}.kdtp-cal-nav-selectors select:hover option{color:#777}.kdtp-cal-weekday{align-items:center;color:#262626;display:flex;font-size:.8em;font-weight:600;height:1.8em;justify-content:center}.kdtp-cal-weekday.kdtp-cal-weekend{color:#ff685d}.kdtp-cal-day,.kdtp-cal-day-empty{align-items:center;border-radius:4px;color:#262626;display:flex;height:1.5em;justify-content:center}.kdtp-cal-day.kdtp-cal-weekend{color:#ff685d;font-weight:700}.kdtp-cal-day-selected,.kdtp-cal-day:hover{border:2px solid #09c;cursor:pointer;font-weight:700}.kdtp-cal-day-current{background-color:#d3d3d3}.kdtp-tp{-ms-flex-align:center;align-items:center;-webkit-align-items:center;display:flex;display:-ms-flexbox;margin-top:1em;padding:0 1em}.kdtp-tp-time{border:2px solid #09c;border-radius:6px;color:#777;flex:0 0 5em;-webkit-flex:0 0 5em;-ms-flex:0 0 5em;font-weight:600;margin-right:.5em;text-align:center}.kdtp-tp-sliders{flex:1 1 auto;-webkit-flex:1 1 auto;-ms-flex:1 1 auto}.kdtp-tp-time-row{align-items:center;background:linear-gradient(90deg,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;display:flex;height:1.5em}.kdtp-tp-time-row input[type=range]{-webkit-appearance:none;background:0 0;cursor:pointer;flex:1;height:100%;margin:0;padding:0}.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-ms-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:focus{outline:0}.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-ms-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;margin-top:-6px;-webkit-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-moz-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-ms-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-ms-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-moz-range-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-fill-lower,.kdtp-tp-time-row input[type=range]::-ms-fill-upper{background:0 0}:root{--tsp-border-color:#e8e8e8;--tsp-control-background:#ebebeb;--tsp-control-text-color:#000}.tsp__container{display:flex;flex-flow:row}.tsp__intervals{border-right:1px solid var(--tsp-border-color);display:flex;flex-flow:column;padding-right:10px}.tsp__button{align-items:center;background-color:var(--tsp-control-background);border:1px solid transparent;box-sizing:border-box;color:var(--tsp-control-text-color);cursor:pointer;display:inline-flex;font-size:12px;font-weight:400;justify-content:center;line-height:1.2;margin-bottom:4px;opacity:.8;outline:none;overflow:visible;padding:4px 12px;position:relative;text-align:center;transition:all .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.tsp__button:hover{border-color:var(--tsp-border-color);opacity:1}.tsp__button:active{opacity:.9}.tsp__form{display:flex;flex-flow:row nowrap;width:100%}.tsp__date{display:flex;flex-flow:column;padding:0 10px;width:50%}.tsp__label{display:flex;flex-flow:row nowrap}.tsp__label label{font-weight:700}.tsp__label select{border-color:var(--tsp-border-color);font-size:12px;margin-left:auto}.tsp__calendar{margin:10px 0;width:230px}.tsp__calendar .kdtp-cal-header input{border:1px solid var(--tsp-border-color)!important}.tsp__calendar{display:flex;flex-flow:column}.tsp__calendar .kdtp-cal-body{margin:10px 0!important}.tsp__calendar .kdtp-cal-header{margin-bottom:10px!important}.tsp__calendar .kdtp-cal-nav-selectors{font-size:16px!important}.tsp__calendar .kdtp-cal-body{grid-gap:2px!important;padding:0!important}.tsp__calendar .kdtp-cal-nav-next,.tsp__calendar .kdtp-cal-nav-prev{font-size:2em!important;width:auto!important}.tsp__calendar .kdtp-cal-body{border:1px solid var(--tsp-border-color);padding:5px!important}.tsp__calendar .kdtp-cal-day{border:1px solid var(--tsp-border-color);font-size:14px;height:30px;width:30px}.tsp__calendar .kdtp-cal-day-current{background:#3ab93c;color:#fff}.tsp__calendar .day-in-range{background:#c6e3ff!important}.kdlg-footer{border-top:1px solid var(--tsp-border-color)} -/*# sourceMappingURL=easydata.css.map */ \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css.map b/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css.map deleted file mode 100644 index 6c50e114..00000000 --- a/playground/EasyDataAspNetCoreTest01/wwwroot/css/easydata.css.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["easy-grid.css","easy-dialog.css","buttons.css","columns.css","controls.css","forms.css","datetimepicker.css","timespanpicker.css"],"names":[],"mappings":"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","file":"easydata.css","sourcesContent":["/* EasyData grid */\r\n\r\n.keg-container * {\r\n outline: none; \r\n}\r\n\r\n.keg-container {\r\n overflow: hidden;\r\n}\r\n\r\n.keg-header {\r\n background-color: #f8f8f8;\r\n border-bottom: 1px solid #babfc7;\r\n overflow: hidden;\r\n flex: 0 0 auto;\r\n}\r\n\r\n.keg-root {\r\n font-family: \"Roboto\", Arial, serif;\r\n display: flex;\r\n flex-direction: column;\r\n border: 1px solid #babfc7;\r\n}\r\n\r\n.keg-body {\r\n overflow: hidden;\r\n flex: 1;\r\n}\r\n\r\n.keg-body-viewport {\r\n overflow-x: auto;\r\n overflow-y: auto;\r\n height: 100%;\r\n border: 1px solid transparent;\r\n}\r\n\r\n.keg-body-viewport:focus, .keg-body-viewport:focus-within {\r\n border: 1px solid #838383;\r\n}\r\n\r\n.keg-header-row {\r\n min-height: 30px;\r\n display: flex;\r\n font-size: 12px;\r\n font-weight: 600;\r\n color: rgba(0,0,0,.54);\r\n}\r\n\r\n.keg-row {\r\n display: flex;\r\n font-size: 12px;\r\n background-color: #fff;\r\n color: #181d1f;\r\n outline: none;\r\n border-color: #dde2eb;\r\n border-width: 1px;\r\n border-bottom-style: solid;\r\n height: 26px;\r\n align-items: center;\r\n}\r\n\r\n.keg-row:not(.keg-row-active):not(.keg-row-totals):hover {\r\n background-color: #fffae9;\r\n}\r\n\r\n.keg-row-odd {\r\n background-color: #fcfcfc;\r\n}\r\n\r\n.keg-row-active {\r\n background-color: #fff3cf;\r\n}\r\n\r\n.keg-cell, .keg-header-cell {\r\n display: flex;\r\n}\r\n\r\n.keg-header-cell {\r\n position: relative;\r\n align-items: center;\r\n padding: 2px 6px;\r\n}\r\n\r\n.keg-header-cell-resize {\r\n display: flex;\r\n align-items: center;\r\n position: absolute;\r\n z-index: 2;\r\n height: 100%;\r\n width: 8px;\r\n top: 0;\r\n right: -4px;\r\n}\r\n\r\n.keg-header-cell-resize:after {\r\n content: \"\";\r\n position: absolute;\r\n z-index: 1;\r\n display: block;\r\n left: calc(50% - 1px);\r\n width: 2px;\r\n height: 50%;\r\n top: 25%;\r\n background-color: rgba(186,191,199,.5); \r\n}\r\n\r\n.keg-header-cell-label {\r\n width: 100%;\r\n text-align: center;\r\n word-break: keep-all;\r\n -ms-word-wrap: keep-all;\r\n}\r\n\r\n.keg-cell {\r\n padding: 0 4px 0 10px;\r\n border-right-width: 1px;\r\n border-right: solid transparent;\r\n align-items: center;\r\n height: 100%;\r\n outline: none;\r\n}\r\n\r\n.keg-cell-value {\r\n width: 100%;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n max-height: 100%;\r\n}\r\n\r\n/*\r\n.keg-row .keg-cell:first-child, .keg-header-row .keg-header-cell:first-child {\r\n flex: 0 0 55px;\r\n min-width: 55px;\r\n}\r\n*/\r\n\r\n.keg-cell-align-left, .keg-cell-value-align-left {\r\n text-align: left;\r\n}\r\n\r\n.keg-cell-align-right, .keg-cell-value-align-right {\r\n text-align: right;\r\n}\r\n\r\n.keg-cell-align-center, .keg-cell-value-align-center {\r\n text-align: center;\r\n}\r\n\r\n.keg-cell-value-bool {\r\n margin: 0 auto;\r\n width: auto;\r\n}\r\n\r\n.keg-cell-value-true::before {\r\n content: \"\\2714\";\r\n color: #28a745;\r\n font-size: 16px;\r\n}\r\n\r\n.keg-cell-value-false::before {\r\n content: \"\\2716\";\r\n color: #dc3545;\r\n font-size: 16px;\r\n}\r\n\r\n.keg-header-btn-plus {\r\n position: relative;\r\n height: 23px;\r\n width: 23px;\r\n}\r\n\r\n.keg-header-btn-plus a {\r\n background: url('data:image/png;base64,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') no-repeat;\r\n width: 100%;\r\n height: 100%;\r\n display: block;\r\n}\r\n\r\n.keg-header-btn-plus a:hover {\r\n background-position: -25px 0 !important;\r\n}\r\n\r\n/* Pagination */\r\n.keg-pagination-wrapper {\r\n display: inline-flex;\r\n}\r\n\r\n.keg-pagination {\r\n display: inline-flex;\r\n padding-left: 0;\r\n margin: 0;\r\n border-radius: 4px;\r\n}\r\n\r\n.keg-page-item {\r\n display: inline;\r\n}\r\n\r\n.keg-page-link {\r\n font-size: 12px;\r\n background-color: #fff;\r\n border: 1px solid #ddd;\r\n color: #428bca;\r\n float: left;\r\n line-height: 1.42857;\r\n margin-left: -1px;\r\n padding: 5px 10px;\r\n position: relative;\r\n text-decoration: none;\r\n}\r\n\r\n.keg-page-link:hover, .keg-page-link:focus {\r\n background-color: #eee;\r\n border-color: #ddd;\r\n color: #2a6496;\r\n border-bottom: #ffd148 2px solid !important;\r\n}\r\n\r\n.keg-page-item.active > .keg-page-link, .keg-page-item.active > .keg-page-link:hover, .keg-page-item.active > .keg-page-link:focus {\r\n background-color: #428bca;\r\n border-color: #428bca;\r\n color: #fff;\r\n cursor: default;\r\n z-index: 2;\r\n}\r\n\r\n.keg-page-item.disabled > .keg-page-link, .keg-page-item.disabled > .keg-page-link:hover, .keg-page-item.disabled > .keg-page-link:focus {\r\n background-color: #fff;\r\n border-color: #ddd;\r\n color: #999;\r\n cursor: not-allowed;\r\n}\r\n\r\n.keg-page-item:first-child > .keg-page-link {\r\n border-bottom-left-radius: 3px;\r\n border-top-left-radius: 3px;\r\n margin-left: 0;\r\n}\r\n\r\n.keg-page-item:last-child > .keg-page-link {\r\n border-bottom-right-radius: 3px;\r\n border-top-right-radius: 3px;\r\n}\r\n\r\n.keg-page-sizes {\r\n display: inline-flex;\r\n margin-left: 20px;\r\n}\r\n\r\n.keg-page-sizes-select {\r\n font-size: 12px; \r\n height: auto !important;\r\n}\r\n\r\n.keg-page-sizes-select::after {\r\n height: .6em !important;\r\n width: .6em !important;\r\n margin-top: -.6em !important;\r\n border-width: 2px !important;\r\n}\r\n\r\n.keg-page-sizes-label {\r\n margin-left: 10px;\r\n font-size: 16px;\r\n color: rgba(0,0,0,.54);\r\n padding: 5px 0;\r\n white-space: nowrap;\r\n}\r\n\r\n.keg-footer {\r\n display: flex;\r\n /*justify-content: space-between;*/\r\n margin-top: 5px;\r\n flex-wrap: wrap;\r\n}\r\n\r\n.keg-page-info {\r\n padding: 5px 10px;\r\n font-size: 16px;\r\n white-space: nowrap;\r\n flex: 1 1 auto;\r\n text-align: end;\r\n color: rgba(0,0,0,.54);\r\n}\r\n\r\n.keg-page-info > span {\r\n color: #212529;\r\n}\r\n\r\n.keg-row-totals {\r\n font-weight: bold;\r\n}\r\n\r\n.keg-totals-lv0 {\r\n background-color: #ACE1AF;\r\n}\r\n\r\n.keg-totals-lv1 {\r\n background-color: #D0F0C0;\r\n}\r\n\r\n.keg-totals-lv2 {\r\n background-color: #D0F2C0;\r\n}\r\n\r\n.keg-totals-lv3 {\r\n background-color: #D0F4C0;\r\n}\r\n\r\n.keg-totals-lv4 {\r\n background-color: #D0F6C0;\r\n}\r\n\r\n.keg-totals-lv5 {\r\n background-color: #D0F8C0;\r\n}\r\n\r\n.keg-sortable-helper {\r\n background-color: white;\r\n padding: 3px 20px;\r\n border: 2px solid #fb9c2f;\r\n border-radius: 4px;\r\n}\r\n\r\n\r\n.eqjs-chart-main, .eqjs-chart-content, .keg-container, .keg-root {\r\n height: 100%;\r\n}\r\n\r\n.eqjs-chart-content canvas {\r\n max-height: 100%;\r\n}\r\n\r\n.question-mark {\r\n position: relative;\r\n background: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC') no-repeat center;\r\n width: 20px;\r\n height: 20px;\r\n margin-left: 5px;\r\n}","/* EasyData dialogs */\r\n\r\n.kdlg-modal, .kdlg-modal-background {\r\n bottom: 0;\r\n left: 0;\r\n position: absolute;\r\n right: 0;\r\n top: 0;\r\n}\r\n\r\n.kdlg-modal-background {\r\n background-color: rgba(10,10,10,0.5);\r\n}\r\n\r\n.kdlg-modal {\r\n font-family: \"Roboto\", Arial, serif;\r\n font-size: 16px;\r\n font-weight: 400;\r\n line-height: 1.5;\r\n\r\n align-items: center;\r\n display: none;\r\n flex-direction: column;\r\n justify-content: center;\r\n overflow: hidden;\r\n position: fixed;\r\n z-index: 9999;\r\n}\r\n\r\n.kdlg-modal.is-active {\r\n display: flex;\r\n}\r\n\r\n\r\n.kdlg-modal-window, .kdlg-modal-window.size-default {\r\n margin: 0 20px;\r\n position: relative;\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n max-height: calc(100vh - 40px);\r\n overflow: hidden;\r\n -ms-overflow-y: visible; \r\n}\r\n\r\n@media screen and (min-width: 481px), print {\r\n .kdlg-modal-window.size-small {\r\n margin: 0 auto;\r\n width: 400px;\r\n }\r\n}\r\n\r\n@media screen and (min-width: 769px), print {\r\n .kdlg-modal-window, .kdlg-modal-window.size-default {\r\n margin: 0 auto;\r\n width: 640px;\r\n }\r\n\r\n .kdlg-modal-window.size-large, .kdlg-modal-window.size-xl {\r\n margin: 0 20px;\r\n width: 100%;\r\n }\r\n}\r\n\r\n@media screen and (min-width: 1025px), print {\r\n .kdlg-modal-window.size-large {\r\n margin: 0 auto;\r\n width: 900px;\r\n }\r\n}\r\n\r\n@media screen and (min-width: 1383px), print {\r\n .kdlg-modal-window.size-xl {\r\n margin: 0 auto;\r\n width: 1200px;\r\n }\r\n}\r\n\r\n\r\n.kdlg-footer, .kdlg-header {\r\n align-items: center;\r\n background-color: #fff;\r\n display: flex;\r\n flex-shrink: 0;\r\n justify-content: flex-start;\r\n padding: 20px;\r\n position: relative;\r\n}\r\n\r\n.kdlg-footer.align-right {\r\n justify-content: flex-end;\r\n}\r\n\r\n.kdlg-footer.align-center {\r\n justify-content: center;\r\n}\r\n\r\n.kdlg-header {\r\n border-top-left-radius: 6px;\r\n border-top-right-radius: 6px;\r\n}\r\n\r\n.kdlg-header.has-border {\r\n border-bottom: 1px solid #dbdbdb;\r\n}\r\n\r\n.kdlg-footer {\r\n\tmin-height: 10px;\r\n border-bottom-left-radius: 6px;\r\n border-bottom-right-radius: 6px;\r\n height: auto;\r\n color: initial;\r\n margin: unset;\r\n}\r\n\r\n.kdlg-footer.has-border {\r\n border-top: 1px solid #dbdbdb;\r\n}\r\n\r\n.kdlg-header-title {\r\n color: #363636;\r\n flex-grow: 1;\r\n flex-shrink: 0;\r\n font-size: 1.6em;\r\n line-height: 1;\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n.kdlg-modal-close {\r\n -webkit-touch-callout: none;\r\n -webkit-user-select: none;\r\n -moz-user-select: none;\r\n -ms-user-select: none;\r\n user-select: none;\r\n -moz-appearance: none;\r\n -webkit-appearance: none;\r\n background-color: rgba(10,10,10,.2);\r\n border: none;\r\n border-radius: 290486px;\r\n cursor: pointer;\r\n pointer-events: auto;\r\n display: inline-block;\r\n flex-grow: 0;\r\n flex-shrink: 0;\r\n font-size: 0;\r\n height: 24px;\r\n max-height: 24px;\r\n max-width: 24px;\r\n min-height: 24px;\r\n min-width: 24px;\r\n outline: 0;\r\n position: relative;\r\n vertical-align: top;\r\n width: 24px;\r\n}\r\n\r\n.kdlg-modal-close::before, .kdlg-modal-close::after {\r\n background-color: #fff;\r\n content: \"\";\r\n display: block;\r\n left: 50%;\r\n position: absolute;\r\n top: 50%;\r\n transform: translateX(-50%) translateY(-50%) rotate(45deg);\r\n transform-origin: center center;\r\n}\r\n\r\n.kdlg-modal-close::before {\r\n height: 2px;\r\n width: 50%;\r\n}\r\n\r\n.kdlg-modal-close::after {\r\n height: 50%;\r\n width: 2px;\r\n}\r\n\r\n.kdlg-modal-close:focus, .kdlg-modal-close:hover {\r\n background-color: rgba(255,1,1,.48);\r\n}\r\n\r\n\r\n.kdlg-body {\r\n -webkit-overflow-scrolling: touch;\r\n background-color: #fff;\r\n flex-grow: 1;\r\n flex-shrink: 1;\r\n overflow: auto;\r\n padding: 20px;\r\n font-size: 1em;\r\n color: #4a4a4a;\r\n}\r\n\r\n\r\n/** alerts start **/\r\n\r\n.kdlg-alert-container {\r\n max-height: 150px;\r\n overflow-y: auto;\r\n}\r\n\r\n.kdlg-alert {\r\n padding: 20px;\r\n background-color: #e2f5ff;\r\n color: #004aef;\r\n min-width: 1px;\r\n min-height: 60px;\r\n}\r\n\r\n.kdlg-alert.success {\r\n color: #0c7905;\r\n background-color: #efffe6;\r\n}\r\n\r\n.kdlg-alert.warning {\r\n color: #e49e02;\r\n background-color: #fff7e5;\r\n}\r\n\r\n.kdlg-alert.error {\r\n color: red;\r\n background-color: #ffe2e2;\r\n}\r\n\r\n.kdlg-alert-closebtn {\r\n margin-left: 15px;\r\n float: right;\r\n font-size: 22px;\r\n line-height: 20px;\r\n cursor: pointer;\r\n transition: 0.3s;\r\n}\r\n\r\n/** alerts end **/\r\n\r\n\r\n/** progress start **/\r\n.kdlg-progress-line {\r\n width: 100%;\r\n overflow: hidden;\r\n background-color: #e0e0e0;\r\n padding: 3px;\r\n border-radius: 3px;\r\n box-shadow: inset 0 1px 3px rgba(0, 0, 0, .2);\r\n}\r\n\r\n.kdlg-progress-line .fill {\r\n display: block;\r\n height: 22px;\r\n background-color: #659cef;\r\n border-radius: 3px;\r\n transition: width 500ms ease-in-out;\r\n}\r\n\r\n.kdlg-progress-line .fill.indeterminate {\r\n position: relative;\r\n left: -200px;\r\n width: 200px;\r\n animation: kdlg-progress-line-loading 2s linear infinite;\r\n transition: none;\r\n}\r\n\r\n @keyframes kdlg-progress-line-loading {\r\n from { left: -200px; }\r\n to { left: 120%;}\r\n }\r\n\r\n/** progress end **/","/* EasyData forms: buttons */\r\n\r\n.kfrm-buttons {\r\n align-items: center;\r\n display: flex;\r\n flex-wrap: wrap;\r\n justify-content: flex-start;\r\n}\r\n\r\n.kfrm-buttons.align-right {\r\n justify-content: flex-end;\r\n}\r\n\r\n.kfrm-buttons.align-center {\r\n justify-content: center;\r\n}\r\n\r\n.kfrm-buttons:last-child {\r\n margin-bottom: -.5rem;\r\n}\r\n\r\n.kfrm-buttons .kfrm-button {\r\n margin-bottom: .5rem;\r\n}\r\n\r\n.kfrm-button {\r\n position: relative;\r\n vertical-align: top;\r\n line-height: 1.5;\r\n align-items: center;\r\n border: 1px solid transparent;\r\n border-radius: 4px;\r\n box-shadow: none;\r\n display: inline-flex;\r\n font-size: 1em;\r\n height: 2.5em;\r\n -moz-appearance: none;\r\n -webkit-appearance: none;\r\n\r\n\r\n background-color: #fff;\r\n border-color: #dbdbdb;\r\n border-width: 1px;\r\n color: #363636;\r\n cursor: pointer;\r\n justify-content: center;\r\n padding-bottom: calc(.5em - 1px);\r\n padding-left: 1em;\r\n padding-right: 1em;\r\n padding-top: calc(.5em - 1px);\r\n text-align: center;\r\n white-space: nowrap;\r\n\r\n -webkit-touch-callout:none;\r\n -webkit-user-select:none;\r\n -moz-user-select:none;\r\n -ms-user-select:none;\r\n user-select:none\r\n}\r\n\r\n.kfrm-button:not(:last-child) {\r\n margin-right: .5em;\r\n}\r\n\r\n.kfrm-button.is-hovered, .kfrm-button:hover {\r\n border-color: #b5b5b5;\r\n color: #363636;\r\n}\r\n\r\n.kfrm-button.is-focused, .kfrm-button:focus {\r\n outline: none;\r\n border-color: #3273dc;\r\n color: #363636;\r\n}\r\n\r\n.kfrm-button.is-focused:not(:active), .kfrm-button:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(50,115,220,.25);\r\n}\r\n\r\n.kfrm-button.is-active, .kfrm-button:active {\r\n border-color: #4a4a4a;\r\n color: #363636;\r\n}\r\n\r\n.kfrm-button[disabled], fieldset[disabled] .kfrm-button {\r\n background-color: #fff;\r\n border-color: #dbdbdb;\r\n box-shadow: none;\r\n opacity: .5;\r\n cursor: not-allowed;\r\n}\r\n\r\n.kfrm-button.is-loading {\r\n color: transparent!important;\r\n pointer-events: none;\r\n}\r\n\r\n.kfrm-button.is-loading::after {\r\n -webkit-animation:spinAround .5s infinite linear;\r\n animation:spinAround .5s infinite linear;\r\n border:2px solid #dbdbdb;\r\n border-radius:290486px;\r\n border-right-color:transparent;\r\n border-top-color:transparent;\r\n content:\"\";\r\n display:block;\r\n height:1em;\r\n width:1em;\r\n\r\n left: calc(50% - (1em / 2));\r\n top: calc(50% - (1em / 2));\r\n position: absolute!important;\r\n}\r\n\r\n@keyframes spinAround {\r\n from {\r\n transform:rotate(0deg);\r\n }\r\n to {\r\n transform:rotate(360deg);\r\n }\r\n}\r\n\r\n/* SIZES */\r\n\r\n.kfrm-button.size-small,\r\n.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large) {\r\n border-radius: 2px;\r\n font-size: .75rem;\r\n}\r\n\r\n.kfrm-button.size-default\r\n.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large) {\r\n font-size: 1rem;\r\n}\r\n\r\n.kfrm-button.size-medium,\r\n.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large) {\r\n font-size: 1.25rem;\r\n}\r\n\r\n.kfrm-button.size-large\r\n.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium) {\r\n font-size: 1.5rem;\r\n}\r\n\r\n/* SIZES END */\r\n\r\n\r\n\r\n/* COLORS */\r\n\r\n/* white */\r\n.kfrm-button.is-white {\r\n background-color: #fff;\r\n border-color: transparent;\r\n color: #0a0a0a;\r\n}\r\n\r\n.kfrm-button.is-white.is-hovered, .kfrm-button.is-white:hover {\r\n background-color: #f9f9f9;\r\n border-color: transparent;\r\n color: #0a0a0a;\r\n}\r\n\r\n.kfrm-button.is-white.is-focused, .kfrm-button.is-white:focus {\r\n border-color: transparent;\r\n color: #0a0a0a;\r\n}\r\n\r\n.kfrm-button.is-white.is-focused:not(:active), .kfrm-button.is-white:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(150,150,150,.15);\r\n}\r\n\r\n.kfrm-button.is-white.is-active, .kfrm-button.is-white:active {\r\n background-color: #f2f2f2;\r\n border-color: transparent;\r\n color: #0a0a0a;\r\n}\r\n\r\n/* dark */\r\n\r\n.kfrm-button.is-dark {\r\n background-color: #363636e6;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-dark.is-hovered, .kfrm-button.is-dark:hover {\r\n background-color: #2f2f2f;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-dark.is-focused, .kfrm-button.is-dark:focus {\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-dark.is-focused:not(:active), .kfrm-button.is-dark:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(54,54,54,.25);\r\n}\r\n\r\n.kfrm-button.is-dark.is-active, .kfrm-button.is-dark:active {\r\n background-color: #292929;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n/* primary */\r\n\r\n.kfrm-button.is-primary {\r\n background-color: #00d1b2;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-primary.is-hovered, .kfrm-button.is-primary:hover {\r\n background-color: #00c4a7;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-primary.is-focused, .kfrm-button.is-primary:focus {\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-primary.is-focused:not(:active), .kfrm-button.is-primary:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(0,209,178,.25);\r\n}\r\n\r\n.kfrm-button.is-primary.is-active, .kfrm-button.is-primary:active {\r\n background-color: #00b89c;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-primary.is-loading::after {\r\n border-color: transparent transparent #fff #fff!important;\r\n}\r\n\r\n/* link */\r\n\r\n.kfrm-button.is-link {\r\n background-color: #3273dc;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-link.is-hovered, .kfrm-button.is-link:hover {\r\n background-color: #276cda;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-link.is-focused, .kfrm-button.is-link:focus {\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-link.is-focused:not(:active), .kfrm-button.is-link:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(50,115,220,.25);\r\n}\r\n\r\n.kfrm-button.is-link.is-active, .kfrm-button.is-link:active {\r\n background-color: #2366d1;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-link.is-loading::after {\r\n border-color: transparent transparent #fff #fff!important;\r\n}\r\n\r\n/* info */\r\n\r\n.kfrm-button.is-info {\r\n background-color: #3298dc;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-info.is-hovered, .kfrm-button.is-info:hover {\r\n background-color: #2793da;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-info.is-focused, .kfrm-button.is-info:focus {\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-info.is-focused:not(:active), .kfrm-button.is-info:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(50,152,220,.25);\r\n}\r\n\r\n.kfrm-button.is-info.is-active, .kfrm-button.is-info:active {\r\n background-color: #238cd1;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-info.is-loading::after {\r\n border-color: transparent transparent #fff #fff!important;\r\n}\r\n\r\n/* success */\r\n\r\n.kfrm-button.is-success {\r\n background-color: #48c774;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-success.is-hovered, .kfrm-button.is-success:hover {\r\n background-color: #3ec46d;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-success.is-focused:not(:active), .kfrm-button.is-success:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(72,199,116,.25);\r\n}\r\n\r\n.kfrm-button.is-success.is-active, .kfrm-button.is-success:active {\r\n background-color: #3abb67;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-success.is-loading::after {\r\n border-color: transparent transparent #fff #fff!important;\r\n}\r\n\r\n/* warning */\r\n\r\n.kfrm-button.is-warning {\r\n background-color: #ffdd57;\r\n border-color: transparent;\r\n color: rgba(0,0,0,.7);\r\n}\r\n\r\n.kfrm-button.is-warning.is-hovered, .kfrm-button.is-warning:hover {\r\n background-color: #ffdb4a;\r\n border-color: transparent;\r\n color: rgba(0,0,0,.7);\r\n}\r\n\r\n.kfrm-button.is-warning.is-focused, .kfrm-button.is-warning:focus {\r\n border-color: transparent;\r\n color: rgba(0,0,0,.7);\r\n}\r\n\r\n.kfrm-button.is-warning.is-focused:not(:active), .kfrm-button.is-warning:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(255,221,87,.25);\r\n}\r\n\r\n.kfrm-button.is-warning.is-active, .kfrm-button.is-warning:active {\r\n background-color: #ffd83d;\r\n border-color: transparent;\r\n color: rgba(0,0,0,.7);\r\n}\r\n\r\n.kfrm-button.is-warning.is-loading::after {\r\n border-color: transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important;\r\n}\r\n\r\n/* danger */\r\n\r\n.kfrm-button.is-danger {\r\n background-color: #f14668;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-danger.is-hovered, .kfrm-button.is-danger:hover {\r\n background-color: #f03a5f;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-danger.is-focused, .kfrm-button.is-danger:focus {\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-danger.is-focused:not(:active), .kfrm-button.is-danger:focus:not(:active) {\r\n box-shadow: 0 0 0 0.125em rgba(241,70,104,.25);\r\n}\r\n\r\n.kfrm-button.is-danger.is-active, .kfrm-button.is-danger:active {\r\n background-color: #ef2e55;\r\n border-color: transparent;\r\n color: #fff;\r\n}\r\n\r\n.kfrm-button.is-danger.is-loading::after {\r\n border-color: transparent transparent #fff #fff!important;\r\n}\r\n\r\n/* COLORS END */\r\n\r\n\r\n/* BUTTONS END */","/* EasyData forms: columns */\r\n\r\n.kfrm-row {\r\n margin-left: -.75rem;\r\n margin-right: -.75rem;\r\n margin-top: -.75rem;\r\n}\r\n\r\n.kfrm-row:not(:last-child) {\r\n margin-bottom: calc(1.5rem - .75rem);\r\n}\r\n\r\n@media screen and (min-width: 769px), print {\r\n .kfrm-row {\r\n display: flex;\r\n flex-wrap: wrap;\r\n }\r\n\r\n .kdlg-modal-window.size-small .kfrm-row {\r\n display: block;\r\n }\r\n\r\n\r\n /* 12 columns grid */\r\n .kfrm-column.size-1 {\r\n flex: none;\r\n width: 8.33333%;\r\n }\r\n\r\n .kfrm-column.size-2 {\r\n flex: none;\r\n width: 16.66667%;\r\n }\r\n\r\n .kfrm-column.size-3 {\r\n flex: none;\r\n width: 25%;\r\n }\r\n\r\n .kfrm-column.size-4 {\r\n flex: none;\r\n width: 33.33333%;\r\n }\r\n\r\n .kfrm-column.size-5 {\r\n flex: none;\r\n width: 41.66667%;\r\n }\r\n\r\n .kfrm-column.size-6 {\r\n flex: none;\r\n width: 50%;\r\n }\r\n\r\n .kfrm-column.size-7 {\r\n flex: none;\r\n width: 58.33333%;\r\n }\r\n\r\n .kfrm-column.size-8 {\r\n flex: none;\r\n width: 66.66667%;\r\n }\r\n\r\n .kfrm-column.size-9 {\r\n flex: none;\r\n width: 75%;\r\n }\r\n\r\n .kfrm-column.size-10 {\r\n flex: none;\r\n width: 83.33333%;\r\n }\r\n\r\n .kfrm-column.size-11 {\r\n flex: none;\r\n width: 91.66667%;\r\n }\r\n\r\n .kfrm-column.size-12 {\r\n flex: none;\r\n width: 100%;\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n.kfrm-column {\r\n display: block;\r\n flex-basis: 0;\r\n flex-grow: 1;\r\n flex-shrink: 1;\r\n padding: .75rem;\r\n}\r\n\r\n/* COLUMNS END */\r\n\r\n","/* EasyData forms: controls */\r\n\r\n.kfrm-form .errors-block {\r\n color: red;\r\n}\r\n\r\n\r\n.kfrm-form .control {\r\n box-sizing: border-box;\r\n clear: both;\r\n position: relative;\r\n text-align: inherit;\r\n display: inline-flex;\r\n width: 100%;\r\n max-width: 100%;\r\n padding: 0 !important;\r\n}\r\n\r\n.kfrm-form .icon {\r\n align-items: center;\r\n display: inline-flex;\r\n justify-content: center;\r\n height: 1.5em;\r\n width: 1.5em;\r\n}\r\n\r\n.kfrm-form .control.has-icons-left input, .kfrm-form .control.has-icons-left .select select {\r\n padding-left: 2.5em;\r\n}\r\n\r\n.kfrm-form .control.has-icons-right input, .kfrm-form .control.has-icons-right .select select {\r\n padding-right: 2.5em;\r\n}\r\n\r\n.kfrm-form .control.has-icons-left .icon.is-left {\r\n left: 0;\r\n}\r\n\r\n.kfrm-form .control.has-icons-right .icon.is-right {\r\n right: 0;\r\n}\r\n\r\n.kfrm-form .control .icon {\r\n color: #dbdbdb;\r\n height: 2.5em;\r\n pointer-events: none;\r\n position: absolute;\r\n top: 0;\r\n width: 2.5em;\r\n z-index: 4;\r\n}\r\n\r\n.kfrm-form .control .icon.is-clickable {\r\n pointer-events: auto;\r\n}\r\n\r\n/*\r\n.kfrm-form .control input:focus~.icon, .kfrm-form .control .select:focus~.icon {\r\n color: #4a4a4a;\r\n}\r\n*/\r\n\r\n.kfrm-form .control .icon.is-clickable:hover {\r\n color: #4a4a4a;\r\n cursor: pointer;\r\n}\r\n\r\n\r\n.kfrm-form input.is-valid:not([type='checkbox']),\r\n.kfrm-form input.is-valid:not([type='checkbox']):hover {\r\n border-color: green;\r\n}\r\n\r\n.kfrm-form input.is-invalid:not([type='checkbox']),\r\n.kfrm-form input.is-invalid:not([type='checkbox']):hover {\r\n border-color: red;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']):read-only {\r\n background-color: #e9ecef;\r\n opacity: 1;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']), .kfrm-select select, .kfrm-form textarea {\r\n -moz-appearance: none;\r\n -webkit-appearance: none;\r\n align-items: center;\r\n border: 1px solid transparent;\r\n border-radius: 4px;\r\n box-shadow: none;\r\n display: inline-flex;\r\n font-size: 1em;\r\n height: 2.5em;\r\n justify-content: flex-start;\r\n line-height: 1.5;\r\n padding-bottom: calc(.5em - 1px);\r\n padding-left: calc(.75em - 1px);\r\n padding-right: calc(.75em - 1px);\r\n padding-top: calc(.5em - 1px);\r\n position: relative;\r\n vertical-align: top;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']), .kfrm-select select, .kfrm-form textarea {\r\n background-color: #fff;\r\n border-color: #dbdbdb;\r\n border-radius: 4px;\r\n color: #363636;\r\n outline: 0;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']), .kfrm-form textarea {\r\n box-shadow: inset 0 0.0625em 0.125em rgba(10,10,10,.05);\r\n max-width: 100%;\r\n width: 100%;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']):hover, .kfrm-form input:not([type='checkbox']).is-hovered, .kfrm-form textarea:hover, .kfrm-form textarea.is-hovered, .kfrm-select select:hover, .kfrm-select select.is-hovered {\r\n border-color: #b5b5b5;\r\n}\r\n\r\n.kfrm-form input:not([type='checkbox']):active, .kfrm-form input:not([type='checkbox']).is-active, .kfrm-form textarea:active, .kfrm-form textarea.is-active, .kfrm-select select:active, .kfrm-select select.is-active, \r\n.kfrm-form input:not([type='checkbox']):focus, .kfrm-form input:not([type='checkbox']).is-focused, .kfrm-form textarea:focus, .kfrm-form textarea.is-focused, .kfrm-select select:focus, .kfrm-select select.is-focused {\r\n border-color: #3273dc;\r\n box-shadow: 0 0 0 0.125em rgba(50,115,220,.25);\r\n outline: 0;\r\n}\r\n\r\n\r\n.kfrm-select {\r\n display: inline-block;\r\n max-width: 100%;\r\n position: relative;\r\n vertical-align: top;\r\n padding: 0;\r\n width: max-content;\r\n}\r\n\r\n.kfrm-select.full-width {\r\n width: 100%;\r\n}\r\n\r\n.kfrm-select select::-ms-expand {\r\n display: none !important;\r\n}\r\n\r\n.kfrm-select:not(.is-multiple) {\r\n height: 2.5em;\r\n}\r\n\r\n.kfrm-select select {\r\n cursor: pointer;\r\n display: block;\r\n font-size: 1em;\r\n max-width: 100%;\r\n outline: 0;\r\n}\r\n\r\n.kfrm-select select:not([multiple]) {\r\n padding-right: 2.5em;\r\n}\r\n\r\n.kfrm-select.kfrm-select.full-width select:not([multiple]) {\r\n width: 100%;\r\n}\r\n\r\n\r\n .kfrm-select:not(.is-multiple):not(.is-loading)::after {\r\n border: 3px solid #3273dc;\r\n border-radius: 2px;\r\n border-right: 0;\r\n border-top: 0;\r\n content: \" \";\r\n display: block;\r\n height: .425em;\r\n margin-top: -.5em;\r\n pointer-events: none;\r\n position: absolute;\r\n top: 50%;\r\n transform: rotate(-45deg);\r\n transform-origin: center;\r\n width: .425em;\r\n right: .7em;\r\n z-index: 4;\r\n}\r\n\r\n\r\n.kfrm-form textarea {\r\n display: block;\r\n max-width: 100%;\r\n min-width: 100%;\r\n padding: calc(.75em - 1px);\r\n resize: vertical;\r\n}\r\n\r\n.kfrm-form textarea:not([rows]) {\r\n max-height: 40em;\r\n min-height: 8em;\r\n}\r\n\r\n/* CONTROLS END */\r\n\r\n","/* EasyData forms: layout */\r\n.kfrm-form {\r\n font-size: 16px;\r\n}\r\n\r\n.kfrm-form fieldset {\r\n border: 1px solid #dbdbdb;\r\n border-radius: 6px;\r\n padding: 20px;\r\n}\r\n\r\n.kfrm-form fieldset > legend {\r\n padding-inline-start: 10px;\r\n padding-inline-end: 10px;\r\n font-weight: 600;\r\n width: auto;\r\n font-size: 16px;\r\n margin-bottom: 0;\r\n}\r\n\r\n.kfrm-break, .kfrm-break-50 {\r\n margin-top: 50px;\r\n}\r\n\r\n.kfrm-break-10 {\r\n margin-top: 10px;\r\n}\r\n\r\n.kfrm-break-20 {\r\n margin-top: 20px;\r\n}\r\n\r\n.kfrm-break-30 {\r\n margin-top: 30px;\r\n}\r\n\r\n.kfrm-break-40 {\r\n margin-top: 40px;\r\n}\r\n\r\n.kfrm-break-60 {\r\n margin-top: 60px;\r\n}\r\n\r\n.kfrm-break-70 {\r\n margin-top: 70px;\r\n}\r\n\r\n.kfrm-break-80 {\r\n margin-top: 10px;\r\n}\r\n\r\n\r\n.kfrm-fields, .kfrm-fields.col-a {\r\n display: grid;\r\n grid-template-columns: auto;\r\n grid-gap: 10px;\r\n grid-auto-rows: auto;\r\n}\r\n\r\n.kfrm-fields:not(:last-child) {\r\n margin-bottom: calc(1.5rem - .75rem);\r\n}\r\n\r\n.kfrm-fields > label {\r\n padding: .5em 0;\r\n}\r\n\r\n.kfrm-fields .label-compact {\r\n font-size: 0.9em;\r\n}\r\n\r\nfieldset .kfrm-fields > label {\r\n padding: 0;\r\n margin: 0;\r\n}\r\n\r\n.kfrm-fields > label:not(.checkbox) {\r\n font-weight: 600;\r\n}\r\n\r\n.kfrm-fields.label-above > label:not(.checkbox) {\r\n padding: 0.5em 0 0 0;\r\n margin-bottom: -0.5em;\r\n font-weight: 500;\r\n}\r\n\r\n.kfrm-fields.label-align-right > label:not(.checkbox) {\r\n text-align: right;\r\n}\r\n\r\n.kfrm-fields.col-a-1 {\r\n grid-template-columns: auto 1fr;\r\n}\r\n\r\n.kfrm-fields.col-1-a {\r\n grid-template-columns: 1fr auto;\r\n}\r\n\r\n.kfrm-fields.col-a-a {\r\n grid-template-columns: auto auto;\r\n}\r\n\r\n.kfrm-fields.col-1-1 {\r\n grid-template-columns: 1fr 1fr;\r\n}\r\n\r\n.kfrm-fields.col-1-2 {\r\n grid-template-columns: 1fr 2fr;\r\n}\r\n\r\n.kfrm-fields.col-1-3 {\r\n grid-template-columns: 1fr 3fr;\r\n}\r\n\r\n.kfrm-fields.col-2-1 {\r\n grid-template-columns: 2fr 1fr;\r\n}\r\n\r\n.kfrm-fields.col-3-1 {\r\n grid-template-columns: 3fr 1fr;\r\n}\r\n\r\n.kfrm-fields.col-2-3 {\r\n grid-template-columns: 2fr 3fr;\r\n}\r\n\r\n.kfrm-fields.col-3-2 {\r\n grid-template-columns: 3fr 2fr;\r\n}\r\n\r\n.kfrm-fields.is-horizontal {\r\n display: flex;\r\n padding: 0;\r\n}\r\n\r\n.kfrm-fields.is-horizontal.align-right {\r\n justify-content: flex-end;\r\n}\r\n\r\n.kfrm-fields.is-horizontal.align-center {\r\n justify-content: center;\r\n}\r\n\r\n.kfrm-fields.is-horizontal.align-evenly {\r\n justify-content: space-evenly;\r\n}\r\n\r\n.kfrm-fields.is-horizontal > label:not(:first-child) {\r\n margin-left: .5rem;\r\n}\r\n\r\n/* IE */\r\n.kfrm-fields-ie {\r\n display: flex;\r\n flex-direction: column;\r\n font-size: 16px;\r\n }\r\n\r\n.kfrm-field-ie {\r\n display: flex;\r\n margin-bottom: 1em;\r\n}\r\n\r\n.kfrm-field-ie > *:nth-child(1) {\r\n margin-right: 20px;\r\n}\r\n\r\n.kfrm-field-ie > label {\r\n padding: .5em 0;\r\n}\r\n\r\n.kfrm-fields-ie.col-ie-1-1 > .kfrm-field-ie > *:nth-child(1) {\r\n flex: 0 0 50%;\r\n}\r\n\r\n.kfrm-fields-ie.col-ie-1-2 > .kfrm-field-ie > *:nth-child(1) {\r\n flex: 0 0 33.3333%;\r\n}\r\n\r\n.kfrm-fields-ie.col-ie-1-3 > .kfrm-field-ie > *:nth-child(1) {\r\n flex: 0 0 25%;\r\n}\r\n\r\n.kfrm-fields-ie.col-ie-1-4 > .kfrm-field-ie > *:nth-child(1) {\r\n flex: 0 0 20%;\r\n}\r\n\r\n.kfrm-fields-ie.label-align-right .kfrm-field-ie > *:nth-child(1) {\r\n text-align: right;\r\n}\r\n\r\n.kfrm-fields-ie.label-above .kfrm-field-ie > *:nth-child(1):not(.checkbox) {\r\n padding: 0.5em 0 0 0;\r\n margin-bottom: -0.5em;\r\n}\r\n\r\n.kfrm-field-ie > label:not(.checkbox), .kfrm-fields-ie > label:not(.checkbox) {\r\n font-weight: 600;\r\n}\r\n\r\n.kfrm-fields-ie.is-horizontal {\r\n display: flex;\r\n padding: 0 !important;\r\n flex-direction: row;\r\n}\r\n\r\n.kfrm-fields-ie.kfrm-fields-ie.is-horizontal > *:not(.kfrm-select) {\r\n padding: .5em;\r\n}\r\n\r\n.kfrm-fields-ie.is-horizontal > *:not(:first-child) {\r\n margin-left: 1em;\r\n}\r\n\r\n.kfrm-fields-ie > label {\r\n padding-left: 0 !important;\r\n padding-right: 0 !important;\r\n}\r\n\r\n.kfrm-field > label {\r\n padding-right: 0.5em;\r\n}\r\n\r\n.kfrm-callout {\r\n font-size: 1.2em;\r\n text-align: center;\r\n}\r\n/* FORMS END */\r\n","/* EasyData forms: DateTime picker */\r\n.kdtp {\r\n border: 1px solid silver;\r\n background-color: white;\r\n box-shadow: 4px 8px 15px 0px rgba(0,0,0,.16);\r\n border-radius: 8px;\r\n overflow: hidden; \r\n z-index: 100000;\r\n outline: none;\r\n font-size: 0.7rem;\r\n}\r\n\r\n.kdtp-buttons {\r\n margin-top: 1em;\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n}\r\n\r\n.kdtp-button {\r\n height: 2.5em;\r\n flex: 1;\r\n background-color: #0099CC;\r\n border: none;\r\n color: white;\r\n text-align: center;\r\n text-decoration: none;\r\n cursor: pointer; \r\n font-weight: 500;\r\n}\r\n\r\n.kdtp-button:focus, .kdtp-button:active {\r\n outline: 0;\r\n}\r\n\r\n.kdtp-button-now {\r\n border: none;\r\n background-color: white;\r\n color: #0099CC;\r\n}\r\n\r\n.kdtp-button:nth-child(2) {\r\n border-top-left-radius: 8px;\r\n}\r\n\r\n.kdtp-button:not(:first-child) {\r\n margin-left: 2px;\r\n}\r\n\r\n.kdtp-cal {\r\n padding: 0;\r\n}\r\n\r\n.kdtp-cal * {\r\n outline: none !important;\r\n}\r\n\r\n.kdtp-cal-body {\r\n display: -ms-grid;\r\n display: grid;\r\n -ms-grid-columns: minmax(1em, 1fr) 5px minmax(1em, 1fr) 0.5em minmax(1em, 1fr) 0.5em minmax(1em, 1fr) 0.5em minmax(1em, 1fr) 0.5em minmax(1em, 1fr) 0.5em minmax(1em, 1fr);\r\n grid-template-columns: repeat(7, minmax(1em, 1fr));\r\n grid-gap: 0.5em;\r\n\tbox-sizing: border-box;\r\n padding: 0 12px;\r\n -ms-grid-rows: 1fr 0.5em 1fr 0.5em 1fr 0.5em 1fr 0.5em 1fr 0.5em 1fr 0.5em 1fr;\r\n}\r\n\r\n.kdtp-cal-body > *:nth-child(1) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(2) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(3) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(4) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(5) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(6) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(7) {\r\n -ms-grid-row: 1;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(8) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(9) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(10) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(11) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(12) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(13) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(14) {\r\n -ms-grid-row: 3;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(15) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(16) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(17) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(18) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(19) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(20) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(21) {\r\n -ms-grid-row: 5;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(22) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(23) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(24) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(25) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(26) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(27) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(28) {\r\n -ms-grid-row: 7;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(29) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(30) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(31) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(32) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(33) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(34) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(35) {\r\n -ms-grid-row: 9;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(36) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(37) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(38) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(39) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(40) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(41) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(42) {\r\n -ms-grid-row: 11;\r\n -ms-grid-column: 13;\r\n}\r\n.kdtp-cal-body > *:nth-child(43) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 1;\r\n}\r\n.kdtp-cal-body > *:nth-child(44) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 3;\r\n}\r\n.kdtp-cal-body > *:nth-child(45) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 5;\r\n}\r\n.kdtp-cal-body > *:nth-child(46) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 7;\r\n}\r\n.kdtp-cal-body > *:nth-child(47) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 9;\r\n}\r\n.kdtp-cal-body > *:nth-child(48) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 11;\r\n}\r\n.kdtp-cal-body > *:nth-child(49) {\r\n -ms-grid-row: 13;\r\n -ms-grid-column: 13;\r\n}\r\n\r\n.kdtp-cal-header-input {\r\n width: 100%;\r\n height: 100%;\r\n\r\n font-size: 1em;\r\n padding: 2px 5px;\r\n border: 1px solid silver;\r\n outline: none;\r\n background: #fff;\r\n color: #262626;\r\n}\r\n\r\n.kdtp-cal-header-input.error {\r\n border-color: red;\r\n}\r\n\r\n.kdtp-cal-header {\r\n background-color: #0099CC;\r\n color: white;\r\n text-align: center;\r\n font-size: 1.2em;\r\n font-weight: 600;\r\n height: 2em;\r\n line-height: 2em;\r\n}\r\n\r\n.kdtp-cal-nav {\r\n display: flex;\r\n padding: 0;\r\n margin: 0.7em 0;\r\n line-height: 1em;\r\n}\r\n\r\n.kdtp-cal-nav-prev, .kdtp-cal-nav-next {\r\n flex: 0 0 auto;\r\n font-size: 3em;\r\n font-weight: 600;\r\n width: 1em;\r\n color: #777777;\r\n text-align: center; \r\n}\r\n\r\n.kdtp-cal-nav-prev:hover, .kdtp-cal-nav-next:hover {\r\n cursor: pointer;\r\n color: #0099CC;\r\n}\r\n\r\n.kdtp-cal-nav-selectors {\r\n flex: 1 1 auto;\r\n display: flex;\r\n margin: 0 0.5em;\r\n font-size: 1.2em;\r\n}\r\n\r\n.kdtp-cal-nav-month {\r\n flex: 1 1 auto;\r\n margin-right: 0.5em;\r\n}\r\n\r\n.kdtp-cal-nav-year {\r\n flex: 0 0 auto;\r\n}\r\n\r\n.kdtp-cal-nav-selectors select {\r\n border: none;\r\n color: #777777;\r\n font-weight: 600;\r\n}\r\n\r\n.kdtp-cal-nav-selectors select:hover {\r\n color: #0099CC;\r\n}\r\n\r\n.kdtp-cal-nav-selectors select:hover option {\r\n color: #777777;\r\n}\r\n\r\n.kdtp-cal-weekday {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n height: 1.8em;\r\n font-weight: 600;\r\n\tfont-size: 0.8em;\r\n color: #262626;\r\n}\r\n\r\n.kdtp-cal-weekday.kdtp-cal-weekend {\r\n color: #ff685d;\r\n}\r\n\r\n.kdtp-cal-day, .kdtp-cal-day-empty {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n height: 1.5em;\r\n color: #262626;\r\n border-radius: 4px;\r\n}\r\n\r\n.kdtp-cal-day.kdtp-cal-weekend {\r\n color: #ff685d;\r\n font-weight: 700;\r\n}\r\n\r\n.kdtp-cal-day:hover, .kdtp-cal-day-selected {\r\n border: 2px solid #0099CC;\r\n font-weight: 700;\r\n cursor: pointer;\r\n}\r\n\r\n.kdtp-cal-day-current {\r\n background-color: lightgray;\r\n}\r\n\r\n.kdtp-tp {\r\n display: flex;\r\n display:-webkit-flex;\r\n display:-ms-flexbox;\r\n align-items: center;\r\n -webkit-align-items:center;\r\n -ms-flex-align:center;\r\n margin-top: 1em;\r\n padding: 0 1em;\r\n}\r\n\r\n.kdtp-tp-time {\r\n flex: 0 0 5em;\r\n -webkit-flex: 0 0 5em;\r\n -ms-flex: 0 0 5em;\r\n text-align: center;\r\n font-weight: 600;\r\n color: #777777;\r\n border: 2px solid #0099CC;\r\n border-radius: 6px;\r\n margin-right: 0.5em;\r\n}\r\n\r\n.kdtp-tp-sliders {\r\n flex: 1 1 auto;\r\n -webkit-flex: 1 1 auto;\r\n -ms-flex: 1 1 auto;\r\n}\r\n\r\n.kdtp-tp-time-row {\r\n display:-webkit-flex;\r\n display:-ms-flexbox;\r\n display:flex;\r\n -webkit-align-items:center;\r\n -ms-flex-align:center;\r\n align-items:center;\r\n height: 1.5em;\r\n background:linear-gradient(to right,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range] {\r\n background:0 0;\r\n cursor:pointer;\r\n -webkit-flex:1;\r\n -ms-flex:1;\r\n flex:1;\r\n height:100%;\r\n padding:0;\r\n margin:0;\r\n -webkit-appearance:none\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb {\r\n border-color:#777777\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb {\r\n border-color:#777777\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:hover::-ms-thumb {\r\n border-color:#777777\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:focus {\r\n outline:0\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb {\r\n background:#0099CC;\r\n border-color:#0099CC\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb {\r\n background:#0099CC;\r\n border-color:#0099CC\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]:focus::-ms-thumb {\r\n background:#0099CC;\r\n border-color:#0099CC\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb {\r\n -webkit-appearance:none;\r\n box-sizing:border-box;\r\n height:12px;\r\n width:12px;\r\n border-radius:3px;\r\n border:1px solid #c5c5c5;\r\n background:#fff;\r\n cursor:pointer;\r\n transition:background .2s;\r\n margin-top:-6px\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-moz-range-thumb {\r\n box-sizing:border-box;\r\n height:12px;\r\n width:12px;\r\n border-radius:3px;\r\n border:1px solid #c5c5c5;\r\n background:#fff;\r\n cursor:pointer;\r\n transition:background .2s\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-ms-thumb {\r\n box-sizing:border-box;\r\n height:12px;\r\n width:12px;\r\n border-radius:3px;\r\n border:1px solid #c5c5c5;\r\n background:#fff;\r\n cursor:pointer;\r\n transition:background .2s\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track {\r\n border:none;\r\n height:1px;\r\n cursor:pointer;\r\n color:transparent;\r\n background:0 0\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-moz-range-track {\r\n border:none;\r\n height:1px;\r\n cursor:pointer;\r\n color:transparent;\r\n background:0 0\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-ms-track {\r\n border:none;\r\n height:1px;\r\n cursor:pointer;\r\n color:transparent;\r\n background:0 0\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-ms-fill-lower {\r\n background:0 0\r\n}\r\n\r\n.kdtp-tp-time-row input[type=range]::-ms-fill-upper {\r\n background:0 0\r\n}\r\n",":root {\r\n --tsp-border-color: #e8e8e8;\r\n --tsp-control-background: #ebebeb;\r\n --tsp-control-text-color: #000000;\r\n}\r\n\r\n.tsp__container {\r\n display: flex;\r\n flex-flow: row;\r\n}\r\n\r\n .tsp__intervals {\r\n border-right: 1px solid var(--tsp-border-color);\r\n padding-right: 10px;\r\n display: flex;\r\n flex-flow: column;\r\n /*justify-content: space-between;*/\r\n }\r\n\r\n .tsp__button {\r\n font-size: 12px;\r\n margin-bottom: 4px;\r\n display: inline-flex;\r\n align-items: center;\r\n justify-content: center;\r\n font-weight: 400;\r\n text-align: center;\r\n white-space: nowrap;\r\n vertical-align: middle;\r\n user-select: none;\r\n border: 1px solid transparent;\r\n padding: 4px 12px;\r\n line-height: 1.2;\r\n /*height: 24px;*/\r\n transition: all .15s ease-in-out;\r\n cursor: pointer;\r\n outline: none;\r\n position: relative;\r\n overflow: visible;\r\n opacity: .8;\r\n box-sizing: border-box;\r\n background-color: var(--tsp-control-background);\r\n color: var(--tsp-control-text-color);\r\n }\r\n \r\n .tsp__button:hover {\r\n opacity: 1;\r\n border-color: var(--tsp-border-color)\r\n }\r\n .tsp__button:active {\r\n opacity: .9;\r\n }\r\n \r\n .tsp__form {\r\n display: flex;\r\n flex-flow: row nowrap;\r\n width: 100%;\r\n }\r\n \r\n .tsp__date {\r\n display: flex;\r\n width: 50%;\r\n flex-flow: column;\r\n padding: 0 10px;\r\n }\r\n \r\n .tsp__label {\r\n display: flex;\r\n flex-flow: row nowrap;\r\n }\r\n\r\n .tsp__label label {\r\n font-weight: bold;\r\n }\r\n \r\n .tsp__label select {\r\n margin-left: auto;\r\n border-color: var(--tsp-border-color);\r\n font-size: 12px;\r\n }\r\n \r\n .tsp__calendar {\r\n margin: 10px 0;\r\n width: 230px;\r\n }\r\n\r\n.tsp__calendar .kdtp-cal-header input {\r\n /*font-size: 14px!important;*/\r\n border: 1px solid var(--tsp-border-color)!important; \r\n} \r\n\r\n.tsp__calendar {\r\n display: flex;\r\n flex-flow: column;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-body {\r\n margin: 10px 0!important;\r\n}\r\n.tsp__calendar .kdtp-cal-header {\r\n /*order: 3!important;*/\r\n margin-bottom: 10px!important;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-nav-selectors {\r\n font-size: 16px!important;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-body {\r\n grid-gap: 2px!important;\r\n padding: 0!important;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-nav-prev, .tsp__calendar .kdtp-cal-nav-next {\r\n width: auto!important;\r\n font-size: 2em!important;\r\n} \r\n\r\n.tsp__calendar .kdtp-cal-body {\r\n border: 1px solid var(--tsp-border-color);\r\n padding: 5px!important;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-day {\r\n border: 1px solid var(--tsp-border-color);\r\n font-size: 14px;\r\n width: 30px;\r\n height: 30px;\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-day-selected {\r\n /*background: #0077cc!important;*/\r\n /*color: #ffffff!important;*/\r\n}\r\n\r\n.tsp__calendar .kdtp-cal-day-current {\r\n background: #3ab93c;\r\n color: #ffffff;\r\n}\r\n\r\n.tsp__calendar .day-in-range {\r\n background: #c6e3ff!important;\r\n}\r\n\r\n.kdlg-footer {\r\n border-top: 1px solid var(--tsp-border-color);\r\n}"]} \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js b/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js new file mode 100644 index 00000000..92545a8c --- /dev/null +++ b/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js @@ -0,0 +1,24 @@ +/*! + * EasyData.JS Demo + * Copyright 2024 Korzh.com + * Licensed under MIT + !*/ +var easydata=function(t){"use strict";function e(t,e){void 0===e&&(e={});var i=e.insertAt;if(t&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css","top"===i&&o.firstChild?o.insertBefore(r,o.firstChild):o.appendChild(r),r.styleSheet?r.styleSheet.cssText=t:r.appendChild(document.createTextNode(t))}}e('.keg-container *{outline:none}.keg-container,.keg-header{overflow:hidden}.keg-header{background-color:#f8f8f8;border-bottom:1px solid #babfc7;flex:0 0 auto}.keg-root{border:1px solid #babfc7;display:flex;flex-direction:column;font-family:Roboto,Arial,serif}.keg-body{flex:1;overflow:hidden}.keg-body-viewport{border:1px solid transparent;height:100%;overflow-x:auto;overflow-y:auto}.keg-body-viewport:focus,.keg-body-viewport:focus-within{border:1px solid #838383}.keg-header-row{color:rgba(0,0,0,.54);font-weight:600;min-height:30px}.keg-header-row,.keg-row{display:flex;font-size:12px}.keg-row{align-items:center;background-color:#fff;border-color:#dde2eb;border-bottom:solid #dde2eb;border-width:1px;color:#181d1f;height:26px;outline:none}.keg-row:not(.keg-row-active):not(.keg-row-totals):hover{background-color:#fffae9}.keg-row-odd{background-color:#fcfcfc}.keg-row-active{background-color:#fff3cf}.keg-cell,.keg-header-cell{display:flex}.keg-header-cell{align-items:center;padding:2px 6px;position:relative}.keg-header-cell-resize{align-items:center;display:flex;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:2}.keg-header-cell-resize:after{background-color:rgba(186,191,199,.5);content:"";display:block;height:50%;left:calc(50% - 1px);position:absolute;top:25%;width:2px;z-index:1}.keg-header-cell-label{-ms-word-wrap:keep-all;text-align:center;width:100%;word-break:keep-all}.keg-cell{align-items:center;border-right:solid transparent;height:100%;outline:none;padding:0 4px 0 10px}.keg-cell-value{max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.keg-cell-align-left,.keg-cell-value-align-left{text-align:left}.keg-cell-align-right,.keg-cell-value-align-right{text-align:right}.keg-cell-align-center,.keg-cell-value-align-center{text-align:center}.keg-cell-value-bool{margin:0 auto;width:auto}.keg-cell-value-true:before{color:#28a745;content:"\\2714";font-size:16px}.keg-cell-value-false:before{color:#dc3545;content:"\\2716";font-size:16px}.keg-header-btn-plus{height:23px;position:relative;width:23px}.keg-header-btn-plus a{background:url("data:image/png;base64,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") no-repeat;display:block;height:100%;width:100%}.keg-header-btn-plus a:hover{background-position:-25px 0!important}.keg-pagination,.keg-pagination-wrapper{display:inline-flex}.keg-pagination{border-radius:4px;margin:0;padding-left:0}.keg-page-item{display:inline}.keg-page-link{background-color:#fff;border:1px solid #ddd;color:#428bca;float:left;font-size:12px;line-height:1.42857;margin-left:-1px;padding:5px 10px;position:relative;text-decoration:none}.keg-page-link:focus,.keg-page-link:hover{background-color:#eee;border-color:#ddd;border-bottom:2px solid #ffd148!important;color:#2a6496}.keg-page-item.active>.keg-page-link,.keg-page-item.active>.keg-page-link:focus,.keg-page-item.active>.keg-page-link:hover{background-color:#428bca;border-color:#428bca;color:#fff;cursor:default;z-index:2}.keg-page-item.disabled>.keg-page-link,.keg-page-item.disabled>.keg-page-link:focus,.keg-page-item.disabled>.keg-page-link:hover{background-color:#fff;border-color:#ddd;color:#999;cursor:not-allowed}.keg-page-item:first-child>.keg-page-link{border-bottom-left-radius:3px;border-top-left-radius:3px;margin-left:0}.keg-page-item:last-child>.keg-page-link{border-bottom-right-radius:3px;border-top-right-radius:3px}.keg-page-sizes{display:inline-flex;margin-left:20px}.keg-page-sizes-select{font-size:12px;height:auto!important}.keg-page-sizes-select:after{border-width:2px!important;height:.6em!important;margin-top:-.6em!important;width:.6em!important}.keg-page-sizes-label{color:rgba(0,0,0,.54);font-size:16px;margin-left:10px;padding:5px 0;white-space:nowrap}.keg-footer{display:flex;flex-wrap:wrap;margin-top:5px}.keg-page-info{color:rgba(0,0,0,.54);flex:1 1 auto;font-size:16px;padding:5px 10px;text-align:end;white-space:nowrap}.keg-page-info>span{color:#212529}.keg-row-totals{font-weight:700}.keg-totals-lv0{background-color:#ace1af}.keg-totals-lv1{background-color:#d0f0c0}.keg-totals-lv2{background-color:#d0f2c0}.keg-totals-lv3{background-color:#d0f4c0}.keg-totals-lv4{background-color:#d0f6c0}.keg-totals-lv5{background-color:#d0f8c0}.keg-sortable-helper{background-color:#fff;border:2px solid #fb9c2f;border-radius:4px;padding:3px 20px}.eqjs-chart-content,.eqjs-chart-main,.keg-container,.keg-root{height:100%}.eqjs-chart-content canvas{max-height:100%}.question-mark{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC") no-repeat 50%;height:20px;margin-left:5px;position:relative;width:20px}');e('.kdlg-modal,.kdlg-modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.kdlg-modal-background{background-color:hsla(0,0%,4%,.5)}.kdlg-modal{align-items:center;display:none;flex-direction:column;font-family:Roboto,Arial,serif;font-size:16px;font-weight:400;justify-content:center;line-height:1.5;overflow:hidden;position:fixed;z-index:9999}.kdlg-modal.is-active{display:flex}.kdlg-modal-window,.kdlg-modal-window.size-default{display:flex;flex-direction:column;margin:0 20px;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible;position:relative;width:100%}@media print,screen and (min-width:481px){.kdlg-modal-window.size-small{margin:0 auto;width:400px}}@media print,screen and (min-width:769px){.kdlg-modal-window,.kdlg-modal-window.size-default{margin:0 auto;width:640px}.kdlg-modal-window.size-large,.kdlg-modal-window.size-xl{margin:0 20px;width:100%}}@media print,screen and (min-width:1025px){.kdlg-modal-window.size-large{margin:0 auto;width:900px}}@media print,screen and (min-width:1383px){.kdlg-modal-window.size-xl{margin:0 auto;width:1200px}}.kdlg-footer,.kdlg-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.kdlg-footer.align-right{justify-content:flex-end}.kdlg-footer.align-center{justify-content:center}.kdlg-header{border-top-left-radius:6px;border-top-right-radius:6px}.kdlg-header.has-border{border-bottom:1px solid #dbdbdb}.kdlg-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:initial;height:auto;margin:unset;min-height:10px}.kdlg-footer.has-border{border-top:1px solid #dbdbdb}.kdlg-header-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.6em;line-height:1;margin:0;padding:0}.kdlg-modal-close{-webkit-touch-callout:none;-moz-appearance:none;-webkit-appearance:none;background-color:hsla(0,0%,4%,.2);border:none;border-radius:290486px;cursor:pointer;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;outline:0;pointer-events:auto;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;width:24px}.kdlg-modal-close:after,.kdlg-modal-close:before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.kdlg-modal-close:before{height:2px;width:50%}.kdlg-modal-close:after{height:50%;width:2px}.kdlg-modal-close:focus,.kdlg-modal-close:hover{background-color:rgba(255,1,1,.48)}.kdlg-body{-webkit-overflow-scrolling:touch;background-color:#fff;color:#4a4a4a;flex-grow:1;flex-shrink:1;font-size:1em;overflow:auto;padding:20px}.kdlg-alert-container{max-height:150px;overflow-y:auto}.kdlg-alert{background-color:#e2f5ff;color:#004aef;min-height:60px;min-width:1px;padding:20px}.kdlg-alert.success{background-color:#efffe6;color:#0c7905}.kdlg-alert.warning{background-color:#fff7e5;color:#e49e02}.kdlg-alert.error{background-color:#ffe2e2;color:red}.kdlg-alert-closebtn{cursor:pointer;float:right;font-size:22px;line-height:20px;margin-left:15px;transition:.3s}.kdlg-progress-line{background-color:#e0e0e0;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2);overflow:hidden;padding:3px;width:100%}.kdlg-progress-line .fill{background-color:#659cef;border-radius:3px;display:block;height:22px;transition:width .5s ease-in-out}.kdlg-progress-line .fill.indeterminate{animation:kdlg-progress-line-loading 2s linear infinite;left:-200px;position:relative;transition:none;width:200px}@keyframes kdlg-progress-line-loading{0%{left:-200px}to{left:120%}}');e('.kfrm-buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.kfrm-buttons.align-right{justify-content:flex-end}.kfrm-buttons.align-center{justify-content:center}.kfrm-buttons:last-child{margin-bottom:-.5rem}.kfrm-buttons .kfrm-button{margin-bottom:.5rem}.kfrm-button{-webkit-touch-callout:none;align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1em;height:2.5em;justify-content:center;line-height:1.5;padding:calc(.5em - 1px) 1em;position:relative;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;white-space:nowrap}.kfrm-button:not(:last-child){margin-right:.5em}.kfrm-button.is-hovered,.kfrm-button:hover{border-color:#b5b5b5;color:#363636}.kfrm-button.is-focused,.kfrm-button:focus{border-color:#3273dc;color:#363636;outline:none}.kfrm-button.is-focused:not(:active),.kfrm-button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-active,.kfrm-button:active{border-color:#4a4a4a;color:#363636}.kfrm-button[disabled],fieldset[disabled] .kfrm-button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;cursor:not-allowed;opacity:.5}.kfrm-button.is-loading{color:transparent!important;pointer-events:none}.kfrm-button.is-loading:after{animation:spinAround .5s linear infinite;border-color:transparent transparent #dbdbdb #dbdbdb;border-radius:290486px;border-style:solid;border-width:2px;content:"";display:block;height:1em;left:calc(50% - .5em);position:absolute!important;top:calc(50% - .5em);width:1em}@keyframes spinAround{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kfrm-button.size-small,.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large){border-radius:2px;font-size:.75rem}.kfrm-button.size-default\r\n.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large){font-size:1rem}.kfrm-button.size-medium,.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large){font-size:1.25rem}.kfrm-button.size-large\r\n.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium){font-size:1.5rem}.kfrm-button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-hovered,.kfrm-button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused,.kfrm-button.is-white:focus{border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused:not(:active),.kfrm-button.is-white:focus:not(:active){box-shadow:0 0 0 .125em hsla(0,0%,59%,.15)}.kfrm-button.is-white.is-active,.kfrm-button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.kfrm-button.is-dark{background-color:#363636e6;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-hovered,.kfrm-button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused,.kfrm-button.is-dark:focus{border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused:not(:active),.kfrm-button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.kfrm-button.is-dark.is-active,.kfrm-button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.kfrm-button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-hovered,.kfrm-button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused,.kfrm-button.is-primary:focus{border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused:not(:active),.kfrm-button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.kfrm-button.is-primary.is-active,.kfrm-button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.kfrm-button.is-link.is-hovered,.kfrm-button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused,.kfrm-button.is-link:focus{border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused:not(:active),.kfrm-button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-link.is-active,.kfrm-button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.kfrm-button.is-link.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.kfrm-button.is-info.is-hovered,.kfrm-button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused,.kfrm-button.is-info:focus{border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused:not(:active),.kfrm-button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.kfrm-button.is-info.is-active,.kfrm-button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.kfrm-button.is-info.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.kfrm-button.is-success.is-hovered,.kfrm-button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.kfrm-button.is-success.is-focused:not(:active),.kfrm-button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.kfrm-button.is-success.is-active,.kfrm-button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.kfrm-button.is-success.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-hovered,.kfrm-button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused,.kfrm-button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused:not(:active),.kfrm-button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.kfrm-button.is-warning.is-active,.kfrm-button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-loading:after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.kfrm-button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-hovered,.kfrm-button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused,.kfrm-button.is-danger:focus{border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused:not(:active),.kfrm-button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.kfrm-button.is-danger.is-active,.kfrm-button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-row{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.kfrm-row:not(:last-child){margin-bottom:.75rem}@media print,screen and (min-width:769px){.kfrm-row{display:flex;flex-wrap:wrap}.kdlg-modal-window.size-small .kfrm-row{display:block}.kfrm-column.size-1{flex:none;width:8.33333%}.kfrm-column.size-2{flex:none;width:16.66667%}.kfrm-column.size-3{flex:none;width:25%}.kfrm-column.size-4{flex:none;width:33.33333%}.kfrm-column.size-5{flex:none;width:41.66667%}.kfrm-column.size-6{flex:none;width:50%}.kfrm-column.size-7{flex:none;width:58.33333%}.kfrm-column.size-8{flex:none;width:66.66667%}.kfrm-column.size-9{flex:none;width:75%}.kfrm-column.size-10{flex:none;width:83.33333%}.kfrm-column.size-11{flex:none;width:91.66667%}.kfrm-column.size-12{flex:none;width:100%}}.kfrm-column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.kfrm-form .errors-block{color:red}.kfrm-form .control{box-sizing:border-box;clear:both;display:inline-flex;max-width:100%;padding:0!important;position:relative;text-align:inherit;width:100%}.kfrm-form .icon{align-items:center;display:inline-flex;height:1.5em;justify-content:center;width:1.5em}.kfrm-form .control.has-icons-left .select select,.kfrm-form .control.has-icons-left input{padding-left:2.5em}.kfrm-form .control.has-icons-right .select select,.kfrm-form .control.has-icons-right input{padding-right:2.5em}.kfrm-form .control.has-icons-left .icon.is-left{left:0}.kfrm-form .control.has-icons-right .icon.is-right{right:0}.kfrm-form .control .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.kfrm-form .control .icon.is-clickable{pointer-events:auto}.kfrm-form .control .icon.is-clickable:hover{color:#4a4a4a;cursor:pointer}.kfrm-form input.is-valid:not([type=checkbox]),.kfrm-form input.is-valid:not([type=checkbox]):hover{border-color:green}.kfrm-form input.is-invalid:not([type=checkbox]),.kfrm-form input.is-invalid:not([type=checkbox]):hover{border-color:red}.kfrm-form input:not([type=checkbox]):-moz-read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]):read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea,.kfrm-select select{align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid transparent;border-color:#dbdbdb;border-radius:4px;box-shadow:none;color:#363636;display:inline-flex;font-size:1em;height:2.5em;justify-content:flex-start;line-height:1.5;outline:0;padding:calc(.5em - 1px) calc(.75em - 1px);position:relative;vertical-align:top}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea{box-shadow:inset 0 .0625em .125em hsla(0,0%,4%,.05);max-width:100%;width:100%}.kfrm-form input:not([type=checkbox]).is-hovered,.kfrm-form input:not([type=checkbox]):hover,.kfrm-form textarea.is-hovered,.kfrm-form textarea:hover,.kfrm-select select.is-hovered,.kfrm-select select:hover{border-color:#b5b5b5}.kfrm-form input:not([type=checkbox]).is-active,.kfrm-form input:not([type=checkbox]).is-focused,.kfrm-form input:not([type=checkbox]):active,.kfrm-form input:not([type=checkbox]):focus,.kfrm-form textarea.is-active,.kfrm-form textarea.is-focused,.kfrm-form textarea:active,.kfrm-form textarea:focus,.kfrm-select select.is-active,.kfrm-select select.is-focused,.kfrm-select select:active,.kfrm-select select:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25);outline:0}.kfrm-select{display:inline-block;max-width:100%;padding:0;position:relative;vertical-align:top;width:-moz-max-content;width:max-content}.kfrm-select.full-width{width:100%}.kfrm-select select::-ms-expand{display:none!important}.kfrm-select:not(.is-multiple){height:2.5em}.kfrm-select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.kfrm-select select:not([multiple]){padding-right:2.5em}.kfrm-select.kfrm-select.full-width select:not([multiple]){width:100%}.kfrm-select:not(.is-multiple):not(.is-loading):after{border:3px solid #3273dc;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.425em;margin-top:-.5em;pointer-events:none;position:absolute;right:.7em;top:50%;transform:rotate(-45deg);transform-origin:center;width:.425em;z-index:4}.kfrm-form textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.kfrm-form textarea:not([rows]){max-height:40em;min-height:8em}.kfrm-form{font-size:16px}.kfrm-form fieldset{border:1px solid #dbdbdb;border-radius:6px;padding:20px}.kfrm-form fieldset>legend{font-size:16px;font-weight:600;margin-bottom:0;padding-inline-end:10px;padding-inline-start:10px;width:auto}.kfrm-break,.kfrm-break-50{margin-top:50px}.kfrm-break-10{margin-top:10px}.kfrm-break-20{margin-top:20px}.kfrm-break-30{margin-top:30px}.kfrm-break-40{margin-top:40px}.kfrm-break-60{margin-top:60px}.kfrm-break-70{margin-top:70px}.kfrm-break-80{margin-top:10px}.kfrm-fields,.kfrm-fields.col-a{grid-gap:10px;display:grid;grid-auto-rows:auto;grid-template-columns:auto}.kfrm-fields:not(:last-child){margin-bottom:.75rem}.kfrm-fields>label{padding:.5em 0}.kfrm-fields .label-compact{font-size:.9em}fieldset .kfrm-fields>label{margin:0;padding:0}.kfrm-fields>label:not(.checkbox){font-weight:600}.kfrm-fields.label-above>label:not(.checkbox){font-weight:500;margin-bottom:-.5em;padding:.5em 0 0}.kfrm-fields.label-align-right>label:not(.checkbox){text-align:right}.kfrm-fields.col-a-1{grid-template-columns:auto 1fr}.kfrm-fields.col-1-a{grid-template-columns:1fr auto}.kfrm-fields.col-a-a{grid-template-columns:auto auto}.kfrm-fields.col-1-1{grid-template-columns:1fr 1fr}.kfrm-fields.col-1-2{grid-template-columns:1fr 2fr}.kfrm-fields.col-1-3{grid-template-columns:1fr 3fr}.kfrm-fields.col-2-1{grid-template-columns:2fr 1fr}.kfrm-fields.col-3-1{grid-template-columns:3fr 1fr}.kfrm-fields.col-2-3{grid-template-columns:2fr 3fr}.kfrm-fields.col-3-2{grid-template-columns:3fr 2fr}.kfrm-fields.is-horizontal{display:flex;padding:0}.kfrm-fields.is-horizontal.align-right{justify-content:flex-end}.kfrm-fields.is-horizontal.align-center{justify-content:center}.kfrm-fields.is-horizontal.align-evenly{justify-content:space-evenly}.kfrm-fields.is-horizontal>label:not(:first-child){margin-left:.5rem}.kfrm-fields-ie{display:flex;flex-direction:column;font-size:16px}.kfrm-field-ie{display:flex;margin-bottom:1em}.kfrm-field-ie>:first-child{margin-right:20px}.kfrm-field-ie>label{padding:.5em 0}.kfrm-fields-ie.col-ie-1-1>.kfrm-field-ie>:first-child{flex:0 0 50%}.kfrm-fields-ie.col-ie-1-2>.kfrm-field-ie>:first-child{flex:0 0 33.3333%}.kfrm-fields-ie.col-ie-1-3>.kfrm-field-ie>:first-child{flex:0 0 25%}.kfrm-fields-ie.col-ie-1-4>.kfrm-field-ie>:first-child{flex:0 0 20%}.kfrm-fields-ie.label-align-right .kfrm-field-ie>:first-child{text-align:right}.kfrm-fields-ie.label-above .kfrm-field-ie>:first-child:not(.checkbox){margin-bottom:-.5em;padding:.5em 0 0}.kfrm-field-ie>label:not(.checkbox),.kfrm-fields-ie>label:not(.checkbox){font-weight:600}.kfrm-fields-ie.is-horizontal{display:flex;flex-direction:row;padding:0!important}.kfrm-fields-ie.kfrm-fields-ie.is-horizontal>:not(.kfrm-select){padding:.5em}.kfrm-fields-ie.is-horizontal>:not(:first-child){margin-left:1em}.kfrm-fields-ie>label{padding-left:0!important;padding-right:0!important}.kfrm-field>label{padding-right:.5em}.kfrm-callout{font-size:1.2em;text-align:center}.kdtp{background-color:#fff;border:1px solid silver;border-radius:8px;box-shadow:4px 8px 15px 0 rgba(0,0,0,.16);font-size:.7rem;outline:none;overflow:hidden;z-index:100000}.kdtp-buttons{display:flex;flex-direction:row;justify-content:space-between;margin-top:1em}.kdtp-button{background-color:#09c;border:none;color:#fff;cursor:pointer;flex:1;font-weight:500;height:2.5em;text-align:center;text-decoration:none}.kdtp-button:active,.kdtp-button:focus{outline:0}.kdtp-button-now{background-color:#fff;border:none;color:#09c}.kdtp-button:nth-child(2){border-top-left-radius:8px}.kdtp-button:not(:first-child){margin-left:2px}.kdtp-cal{padding:0}.kdtp-cal *{outline:none!important}.kdtp-cal-body{grid-gap:.5em;-ms-grid-rows:1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,minmax(1em,1fr));padding:0 12px}.kdtp-cal-body>:first-child{-ms-grid-column:1;-ms-grid-row:1}.kdtp-cal-body>:nth-child(2){-ms-grid-column:3;-ms-grid-row:1}.kdtp-cal-body>:nth-child(3){-ms-grid-column:5;-ms-grid-row:1}.kdtp-cal-body>:nth-child(4){-ms-grid-column:7;-ms-grid-row:1}.kdtp-cal-body>:nth-child(5){-ms-grid-column:9;-ms-grid-row:1}.kdtp-cal-body>:nth-child(6){-ms-grid-column:11;-ms-grid-row:1}.kdtp-cal-body>:nth-child(7){-ms-grid-column:13;-ms-grid-row:1}.kdtp-cal-body>:nth-child(8){-ms-grid-column:1;-ms-grid-row:3}.kdtp-cal-body>:nth-child(9){-ms-grid-column:3;-ms-grid-row:3}.kdtp-cal-body>:nth-child(10){-ms-grid-column:5;-ms-grid-row:3}.kdtp-cal-body>:nth-child(11){-ms-grid-column:7;-ms-grid-row:3}.kdtp-cal-body>:nth-child(12){-ms-grid-column:9;-ms-grid-row:3}.kdtp-cal-body>:nth-child(13){-ms-grid-column:11;-ms-grid-row:3}.kdtp-cal-body>:nth-child(14){-ms-grid-column:13;-ms-grid-row:3}.kdtp-cal-body>:nth-child(15){-ms-grid-column:1;-ms-grid-row:5}.kdtp-cal-body>:nth-child(16){-ms-grid-column:3;-ms-grid-row:5}.kdtp-cal-body>:nth-child(17){-ms-grid-column:5;-ms-grid-row:5}.kdtp-cal-body>:nth-child(18){-ms-grid-column:7;-ms-grid-row:5}.kdtp-cal-body>:nth-child(19){-ms-grid-column:9;-ms-grid-row:5}.kdtp-cal-body>:nth-child(20){-ms-grid-column:11;-ms-grid-row:5}.kdtp-cal-body>:nth-child(21){-ms-grid-column:13;-ms-grid-row:5}.kdtp-cal-body>:nth-child(22){-ms-grid-column:1;-ms-grid-row:7}.kdtp-cal-body>:nth-child(23){-ms-grid-column:3;-ms-grid-row:7}.kdtp-cal-body>:nth-child(24){-ms-grid-column:5;-ms-grid-row:7}.kdtp-cal-body>:nth-child(25){-ms-grid-column:7;-ms-grid-row:7}.kdtp-cal-body>:nth-child(26){-ms-grid-column:9;-ms-grid-row:7}.kdtp-cal-body>:nth-child(27){-ms-grid-column:11;-ms-grid-row:7}.kdtp-cal-body>:nth-child(28){-ms-grid-column:13;-ms-grid-row:7}.kdtp-cal-body>:nth-child(29){-ms-grid-column:1;-ms-grid-row:9}.kdtp-cal-body>:nth-child(30){-ms-grid-column:3;-ms-grid-row:9}.kdtp-cal-body>:nth-child(31){-ms-grid-column:5;-ms-grid-row:9}.kdtp-cal-body>:nth-child(32){-ms-grid-column:7;-ms-grid-row:9}.kdtp-cal-body>:nth-child(33){-ms-grid-column:9;-ms-grid-row:9}.kdtp-cal-body>:nth-child(34){-ms-grid-column:11;-ms-grid-row:9}.kdtp-cal-body>:nth-child(35){-ms-grid-column:13;-ms-grid-row:9}.kdtp-cal-body>:nth-child(36){-ms-grid-column:1;-ms-grid-row:11}.kdtp-cal-body>:nth-child(37){-ms-grid-column:3;-ms-grid-row:11}.kdtp-cal-body>:nth-child(38){-ms-grid-column:5;-ms-grid-row:11}.kdtp-cal-body>:nth-child(39){-ms-grid-column:7;-ms-grid-row:11}.kdtp-cal-body>:nth-child(40){-ms-grid-column:9;-ms-grid-row:11}.kdtp-cal-body>:nth-child(41){-ms-grid-column:11;-ms-grid-row:11}.kdtp-cal-body>:nth-child(42){-ms-grid-column:13;-ms-grid-row:11}.kdtp-cal-body>:nth-child(43){-ms-grid-column:1;-ms-grid-row:13}.kdtp-cal-body>:nth-child(44){-ms-grid-column:3;-ms-grid-row:13}.kdtp-cal-body>:nth-child(45){-ms-grid-column:5;-ms-grid-row:13}.kdtp-cal-body>:nth-child(46){-ms-grid-column:7;-ms-grid-row:13}.kdtp-cal-body>:nth-child(47){-ms-grid-column:9;-ms-grid-row:13}.kdtp-cal-body>:nth-child(48){-ms-grid-column:11;-ms-grid-row:13}.kdtp-cal-body>:nth-child(49){-ms-grid-column:13;-ms-grid-row:13}.kdtp-cal-header-input{background:#fff;border:1px solid silver;color:#262626;font-size:1em;height:100%;outline:none;padding:2px 5px;width:100%}.kdtp-cal-header-input.error{border-color:red}.kdtp-cal-header{background-color:#09c;color:#fff;font-size:1.2em;font-weight:600;height:2em;line-height:2em;text-align:center}.kdtp-cal-nav{display:flex;line-height:1em;margin:.7em 0;padding:0}.kdtp-cal-nav-next,.kdtp-cal-nav-prev{color:#777;flex:0 0 auto;font-size:3em;font-weight:600;text-align:center;width:1em}.kdtp-cal-nav-next:hover,.kdtp-cal-nav-prev:hover{color:#09c;cursor:pointer}.kdtp-cal-nav-selectors{display:flex;flex:1 1 auto;font-size:1.2em;margin:0 .5em}.kdtp-cal-nav-month{flex:1 1 auto;margin-right:.5em}.kdtp-cal-nav-year{flex:0 0 auto}.kdtp-cal-nav-selectors select{border:none;color:#777;font-weight:600}.kdtp-cal-nav-selectors select:hover{color:#09c}.kdtp-cal-nav-selectors select:hover option{color:#777}.kdtp-cal-weekday{align-items:center;color:#262626;display:flex;font-size:.8em;font-weight:600;height:1.8em;justify-content:center}.kdtp-cal-weekday.kdtp-cal-weekend{color:#ff685d}.kdtp-cal-day,.kdtp-cal-day-empty{align-items:center;border-radius:4px;color:#262626;display:flex;height:1.5em;justify-content:center}.kdtp-cal-day.kdtp-cal-weekend{color:#ff685d;font-weight:700}.kdtp-cal-day-selected,.kdtp-cal-day:hover{border:2px solid #09c;cursor:pointer;font-weight:700}.kdtp-cal-day-current{background-color:#d3d3d3}.kdtp-tp{-ms-flex-align:center;align-items:center;-webkit-align-items:center;display:flex;display:-ms-flexbox;margin-top:1em;padding:0 1em}.kdtp-tp-time{border:2px solid #09c;border-radius:6px;color:#777;flex:0 0 5em;-webkit-flex:0 0 5em;-ms-flex:0 0 5em;font-weight:600;margin-right:.5em;text-align:center}.kdtp-tp-sliders{flex:1 1 auto;-webkit-flex:1 1 auto;-ms-flex:1 1 auto}.kdtp-tp-time-row{align-items:center;background:linear-gradient(90deg,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;display:flex;height:1.5em}.kdtp-tp-time-row input[type=range]{-webkit-appearance:none;background:0 0;cursor:pointer;flex:1;height:100%;margin:0;padding:0}.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-ms-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:focus{outline:0}.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-ms-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;margin-top:-6px;-webkit-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-moz-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-ms-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-ms-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-moz-range-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-fill-lower,.kdtp-tp-time-row input[type=range]::-ms-fill-upper{background:0 0}:root{--tsp-border-color:#e8e8e8;--tsp-control-background:#ebebeb;--tsp-control-text-color:#000}.tsp__container{display:flex;flex-flow:row}.tsp__intervals{border-right:1px solid var(--tsp-border-color);display:flex;flex-flow:column;padding-right:10px}.tsp__button{align-items:center;background-color:var(--tsp-control-background);border:1px solid transparent;box-sizing:border-box;color:var(--tsp-control-text-color);cursor:pointer;display:inline-flex;font-size:12px;font-weight:400;justify-content:center;line-height:1.2;margin-bottom:4px;opacity:.8;outline:none;overflow:visible;padding:4px 12px;position:relative;text-align:center;transition:all .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.tsp__button:hover{border-color:var(--tsp-border-color);opacity:1}.tsp__button:active{opacity:.9}.tsp__form{display:flex;flex-flow:row nowrap;width:100%}.tsp__date{display:flex;flex-flow:column;padding:0 10px;width:50%}.tsp__label{display:flex;flex-flow:row nowrap}.tsp__label label{font-weight:700}.tsp__label select{border-color:var(--tsp-border-color);font-size:12px;margin-left:auto}.tsp__calendar{margin:10px 0;width:230px}.tsp__calendar .kdtp-cal-header input{border:1px solid var(--tsp-border-color)!important}.tsp__calendar{display:flex;flex-flow:column}.tsp__calendar .kdtp-cal-body{margin:10px 0!important}.tsp__calendar .kdtp-cal-header{margin-bottom:10px!important}.tsp__calendar .kdtp-cal-nav-selectors{font-size:16px!important}.tsp__calendar .kdtp-cal-body{grid-gap:2px!important;padding:0!important}.tsp__calendar .kdtp-cal-nav-next,.tsp__calendar .kdtp-cal-nav-prev{font-size:2em!important;width:auto!important}.tsp__calendar .kdtp-cal-body{border:1px solid var(--tsp-border-color);padding:5px!important}.tsp__calendar .kdtp-cal-day{border:1px solid var(--tsp-border-color);font-size:14px;height:30px;width:30px}.tsp__calendar .kdtp-cal-day-current{background:#3ab93c;color:#fff}.tsp__calendar .day-in-range{background:#c6e3ff!important}.kdlg-footer{border-top:1px solid var(--tsp-border-color)}');e('.keg-container *{outline:none}.keg-container,.keg-header{overflow:hidden}.keg-header{background-color:#f8f8f8;border-bottom:1px solid #babfc7;flex:0 0 auto}.keg-root{border:1px solid #babfc7;display:flex;flex-direction:column;font-family:Roboto,Arial,serif}.keg-body{flex:1;overflow:hidden}.keg-body-viewport{border:1px solid transparent;height:100%;overflow-x:auto;overflow-y:auto}.keg-body-viewport:focus,.keg-body-viewport:focus-within{border:1px solid #838383}.keg-header-row{color:rgba(0,0,0,.54);font-weight:600;min-height:30px}.keg-header-row,.keg-row{display:flex;font-size:12px}.keg-row{align-items:center;background-color:#fff;border-color:#dde2eb;border-bottom:solid #dde2eb;border-width:1px;color:#181d1f;height:26px;outline:none}.keg-row:not(.keg-row-active):not(.keg-row-totals):hover{background-color:#fffae9}.keg-row-odd{background-color:#fcfcfc}.keg-row-active{background-color:#fff3cf}.keg-cell,.keg-header-cell{display:flex}.keg-header-cell{align-items:center;padding:2px 6px;position:relative}.keg-header-cell-resize{align-items:center;display:flex;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:2}.keg-header-cell-resize:after{background-color:rgba(186,191,199,.5);content:"";display:block;height:50%;left:calc(50% - 1px);position:absolute;top:25%;width:2px;z-index:1}.keg-header-cell-label{-ms-word-wrap:keep-all;text-align:center;width:100%;word-break:keep-all}.keg-cell{align-items:center;border-right:solid transparent;height:100%;outline:none;padding:0 4px 0 10px}.keg-cell-value{max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.keg-cell-align-left,.keg-cell-value-align-left{text-align:left}.keg-cell-align-right,.keg-cell-value-align-right{text-align:right}.keg-cell-align-center,.keg-cell-value-align-center{text-align:center}.keg-cell-value-bool{margin:0 auto;width:auto}.keg-cell-value-true:before{color:#28a745;content:"\\2714";font-size:16px}.keg-cell-value-false:before{color:#dc3545;content:"\\2716";font-size:16px}.keg-header-btn-plus{height:23px;position:relative;width:23px}.keg-header-btn-plus a{background:url("data:image/png;base64,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") no-repeat;display:block;height:100%;width:100%}.keg-header-btn-plus a:hover{background-position:-25px 0!important}.keg-pagination,.keg-pagination-wrapper{display:inline-flex}.keg-pagination{border-radius:4px;margin:0;padding-left:0}.keg-page-item{display:inline}.keg-page-link{background-color:#fff;border:1px solid #ddd;color:#428bca;float:left;font-size:12px;line-height:1.42857;margin-left:-1px;padding:5px 10px;position:relative;text-decoration:none}.keg-page-link:focus,.keg-page-link:hover{background-color:#eee;border-color:#ddd;border-bottom:2px solid #ffd148!important;color:#2a6496}.keg-page-item.active>.keg-page-link,.keg-page-item.active>.keg-page-link:focus,.keg-page-item.active>.keg-page-link:hover{background-color:#428bca;border-color:#428bca;color:#fff;cursor:default;z-index:2}.keg-page-item.disabled>.keg-page-link,.keg-page-item.disabled>.keg-page-link:focus,.keg-page-item.disabled>.keg-page-link:hover{background-color:#fff;border-color:#ddd;color:#999;cursor:not-allowed}.keg-page-item:first-child>.keg-page-link{border-bottom-left-radius:3px;border-top-left-radius:3px;margin-left:0}.keg-page-item:last-child>.keg-page-link{border-bottom-right-radius:3px;border-top-right-radius:3px}.keg-page-sizes{display:inline-flex;margin-left:20px}.keg-page-sizes-select{font-size:12px;height:auto!important}.keg-page-sizes-select:after{border-width:2px!important;height:.6em!important;margin-top:-.6em!important;width:.6em!important}.keg-page-sizes-label{color:rgba(0,0,0,.54);font-size:16px;margin-left:10px;padding:5px 0;white-space:nowrap}.keg-footer{display:flex;flex-wrap:wrap;margin-top:5px}.keg-page-info{color:rgba(0,0,0,.54);flex:1 1 auto;font-size:16px;padding:5px 10px;text-align:end;white-space:nowrap}.keg-page-info>span{color:#212529}.keg-row-totals{font-weight:700}.keg-totals-lv0{background-color:#ace1af}.keg-totals-lv1{background-color:#d0f0c0}.keg-totals-lv2{background-color:#d0f2c0}.keg-totals-lv3{background-color:#d0f4c0}.keg-totals-lv4{background-color:#d0f6c0}.keg-totals-lv5{background-color:#d0f8c0}.keg-sortable-helper{background-color:#fff;border:2px solid #fb9c2f;border-radius:4px;padding:3px 20px}.eqjs-chart-content,.eqjs-chart-main,.keg-container,.keg-root{height:100%}.eqjs-chart-content canvas{max-height:100%}.question-mark{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC") no-repeat 50%;height:20px;margin-left:5px;position:relative;width:20px}.kdlg-modal,.kdlg-modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.kdlg-modal-background{background-color:hsla(0,0%,4%,.5)}.kdlg-modal{align-items:center;display:none;flex-direction:column;font-family:Roboto,Arial,serif;font-size:16px;font-weight:400;justify-content:center;line-height:1.5;overflow:hidden;position:fixed;z-index:9999}.kdlg-modal.is-active{display:flex}.kdlg-modal-window,.kdlg-modal-window.size-default{display:flex;flex-direction:column;margin:0 20px;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible;position:relative;width:100%}@media print,screen and (min-width:481px){.kdlg-modal-window.size-small{margin:0 auto;width:400px}}@media print,screen and (min-width:769px){.kdlg-modal-window,.kdlg-modal-window.size-default{margin:0 auto;width:640px}.kdlg-modal-window.size-large,.kdlg-modal-window.size-xl{margin:0 20px;width:100%}}@media print,screen and (min-width:1025px){.kdlg-modal-window.size-large{margin:0 auto;width:900px}}@media print,screen and (min-width:1383px){.kdlg-modal-window.size-xl{margin:0 auto;width:1200px}}.kdlg-footer,.kdlg-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.kdlg-footer.align-right{justify-content:flex-end}.kdlg-footer.align-center{justify-content:center}.kdlg-header{border-top-left-radius:6px;border-top-right-radius:6px}.kdlg-header.has-border{border-bottom:1px solid #dbdbdb}.kdlg-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:initial;height:auto;margin:unset;min-height:10px}.kdlg-footer.has-border{border-top:1px solid #dbdbdb}.kdlg-header-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.6em;line-height:1;margin:0;padding:0}.kdlg-modal-close{-webkit-touch-callout:none;-moz-appearance:none;-webkit-appearance:none;background-color:hsla(0,0%,4%,.2);border:none;border-radius:290486px;cursor:pointer;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;outline:0;pointer-events:auto;position:relative;-webkit-user-select:none;user-select:none;vertical-align:top;width:24px}.kdlg-modal-close:after,.kdlg-modal-close:before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.kdlg-modal-close:before{height:2px;width:50%}.kdlg-modal-close:after{height:50%;width:2px}.kdlg-modal-close:focus,.kdlg-modal-close:hover{background-color:rgba(255,1,1,.48)}.kdlg-body{-webkit-overflow-scrolling:touch;background-color:#fff;color:#4a4a4a;flex-grow:1;flex-shrink:1;font-size:1em;overflow:auto;padding:20px}.kdlg-alert-container{max-height:150px;overflow-y:auto}.kdlg-alert{background-color:#e2f5ff;color:#004aef;min-height:60px;min-width:1px;padding:20px}.kdlg-alert.success{background-color:#efffe6;color:#0c7905}.kdlg-alert.warning{background-color:#fff7e5;color:#e49e02}.kdlg-alert.error{background-color:#ffe2e2;color:red}.kdlg-alert-closebtn{cursor:pointer;float:right;font-size:22px;line-height:20px;margin-left:15px;transition:.3s}.kdlg-progress-line{background-color:#e0e0e0;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2);overflow:hidden;padding:3px;width:100%}.kdlg-progress-line .fill{background-color:#659cef;border-radius:3px;display:block;height:22px;transition:width .5s ease-in-out}.kdlg-progress-line .fill.indeterminate{animation:kdlg-progress-line-loading 2s linear infinite;left:-200px;position:relative;transition:none;width:200px}@keyframes kdlg-progress-line-loading{0%{left:-200px}to{left:120%}}.kfrm-buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.kfrm-buttons.align-right{justify-content:flex-end}.kfrm-buttons.align-center{justify-content:center}.kfrm-buttons:last-child{margin-bottom:-.5rem}.kfrm-buttons .kfrm-button{margin-bottom:.5rem}.kfrm-button{-webkit-touch-callout:none;align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1em;height:2.5em;justify-content:center;line-height:1.5;padding:calc(.5em - 1px) 1em;position:relative;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:top;white-space:nowrap}.kfrm-button:not(:last-child){margin-right:.5em}.kfrm-button.is-hovered,.kfrm-button:hover{border-color:#b5b5b5;color:#363636}.kfrm-button.is-focused,.kfrm-button:focus{border-color:#3273dc;color:#363636;outline:none}.kfrm-button.is-focused:not(:active),.kfrm-button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-active,.kfrm-button:active{border-color:#4a4a4a;color:#363636}.kfrm-button[disabled],fieldset[disabled] .kfrm-button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;cursor:not-allowed;opacity:.5}.kfrm-button.is-loading{color:transparent!important;pointer-events:none}.kfrm-button.is-loading:after{animation:spinAround .5s linear infinite;border-color:transparent transparent #dbdbdb #dbdbdb;border-radius:290486px;border-style:solid;border-width:2px;content:"";display:block;height:1em;left:calc(50% - .5em);position:absolute!important;top:calc(50% - .5em);width:1em}@keyframes spinAround{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kfrm-button.size-small,.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large){border-radius:2px;font-size:.75rem}.kfrm-button.size-default\r\n.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large){font-size:1rem}.kfrm-button.size-medium,.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large){font-size:1.25rem}.kfrm-button.size-large\r\n.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium){font-size:1.5rem}.kfrm-button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-hovered,.kfrm-button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused,.kfrm-button.is-white:focus{border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused:not(:active),.kfrm-button.is-white:focus:not(:active){box-shadow:0 0 0 .125em hsla(0,0%,59%,.15)}.kfrm-button.is-white.is-active,.kfrm-button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.kfrm-button.is-dark{background-color:#363636e6;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-hovered,.kfrm-button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused,.kfrm-button.is-dark:focus{border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused:not(:active),.kfrm-button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.kfrm-button.is-dark.is-active,.kfrm-button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.kfrm-button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-hovered,.kfrm-button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused,.kfrm-button.is-primary:focus{border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused:not(:active),.kfrm-button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.kfrm-button.is-primary.is-active,.kfrm-button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.kfrm-button.is-link.is-hovered,.kfrm-button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused,.kfrm-button.is-link:focus{border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused:not(:active),.kfrm-button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-link.is-active,.kfrm-button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.kfrm-button.is-link.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.kfrm-button.is-info.is-hovered,.kfrm-button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused,.kfrm-button.is-info:focus{border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused:not(:active),.kfrm-button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.kfrm-button.is-info.is-active,.kfrm-button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.kfrm-button.is-info.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.kfrm-button.is-success.is-hovered,.kfrm-button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.kfrm-button.is-success.is-focused:not(:active),.kfrm-button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.kfrm-button.is-success.is-active,.kfrm-button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.kfrm-button.is-success.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-hovered,.kfrm-button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused,.kfrm-button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused:not(:active),.kfrm-button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.kfrm-button.is-warning.is-active,.kfrm-button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-loading:after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.kfrm-button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-hovered,.kfrm-button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused,.kfrm-button.is-danger:focus{border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused:not(:active),.kfrm-button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.kfrm-button.is-danger.is-active,.kfrm-button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-row{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.kfrm-row:not(:last-child){margin-bottom:.75rem}@media print,screen and (min-width:769px){.kfrm-row{display:flex;flex-wrap:wrap}.kdlg-modal-window.size-small .kfrm-row{display:block}.kfrm-column.size-1{flex:none;width:8.33333%}.kfrm-column.size-2{flex:none;width:16.66667%}.kfrm-column.size-3{flex:none;width:25%}.kfrm-column.size-4{flex:none;width:33.33333%}.kfrm-column.size-5{flex:none;width:41.66667%}.kfrm-column.size-6{flex:none;width:50%}.kfrm-column.size-7{flex:none;width:58.33333%}.kfrm-column.size-8{flex:none;width:66.66667%}.kfrm-column.size-9{flex:none;width:75%}.kfrm-column.size-10{flex:none;width:83.33333%}.kfrm-column.size-11{flex:none;width:91.66667%}.kfrm-column.size-12{flex:none;width:100%}}.kfrm-column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.kfrm-form .errors-block{color:red}.kfrm-form .control{box-sizing:border-box;clear:both;display:inline-flex;max-width:100%;padding:0!important;position:relative;text-align:inherit;width:100%}.kfrm-form .icon{align-items:center;display:inline-flex;height:1.5em;justify-content:center;width:1.5em}.kfrm-form .control.has-icons-left .select select,.kfrm-form .control.has-icons-left input{padding-left:2.5em}.kfrm-form .control.has-icons-right .select select,.kfrm-form .control.has-icons-right input{padding-right:2.5em}.kfrm-form .control.has-icons-left .icon.is-left{left:0}.kfrm-form .control.has-icons-right .icon.is-right{right:0}.kfrm-form .control .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.kfrm-form .control .icon.is-clickable{pointer-events:auto}.kfrm-form .control .icon.is-clickable:hover{color:#4a4a4a;cursor:pointer}.kfrm-form input.is-valid:not([type=checkbox]),.kfrm-form input.is-valid:not([type=checkbox]):hover{border-color:green}.kfrm-form input.is-invalid:not([type=checkbox]),.kfrm-form input.is-invalid:not([type=checkbox]):hover{border-color:red}.kfrm-form input:not([type=checkbox]):read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea,.kfrm-select select{align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid transparent;border-color:#dbdbdb;border-radius:4px;box-shadow:none;color:#363636;display:inline-flex;font-size:1em;height:2.5em;justify-content:flex-start;line-height:1.5;outline:0;padding:calc(.5em - 1px) calc(.75em - 1px);position:relative;vertical-align:top}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea{box-shadow:inset 0 .0625em .125em hsla(0,0%,4%,.05);max-width:100%;width:100%}.kfrm-form input:not([type=checkbox]).is-hovered,.kfrm-form input:not([type=checkbox]):hover,.kfrm-form textarea.is-hovered,.kfrm-form textarea:hover,.kfrm-select select.is-hovered,.kfrm-select select:hover{border-color:#b5b5b5}.kfrm-form input:not([type=checkbox]).is-active,.kfrm-form input:not([type=checkbox]).is-focused,.kfrm-form input:not([type=checkbox]):active,.kfrm-form input:not([type=checkbox]):focus,.kfrm-form textarea.is-active,.kfrm-form textarea.is-focused,.kfrm-form textarea:active,.kfrm-form textarea:focus,.kfrm-select select.is-active,.kfrm-select select.is-focused,.kfrm-select select:active,.kfrm-select select:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25);outline:0}.kfrm-select{display:inline-block;max-width:100%;padding:0;position:relative;vertical-align:top;width:max-content}.kfrm-select.full-width{width:100%}.kfrm-select select::-ms-expand{display:none!important}.kfrm-select:not(.is-multiple){height:2.5em}.kfrm-select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.kfrm-select select:not([multiple]){padding-right:2.5em}.kfrm-select.kfrm-select.full-width select:not([multiple]){width:100%}.kfrm-select:not(.is-multiple):not(.is-loading):after{border:3px solid #3273dc;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.425em;margin-top:-.5em;pointer-events:none;position:absolute;right:.7em;top:50%;transform:rotate(-45deg);transform-origin:center;width:.425em;z-index:4}.kfrm-form textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.kfrm-form textarea:not([rows]){max-height:40em;min-height:8em}.kfrm-form{font-size:16px}.kfrm-form fieldset{border:1px solid #dbdbdb;border-radius:6px;padding:20px}.kfrm-form fieldset>legend{font-size:16px;font-weight:600;margin-bottom:0;padding-inline-end:10px;padding-inline-start:10px;width:auto}.kfrm-break,.kfrm-break-50{margin-top:50px}.kfrm-break-10{margin-top:10px}.kfrm-break-20{margin-top:20px}.kfrm-break-30{margin-top:30px}.kfrm-break-40{margin-top:40px}.kfrm-break-60{margin-top:60px}.kfrm-break-70{margin-top:70px}.kfrm-break-80{margin-top:10px}.kfrm-fields,.kfrm-fields.col-a{grid-gap:10px;display:grid;grid-auto-rows:auto;grid-template-columns:auto}.kfrm-fields:not(:last-child){margin-bottom:.75rem}.kfrm-fields>label{padding:.5em 0}.kfrm-fields .label-compact{font-size:.9em}fieldset .kfrm-fields>label{margin:0;padding:0}.kfrm-fields>label:not(.checkbox){font-weight:600}.kfrm-fields.label-above>label:not(.checkbox){font-weight:500;margin-bottom:-.5em;padding:.5em 0 0}.kfrm-fields.label-align-right>label:not(.checkbox){text-align:right}.kfrm-fields.col-a-1{grid-template-columns:auto 1fr}.kfrm-fields.col-1-a{grid-template-columns:1fr auto}.kfrm-fields.col-a-a{grid-template-columns:auto auto}.kfrm-fields.col-1-1{grid-template-columns:1fr 1fr}.kfrm-fields.col-1-2{grid-template-columns:1fr 2fr}.kfrm-fields.col-1-3{grid-template-columns:1fr 3fr}.kfrm-fields.col-2-1{grid-template-columns:2fr 1fr}.kfrm-fields.col-3-1{grid-template-columns:3fr 1fr}.kfrm-fields.col-2-3{grid-template-columns:2fr 3fr}.kfrm-fields.col-3-2{grid-template-columns:3fr 2fr}.kfrm-fields.is-horizontal{display:flex;padding:0}.kfrm-fields.is-horizontal.align-right{justify-content:flex-end}.kfrm-fields.is-horizontal.align-center{justify-content:center}.kfrm-fields.is-horizontal.align-evenly{justify-content:space-evenly}.kfrm-fields.is-horizontal>label:not(:first-child){margin-left:.5rem}.kfrm-fields-ie{display:flex;flex-direction:column;font-size:16px}.kfrm-field-ie{display:flex;margin-bottom:1em}.kfrm-field-ie>:first-child{margin-right:20px}.kfrm-field-ie>label{padding:.5em 0}.kfrm-fields-ie.col-ie-1-1>.kfrm-field-ie>:first-child{flex:0 0 50%}.kfrm-fields-ie.col-ie-1-2>.kfrm-field-ie>:first-child{flex:0 0 33.3333%}.kfrm-fields-ie.col-ie-1-3>.kfrm-field-ie>:first-child{flex:0 0 25%}.kfrm-fields-ie.col-ie-1-4>.kfrm-field-ie>:first-child{flex:0 0 20%}.kfrm-fields-ie.label-align-right .kfrm-field-ie>:first-child{text-align:right}.kfrm-fields-ie.label-above .kfrm-field-ie>:first-child:not(.checkbox){margin-bottom:-.5em;padding:.5em 0 0}.kfrm-field-ie>label:not(.checkbox),.kfrm-fields-ie>label:not(.checkbox){font-weight:600}.kfrm-fields-ie.is-horizontal{display:flex;flex-direction:row;padding:0!important}.kfrm-fields-ie.kfrm-fields-ie.is-horizontal>:not(.kfrm-select){padding:.5em}.kfrm-fields-ie.is-horizontal>:not(:first-child){margin-left:1em}.kfrm-fields-ie>label{padding-left:0!important;padding-right:0!important}.kfrm-field>label{padding-right:.5em}.kfrm-callout{font-size:1.2em;text-align:center}.kdtp{background-color:#fff;border:1px solid silver;border-radius:8px;box-shadow:4px 8px 15px 0 rgba(0,0,0,.16);font-size:.7rem;outline:none;overflow:hidden;z-index:100000}.kdtp-buttons{display:flex;flex-direction:row;justify-content:space-between;margin-top:1em}.kdtp-button{background-color:#09c;border:none;color:#fff;cursor:pointer;flex:1;font-weight:500;height:2.5em;text-align:center;text-decoration:none}.kdtp-button:active,.kdtp-button:focus{outline:0}.kdtp-button-now{background-color:#fff;border:none;color:#09c}.kdtp-button:nth-child(2){border-top-left-radius:8px}.kdtp-button:not(:first-child){margin-left:2px}.kdtp-cal{padding:0}.kdtp-cal *{outline:none!important}.kdtp-cal-body{grid-gap:.5em;-ms-grid-rows:1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,minmax(1em,1fr));padding:0 12px}.kdtp-cal-body>:first-child{-ms-grid-column:1;-ms-grid-row:1}.kdtp-cal-body>:nth-child(2){-ms-grid-column:3;-ms-grid-row:1}.kdtp-cal-body>:nth-child(3){-ms-grid-column:5;-ms-grid-row:1}.kdtp-cal-body>:nth-child(4){-ms-grid-column:7;-ms-grid-row:1}.kdtp-cal-body>:nth-child(5){-ms-grid-column:9;-ms-grid-row:1}.kdtp-cal-body>:nth-child(6){-ms-grid-column:11;-ms-grid-row:1}.kdtp-cal-body>:nth-child(7){-ms-grid-column:13;-ms-grid-row:1}.kdtp-cal-body>:nth-child(8){-ms-grid-column:1;-ms-grid-row:3}.kdtp-cal-body>:nth-child(9){-ms-grid-column:3;-ms-grid-row:3}.kdtp-cal-body>:nth-child(10){-ms-grid-column:5;-ms-grid-row:3}.kdtp-cal-body>:nth-child(11){-ms-grid-column:7;-ms-grid-row:3}.kdtp-cal-body>:nth-child(12){-ms-grid-column:9;-ms-grid-row:3}.kdtp-cal-body>:nth-child(13){-ms-grid-column:11;-ms-grid-row:3}.kdtp-cal-body>:nth-child(14){-ms-grid-column:13;-ms-grid-row:3}.kdtp-cal-body>:nth-child(15){-ms-grid-column:1;-ms-grid-row:5}.kdtp-cal-body>:nth-child(16){-ms-grid-column:3;-ms-grid-row:5}.kdtp-cal-body>:nth-child(17){-ms-grid-column:5;-ms-grid-row:5}.kdtp-cal-body>:nth-child(18){-ms-grid-column:7;-ms-grid-row:5}.kdtp-cal-body>:nth-child(19){-ms-grid-column:9;-ms-grid-row:5}.kdtp-cal-body>:nth-child(20){-ms-grid-column:11;-ms-grid-row:5}.kdtp-cal-body>:nth-child(21){-ms-grid-column:13;-ms-grid-row:5}.kdtp-cal-body>:nth-child(22){-ms-grid-column:1;-ms-grid-row:7}.kdtp-cal-body>:nth-child(23){-ms-grid-column:3;-ms-grid-row:7}.kdtp-cal-body>:nth-child(24){-ms-grid-column:5;-ms-grid-row:7}.kdtp-cal-body>:nth-child(25){-ms-grid-column:7;-ms-grid-row:7}.kdtp-cal-body>:nth-child(26){-ms-grid-column:9;-ms-grid-row:7}.kdtp-cal-body>:nth-child(27){-ms-grid-column:11;-ms-grid-row:7}.kdtp-cal-body>:nth-child(28){-ms-grid-column:13;-ms-grid-row:7}.kdtp-cal-body>:nth-child(29){-ms-grid-column:1;-ms-grid-row:9}.kdtp-cal-body>:nth-child(30){-ms-grid-column:3;-ms-grid-row:9}.kdtp-cal-body>:nth-child(31){-ms-grid-column:5;-ms-grid-row:9}.kdtp-cal-body>:nth-child(32){-ms-grid-column:7;-ms-grid-row:9}.kdtp-cal-body>:nth-child(33){-ms-grid-column:9;-ms-grid-row:9}.kdtp-cal-body>:nth-child(34){-ms-grid-column:11;-ms-grid-row:9}.kdtp-cal-body>:nth-child(35){-ms-grid-column:13;-ms-grid-row:9}.kdtp-cal-body>:nth-child(36){-ms-grid-column:1;-ms-grid-row:11}.kdtp-cal-body>:nth-child(37){-ms-grid-column:3;-ms-grid-row:11}.kdtp-cal-body>:nth-child(38){-ms-grid-column:5;-ms-grid-row:11}.kdtp-cal-body>:nth-child(39){-ms-grid-column:7;-ms-grid-row:11}.kdtp-cal-body>:nth-child(40){-ms-grid-column:9;-ms-grid-row:11}.kdtp-cal-body>:nth-child(41){-ms-grid-column:11;-ms-grid-row:11}.kdtp-cal-body>:nth-child(42){-ms-grid-column:13;-ms-grid-row:11}.kdtp-cal-body>:nth-child(43){-ms-grid-column:1;-ms-grid-row:13}.kdtp-cal-body>:nth-child(44){-ms-grid-column:3;-ms-grid-row:13}.kdtp-cal-body>:nth-child(45){-ms-grid-column:5;-ms-grid-row:13}.kdtp-cal-body>:nth-child(46){-ms-grid-column:7;-ms-grid-row:13}.kdtp-cal-body>:nth-child(47){-ms-grid-column:9;-ms-grid-row:13}.kdtp-cal-body>:nth-child(48){-ms-grid-column:11;-ms-grid-row:13}.kdtp-cal-body>:nth-child(49){-ms-grid-column:13;-ms-grid-row:13}.kdtp-cal-header-input{background:#fff;border:1px solid silver;color:#262626;font-size:1em;height:100%;outline:none;padding:2px 5px;width:100%}.kdtp-cal-header-input.error{border-color:red}.kdtp-cal-header{background-color:#09c;color:#fff;font-size:1.2em;font-weight:600;height:2em;line-height:2em;text-align:center}.kdtp-cal-nav{display:flex;line-height:1em;margin:.7em 0;padding:0}.kdtp-cal-nav-next,.kdtp-cal-nav-prev{color:#777;flex:0 0 auto;font-size:3em;font-weight:600;text-align:center;width:1em}.kdtp-cal-nav-next:hover,.kdtp-cal-nav-prev:hover{color:#09c;cursor:pointer}.kdtp-cal-nav-selectors{display:flex;flex:1 1 auto;font-size:1.2em;margin:0 .5em}.kdtp-cal-nav-month{flex:1 1 auto;margin-right:.5em}.kdtp-cal-nav-year{flex:0 0 auto}.kdtp-cal-nav-selectors select{border:none;color:#777;font-weight:600}.kdtp-cal-nav-selectors select:hover{color:#09c}.kdtp-cal-nav-selectors select:hover option{color:#777}.kdtp-cal-weekday{align-items:center;color:#262626;display:flex;font-size:.8em;font-weight:600;height:1.8em;justify-content:center}.kdtp-cal-weekday.kdtp-cal-weekend{color:#ff685d}.kdtp-cal-day,.kdtp-cal-day-empty{align-items:center;border-radius:4px;color:#262626;display:flex;height:1.5em;justify-content:center}.kdtp-cal-day.kdtp-cal-weekend{color:#ff685d;font-weight:700}.kdtp-cal-day-selected,.kdtp-cal-day:hover{border:2px solid #09c;cursor:pointer;font-weight:700}.kdtp-cal-day-current{background-color:#d3d3d3}.kdtp-tp{-ms-flex-align:center;align-items:center;-webkit-align-items:center;display:flex;display:-ms-flexbox;margin-top:1em;padding:0 1em}.kdtp-tp-time{border:2px solid #09c;border-radius:6px;color:#777;flex:0 0 5em;-webkit-flex:0 0 5em;-ms-flex:0 0 5em;font-weight:600;margin-right:.5em;text-align:center}.kdtp-tp-sliders{flex:1 1 auto;-webkit-flex:1 1 auto;-ms-flex:1 1 auto}.kdtp-tp-time-row{align-items:center;background:linear-gradient(90deg,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;display:flex;height:1.5em}.kdtp-tp-time-row input[type=range]{-webkit-appearance:none;background:0 0;cursor:pointer;flex:1;height:100%;margin:0;padding:0}.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-ms-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:focus{outline:0}.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-ms-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;margin-top:-6px;-webkit-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-moz-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-ms-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-ms-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-moz-range-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-fill-lower,.kdtp-tp-time-row input[type=range]::-ms-fill-upper{background:0 0}:root{--tsp-border-color:#e8e8e8;--tsp-control-background:#ebebeb;--tsp-control-text-color:#000}.tsp__container{display:flex;flex-flow:row}.tsp__intervals{border-right:1px solid var(--tsp-border-color);display:flex;flex-flow:column;padding-right:10px}.tsp__button{align-items:center;background-color:var(--tsp-control-background);border:1px solid transparent;box-sizing:border-box;color:var(--tsp-control-text-color);cursor:pointer;display:inline-flex;font-size:12px;font-weight:400;justify-content:center;line-height:1.2;margin-bottom:4px;opacity:.8;outline:none;overflow:visible;padding:4px 12px;position:relative;text-align:center;transition:all .15s ease-in-out;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.tsp__button:hover{border-color:var(--tsp-border-color);opacity:1}.tsp__button:active{opacity:.9}.tsp__form{display:flex;flex-flow:row nowrap;width:100%}.tsp__date{display:flex;flex-flow:column;padding:0 10px;width:50%}.tsp__label{display:flex;flex-flow:row nowrap}.tsp__label label{font-weight:700}.tsp__label select{border-color:var(--tsp-border-color);font-size:12px;margin-left:auto}.tsp__calendar{margin:10px 0;width:230px}.tsp__calendar .kdtp-cal-header input{border:1px solid var(--tsp-border-color)!important}.tsp__calendar{display:flex;flex-flow:column}.tsp__calendar .kdtp-cal-body{margin:10px 0!important}.tsp__calendar .kdtp-cal-header{margin-bottom:10px!important}.tsp__calendar .kdtp-cal-nav-selectors{font-size:16px!important}.tsp__calendar .kdtp-cal-body{grid-gap:2px!important;padding:0!important}.tsp__calendar .kdtp-cal-nav-next,.tsp__calendar .kdtp-cal-nav-prev{font-size:2em!important;width:auto!important}.tsp__calendar .kdtp-cal-body{border:1px solid var(--tsp-border-color);padding:5px!important}.tsp__calendar .kdtp-cal-day{border:1px solid var(--tsp-border-color);font-size:14px;height:30px;width:30px}.tsp__calendar .kdtp-cal-day-current{background:#3ab93c;color:#fff}.tsp__calendar .day-in-range{background:#c6e3ff!important}.kdlg-footer{border-top:1px solid var(--tsp-border-color)}.ed-entity-menu{display:flex;flex-direction:column;margin-bottom:0;padding-left:0}.ed-entity-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);border-left:none;border-right:none;display:block;font-size:1.2em;margin-bottom:-1px;padding:.75rem 1.25rem;position:relative}.ed-entity-item:hover{background-color:#3498db;color:#fff;cursor:pointer}.ed-root{display:flex;flex-direction:column}.ed-menu-description{font-size:1.5em;margin:50px auto;text-align:center}.ed-entity-item-caption{display:flex;font-weight:500;justify-content:space-between}.ed-entity-item-caption:after{content:"\\276F";height:1em;text-align:center;transition:all .35s;width:1em}.ed-entity-item-descr{font-size:.8em;margin-left:30px;margin-top:5px}.ed-progress-bar{background-color:#ddd;display:"none";height:4px;left:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:65000}.ed-progress-bar:before{animation:ed-progress-bar-loading 2s linear infinite;background-color:#2980b9;content:"";display:block;height:4px;left:-200px;position:absolute;width:200px}@keyframes ed-progress-bar-loading{0%{left:-200px;width:30%}50%{width:30%}70%{width:70%}80%{left:50%}95%{left:120%}to{left:100%}}.ed-calendar-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqklEQVQ4T+3TuwlCMRSA4e+uo4UigiNoI2gpaOsa6hY6gAP4KHQDEUQb51ECN5Cb6oqNhWkS+E/+cB4pfLmK7P4IW0ywz9g4YbvIouCBFlZYJHvqyNkdnSh4lZEzrDEvX0sFU2wyVuSCJ44YopGlENihZM2SVQQXnGvWdIAeKoKQ47KmIMSFWv0FP1eDK05JG+OQpf8lnvvopm0Mc92uOQMx7BYk+W/80MEb/4ExEZgczvIAAAAASUVORK5CYII=") no-repeat;height:16px;width:16px}.ed-timer-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABLklEQVQ4T4XTPyhGYRTH8c87GZUYTFJSJgurxMSgGMRmfa3EgFIogxmbWCibxUQyYldSWEwWo4mOnvt239v7cJd773PO+T7nz+/UtH7aMY7eZH7BFT6r7rXKQSe2MYdbPCV7P0ZwhnV8FHFlwAAucYfF5NSWHL8Q8AMMYwKPYSsAYXzALg5LWa2l753SWR2rGIpLCkAEdWC2UtJm+i/ehfk8ZVgPQDTsDX3l2iqBVUBk/IyeAMxgAVMtBpLLIFwvcBSAJXRjOQMYxQ2+cYIYaTx7eP8PMIjpFBCAY7xWAX+VkNHZ73GjhL+amAM0NTGccmPMAZrGGE45IbUChJBWkiIbQgrHQsr3CKeG3hOlC/tJgZNVKRc3RSZbmM8s0yk2cstUTjcaO1ZZ5+tW6/wDn+5DtafCGz8AAAAASUVORK5CYII=") no-repeat;height:16px;width:16px}');"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var i,o={exports:{}},r={exports:{}};function n(){return i||(i=1,function(t,e){ +/*! + * EasyData.JS Core v1.4.20 + * Copyright 2024 Korzh.com + * Licensed under MIT + */ +!function(t){var e,i;t.DataType=void 0,(i=t.DataType||(t.DataType={}))[i.Unknown=0]="Unknown",i[i.String=1]="String",i[i.Byte=2]="Byte",i[i.Word=3]="Word",i[i.Int32=4]="Int32",i[i.Int64=5]="Int64",i[i.Bool=6]="Bool",i[i.Float=7]="Float",i[i.Currency=8]="Currency",i[i.BCD=9]="BCD",i[i.Date=10]="Date",i[i.Time=11]="Time",i[i.DateTime=12]="DateTime",i[i.Autoinc=13]="Autoinc",i[i.Memo=14]="Memo",i[i.Blob=15]="Blob",i[i.FixedChar=16]="FixedChar",i[i.Guid=17]="Guid",i[i.Geometry=18]="Geometry",i[i.Geography=19]="Geography",t.EntityAttrKind=void 0,(e=t.EntityAttrKind||(t.EntityAttrKind={}))[e.Data=0]="Data",e[e.Virtual=1]="Virtual",e[e.Lookup=2]="Lookup";const o={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};class r{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;l.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let i=e.getDay();return i=0==i?6:i-1,e.setDate(e.getDate()-i),e}FirstDayOfPrevWeek(t){let e=new Date,i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()-i),e}FirstDayOfNextWeek(t){let e=new Date;var i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()+i),e}}var s,a,l=new n;function d(t){l=t}t.HttpMethod=void 0,(s=t.HttpMethod||(t.HttpMethod={})).Trace="TRACE",s.Options="OPTIONS",s.Get="GET",s.Put="PUT",s.Post="POST",s.Delete="DELETE";class c{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),o=t.shift(),r=t.join(": ");e[o]=r}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}t.utils=void 0,function(e){function i(){return Object.values(t.DataType).filter((t=>"number"==typeof t))}function o(){return[t.DataType.Time,t.DataType.Date,t.DataType.DateTime]}function r(){return[t.DataType.String,t.DataType.Memo,t.DataType.FixedChar]}e.getAllDataTypes=i,e.getDateDataTypes=o,e.getStringDataTypes=r;const n=[t.DataType.Byte,t.DataType.Word,t.DataType.Int32,t.DataType.Int64,t.DataType.Float,t.DataType.Currency,t.DataType.Autoinc];function s(){return n}e.getNumericDataTypes=s;const a=[t.DataType.Byte,t.DataType.Word,t.DataType.Int32,t.DataType.Int64,t.DataType.Autoinc];function l(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let o=t.splice(e,1)[0];t.splice(i,0,o)}function y(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]}function x(t,e,i){t.splice(e,0,i)}function w(t,e,i=0,o){let r=t.length>>>0;var n=i>>0,s=n<0?Math.max(r+n,0):Math.min(n,r),a=void 0===o?r:o>>0;let l=a<0?Math.max(r+a,0):Math.min(a,r);for(;so&&(n=o-r-10,t+n<0&&(n=10-t)),n}function D(t){return null!==t&&("function"==typeof t||"object"==typeof t)}function T(t){return n.indexOf(t)>=0}function C(t){return a.indexOf(t)>=0}function E(t){return!isNaN(parseFloat(t))&&isFinite(t)}function A(e,i){return void 0===e||void 0===i||e==t.DataType.Unknown||i==t.DataType.Unknown||e==i||e==t.DataType.Date&&i==t.DataType.DateTime||e==t.DataType.DateTime&&i==t.DataType.Date}function S(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]}e.assign=l,e.assignDeep=d,e.getIfDefined=h,e.IsDefinedAndNotNull=u,e.copyArrayTo=p,e.createArrayFrom=m,e.findItemById=g,e.findItemIndexById=f,e.indexOfArrayItem=b,e.moveArrayItem=k,e.removeArrayItem=y,e.insertArrayItem=x,e.fillArray=w,e.shiftToFitWindow=v,e.isObject=D,e.isNumericType=T,e.isIntType=C,e.isNumeric=E,e.areCompatibleDataTypes=A,e.isPropSet=S;const I=4,R="0123456789abcdefghijklmnopqrstuvwxyz",M=0x8d60e562e627800;function P(t){t||(t="easy");let e=t.length>I?L(t,I):t;e&&e.length>0&&(e+="-");var i=R[N(0,R.length)]+R[N(0,R.length)]+R[N(0,R.length)],o=N(0,1e4);return e+i+O(F()-M-o)}function O(t,e=36){var i="",o=t;do{i=R[o%e]+i,o=Math.floor(o/=e)}while(o>0);return i}function L(t,e){let i=t.split("-"),o=1,r=e;i.lengthe){let o=i/e,r="";r+=t[0];let n,s=o;for(let e=1;es&&(r+=n,s+=o);return r}return t}function N(t,e){return Math.floor(Math.random()*(e-t))+t}function F(){return 621355968e9+1e4*(new Date).getTime()}function B(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}function H(t,e){return new Date(e,t+1,0).getDate()}function _(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),o=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),r=i.split("-"),n=o.indexOf("MM"),s=o.indexOf("dd"),a=o.indexOf("yyyy"),l=o.indexOf("HH"),d=o.indexOf("mm"),c=o.indexOf("ss"),h=new Date;try{const t=a>-1&&a-1&&n11)throw"";const i=s>-1&&sH(e,t))throw"";const o=l>-1&&l23)throw"";const u=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,o,u,p)}catch(e){throw`${t} is not a valid date.`}}function Y(t){const e=t.split(":");try{const t=e.length>0?B(e[0]):0;if(t>23)throw"";const i=e.length>1?B(e[1]):0;if(i>59)throw"";const o=e.length>1?B(e[1]):0;if(o>59)throw"";return new Date(0,0,0,t,i,o)}catch(e){throw`${t} is not a valid time.`}}e.generateId=P,e.strToDateTime=_,e.strToTime=Y}(t.utils||(t.utils={}));class h{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class u extends Error{constructor(t,e){super(e),this.status=t}}class p{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(e,i){return this.send(t.HttpMethod.Get,e,null,i)}post(e,i,o){return this.send(t.HttpMethod.Post,e,i,o)}put(e,i,o){return this.send(t.HttpMethod.Put,e,i,o)}delete(e,i,o){return this.send(t.HttpMethod.Delete,e,i,o)}send(e,i,o,r){const n=(r=r||{}).dataType||"json",s=r.contentType||"form-data"!==n?"application/json":null;o&&"form-data"!=n&&this.customPayload&&(o.data=t.utils.assignDeep(o.data||{},this.customPayload));const a=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),l={method:e,url:i,headers:Object.assign(Object.assign({},this.defaultHeaders),r.headers||{}),queryParams:r.queryParams||{},data:o};s&&(l.headers["Content-Type"]=s);const d=new c(a,l);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const m=d.data&&"string"!=typeof d.data&&"json"==n?JSON.stringify(d.data):d.data;return d.open(),new h(d,new Promise(((t,e)=>{r.responseType&&(a.responseType=r.responseType),a.onerror=t=>{e(new u(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const o=a.getResponseHeader("Content-Type")||"",r=a.status;if(0===r)e(new u(r,"Network error or the request was aborted"));else if(r>=200&&r<400){const e="arraybuffer"===a.responseType||"blob"===a.responseType?a.response:0==o.indexOf("application/json")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else("arraybuffer"===a.responseType||"blob"===a.responseType?p.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const n=0==o.indexOf("application/json")?JSON.parse(t):t;this._responseBody=n;const s=n.message||(404==r?`No such endpoint: ${i}`:n);e(new u(r,s))}))},a.send(m)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}t.i18n=void 0,function(e){let i,o={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},r={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:o},n={"en-US":r};const s=[];function a(t){for(const e of s)e(t)}function l(t){s.push(t)}function d(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))}function c(){return i.localeId}function h(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),u(t)}function u(e){const o=n[e];o?t.utils.assignDeep(i,o):(i.englishName=e,i.displayName=e,i.texts=t.utils.assignDeep({},r.texts)),i.localeId=e}function p(...t){let e=i.texts,o="";if(t&&t.length){const i=t.length;for(let r=0;r0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t}function b(t){const e=m();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t}function k(t){const e=m();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t}function y(t){const e=m();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t}function x(e){i.settings||(i.settings=t.utils.assignDeep({},o)),i.settings=t.utils.assignDeep(i.settings,e)}function w(e){"object"==typeof e?(a({localeId:i.localeId,texts:e}),t.utils.assignDeep(i.texts,e)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")}function v(e){for(let i in n){let o=n[i];o.texts=t.utils.assignDeep({},e,o.texts)}i.texts=t.utils.assignDeep({},e,i.texts)}function D(e,o){a(o);let s=i;e&&(o.localeId||(o.localeId=e),s=n[e],s||(s=t.utils.assignDeep({},r),n[e]=s)),t.utils.assignDeep(s,o)}function T(t,e){D(t,e)}function C(t){const e=new Date(2020,5,7,19,34,56,88),o={year:"numeric",month:"numeric",day:"numeric"},r={hour:"numeric",minute:"numeric",second:"numeric"},n=e.toLocaleDateString(t,o),s=e.toLocaleTimeString(t,r);let a=n.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),l=s.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),x({shortDateFormat:a,shortTimeFormat:l})}function E(){C("object"==typeof navigator?navigator.language:void 0)}function A(){i||(i=t.utils.assignDeep({},r),E())}e.addMapper=l,e.getLocales=d,e.getCurrentLocale=c,e.setLocale=h,e.setCurrentLocale=u,e.getText=p,e.getLocaleSettings=m,e.getOneLocaleSetting=g,e.getShortMonthName=f,e.getLongMonthName=b,e.getShortWeekDayName=k,e.getLongWeekDayName=y,e.updateLocaleSettings=x,e.updateLocaleTexts=w,e.updateDefaultTexts=v,e.updateLocaleInfo=D,e.addLocale=T,e.resetLocales=A;const S=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function I(t,i){const o=t.getFullYear().toString(),r=t.getMonth()+1,n=t.getDate(),s=t.getHours(),a=t.getMinutes(),l=t.getSeconds(),d=s%12||12,c=s>11,h={yyyy:o,yy:o.substring(o.length-2),MMMM:e.getLongMonthName(r),MMM:e.getShortMonthName(r),MM:r<10?"0"+r:r.toString(),M:r.toString(),dd:n<10?"0"+n:n.toString(),d:n.toString(),HH:s<10?"0"+s:s.toString(),H:s.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:c?"PM":"AM",mm:a<10?"0"+a:a.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(S,((t,e)=>e||h[t]))}function R(e,i,o){return o?"d"==o?o=M(t.DataType.Date):"D"==o?o=P(t.DataType.Date):"f"==o?o=M(t.DataType.DateTime):"F"==o&&(o=P(t.DataType.DateTime)):o=M(i),I(e,o)}function M(e){const i=m();let o;switch(e){case t.DataType.Date:o=i.shortDateFormat;break;case t.DataType.Time:o=i.shortTimeFormat;break;default:o=i.shortDateFormat+" "+i.shortTimeFormat}return o}function P(e){const i=m();let o;switch(e){case t.DataType.Date:o=i.longDateFormat;break;case t.DataType.Time:o=i.longTimeFormat;break;default:o=i.longDateFormat+" "+i.longTimeFormat}return o}function O(t,e,i){if(e&&e.length>0){const i=e.charAt(0).toUpperCase();if("S"===i)return N(t,e.slice(1));if(["D","F","C"].indexOf(i)>=0){const i=c();return t.toLocaleString(i,B(e))}return F(Math.trunc(t),e)}const o=m();return i=i||o.decimalSeparator,t.toString().replace(".",i)}function L(t,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const o=i.slice(1).split("|");if(o.length>1){const i=o[t?1:0];return e.getText(i)||i}}return`${t}`}e.dateTimeToStr=I,e.dateTimeToStrEx=R,e.numberToStr=O,e.booleanToStr=L;const z={};function N(t,i){if(!z[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(z[i]={},t.length>0)if(t[0].length>1)for(const e of t)z[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{z[i][e]=t[0]}))}const o=z[i];if(void 0!==o[t]){const i=o[t];return e.getText(i)||i}return t.toString()}function F(t,e){let i=t.toString(),o="",r=i.length-1;for(let t=e.length-1;t>=0;t--){const n=e.charAt(t);"#"===n||"0"===n?r>=0?(o+=i.charAt(r),r--):"0"===n&&(o+=0):o+=n}return o.split("").reverse().join("")}function B(t){const e=m(),i=t[0].toUpperCase(),o=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:o};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:o};default:return{style:"decimal",minimumFractionDigits:o,maximumFractionDigits:o}}}}(t.i18n||(t.i18n={}));class m{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(r,i),r.attributes){let e=r.attributes.length;for(let o=0;ot.isPrimaryKey))}}class g{constructor(e){this.id="",this.caption="{Unrecognized attribute}",this.dataType=t.DataType.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=e,this.kind=t.EntityAttrKind.Data}loadFromData(e,i){if(i){this.id=i.id,this.description=i.desc,this.caption=i.cptn,this.dataType=i.dtype,this.isPrimaryKey=i.ipk,this.isForeignKey=i.ifk,this.size=i.size,this.lookupAttr=i.lattr,this.lookupEntity=i.lent,this.dataAttr=i.dattr,this.lookupDataAttr=i.ldattr;const o=t.utils.getDateDataTypes().indexOf(this.dataType);this.defaultValue=i.defVal&&o?new Date(i.defVal):i.defVal,this.isNullable=t.utils.getIfDefined(i.nul,this.isNullable),this.isEditable=t.utils.getIfDefined(i.ied,this.isEditable),this.showOnView=t.utils.getIfDefined(i.ivis||i.sov,this.showOnView),this.showOnCreate=t.utils.getIfDefined(i.soc,this.showOnCreate),this.showOnEdit=t.utils.getIfDefined(i.soe,this.showOnEdit),this.showInLookup=t.utils.getIfDefined(i.sil,this.showInLookup),this.kind=i.kind,this.displayFormat=i.dfmt,i.udata&&(this.userData=i.udata),i.edtr&&(this.defaultEditor=e.getEditorById(i.edtr)||e.createValueEditor())}}}class f{constructor(){this.id="",this.tag=o.Unknown,this.resType=t.DataType.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class b{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new m(t)}createEntityAttr(t){return new g(t)}createValueEditor(){return new f}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,o;if(t.attributes){let o=t.attributes.length;for(i=0;i0&&r.push(e)}}let s=null;if(e.attributes){let n=e.attributes.length;for(let a=0;a0&&n.push(e)}}let l=null;if(e.attributes){let i=e.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return i.sortEntities&&(n.sort(c),s.sort(c)),d=i.attrPlacement&&0!=i.attrPlacement?s.concat(n):n.concat(s),2==i.attrPlacement&&d.sort(c),i.includeRootData?(r=t.i18n.getText("Entities",e.name),r||(r=e.caption),{id:e.name,text:r,items:d}):d}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor("_DTE",o.Edit,t.DataType.String),e.defValue="",this.addOrUpdateValueEditor("_DPDE",o.DateTime,t.DataType.DateTime),this.addOrUpdateValueEditor("_DPTE",o.DateTime,t.DataType.DateTime)}addOrUpdateValueEditor(e,i,o){let r=t.utils.findItemById(this.editors,e);return r||(r=this.createValueEditor(),r.id=e,this.editors.push(r)),r.tag=i,r.resType=o,r}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(e,i,o,r){if(!e)return"";o=o||" ";let n="";if(e.caption&&!r){let i=t.i18n.getText("Entities",e.caption);n=i||e.caption}if(e.attributes){let t=e.attributes.length;for(let o=0;o(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups)if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0;for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const i=!this.caseSensitiveGroups;let o={};if(t)for(const r of t.columns){let t=e.getValue(r);i&&"string"==typeof t&&(t=t.toLowerCase()),o[r]=t}return o}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}}t.ColumnAlignment=void 0,(a=t.ColumnAlignment||(t.ColumnAlignment={}))[a.None=0]="None",a[a.Left=1]="Left",a[a.Center=2]="Center",a[a.Right=3]="Right";class y{constructor(e){if(!e)throw Error("Options are required");if(!e.id)throw Error("Field Id is required");if(!e.label)throw Error("Label is required");this.id=e.id,this.type=t.utils.getIfDefined(e.type,t.DataType.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class x{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let i;i=e instanceof y?e:new y(e);const o=this.items.length;return this.items.push(i),this.mapper[i.id]=o,[t.DataType.Date,t.DataType.DateTime,t.DataType.Time].indexOf(i.type)>=0&&this._dateColumnIdx.push(o),o}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.DataType.Date,t.DataType.DateTime,t.DataType.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&o!=i&&(t.utils.moveArrayItem(this.items,o,i),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class w{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}class v{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new x,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let o=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);o>this.total&&(o=this.total)}if(this.isInMemory&&o>this.cachedRows.length&&(o=this.cachedRows.length),o<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,o));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${o}`;const r=this.needTotal;this.needTotal&&(this.needTotal=!1);let n=this.cachedRows.length,s=o-n;return s(r&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),o>this.cachedRows.length&&(o=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),o=t instanceof w?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const r=o(t.id),n=this.columns.getIndex(t.id);i[n]=e.indexOf(n)>=0?this.mapDate(r,t.type):r})),new w(this._columns,i)}mapDate(e,i){if(e){let o=new Date(e);return isNaN(o.getTime())&&i==t.DataType.Time&&(o=t.utils.strToTime(e)),o}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const o=this._columns.getDateColumnIndexes();if(o.length>0)for(const t of o)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new w(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class D{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}}class T{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const o={id:D.newGuid(),callback:e};return i?i.eventCallbacks.push(o):(i={type:t,eventCallbacks:new Array(o)},this.events.push(i)),o.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,o=!1){if(this.silentMode&&!o)return;let r=this.getEventRecByType(t);if(r){const o={type:t,source:this.source,data:e};let n=()=>{for(let t of r.eventCallbacks)t.callback(o)};i>0?setTimeout(n,i):n()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function C(t,e){return t.repeat(e)}function E(t){return t.split("").reverse().join("")}function A(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function S(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}t.liquid=void 0,function(t){function e(t,e){let i=t;if(e)for(let t in e){const o=new RegExp("{{"+t+"}}","g");i=i.replace(o,e[t])}return i}t.renderLiquidTemplate=e}(t.liquid||(t.liquid={})),t.i18n.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),t.AggregationSettings=k,t.DataColumn=y,t.DataColumnList=x,t.DataRow=w,t.EasyDataTable=v,t.EasyGuid=D,t.EditorTag=o,t.EventEmitter=T,t.HttpClient=p,t.HttpRequest=c,t.HttpResponseError=u,t.MetaData=b,t.MetaEntity=m,t.MetaEntityAttr=g,t.SpecialDatesResolver=n,t.TimeValue=r,t.ValueEditor=f,t.combinePath=S,t.registerSpecialDatesResolver=d,t.repeatString=C,t.reverseString=E,t.strEndsWith=A}(e)}(0,r.exports)),r.exports}!function(t,e){ +/*! + * EasyData.JS UI + * Copyright 2020 - 2024 Korzh.com + * Licensed under MIT + */ +!function(t,e){function i(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function o(t,e,i){let o=document.createElement(e),r=i||{};return r.cssClass&&(o.className=r.cssClass),t.appendChild(o),o}function r(t,e){t.className=t.className?t.className+" "+e:e}function n(t){t.style.display="none"}function s(t,e){e||(e=""),t.style.display=e}function a(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),n(t),s(e,i.display),i.complete&&i.complete()}function l(t){return"none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function d(t){var e;return"function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e}function c(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function h(){return t.browserUtils.IsIE()?g():{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function u(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function p(t){let e={x:0,y:0};if(null!==t){const i=m(t);e={x:i.left,y:i.top}}return e}function m(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const o=document.body,r=document.documentElement,n=u(),s=n.top,a=n.left,l=r.clientTop||o.clientTop||0,d=r.clientLeft||o.clientLeft||0,c=i.top+s-l,h=i.left+a-d;return{top:Math.round(c),left:Math.round(h)}}function g(){return{width:window.innerWidth,height:window.innerHeight}}function f(t,e,i){t.style.removeProperty("display");let o=window.getComputedStyle(t).display;"none"===o&&(o="block"),t.style.display=o;let r=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=r+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)}function b(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)}t.browserUtils=void 0,function(t){let e=null,i=null;function o(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}function r(){const t=window.navigator.userAgent;return!o()&&t.includes("Edge/")}function n(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e}t.IsIE=o,t.IsEdge=r,t.IsFirefox=n;let s,a,l=!1,d=()=>{const t=c();l=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=c();e!==t&&a&&a(e)};function c(){return void 0!==s?s:l}function h(t){const e=c();s=t;const i=c();i!==e&&a&&a(i)}function u(t){a=t}function p(){return c()?"k-mobile":null}d(),window.addEventListener("resize",(()=>d())),t.isMobileMode=c,t.setIsMobileMode=h,t.onMobileModeChanged=u,t.getMobileCssClass=p}(t.browserUtils||(t.browserUtils={}));const k="eqjs",y="eqjs-mobile";function x(t,e){const i={9:"[0-9]",a:"[a-z]"},o=e.split(""),r=e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let r=[],n=t.selectionStart;if(0==n)return;let s=n,a=!0;for(let e=o.length-1;e>=0;e--){const l=o[e];if(i[l]){let o=new RegExp(i[l],"i").test(t.value.charAt(e));o&&e!=n-1&&(a=!1),e===n-1&&s--,r.push(o&&e!=n-1?t.value.charAt(e):"_")}else e===s-1&&s--,n-1===e&&n--,r.push(l)}t.value=a?"":r.reverse().join(""),t.selectionStart=t.selectionEnd=s<0?0:s;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}},n=e=>{const r=String.fromCharCode(e.charCode);if(r){e.preventDefault();let n=[],s=t.selectionStart,a=s;o.forEach(((e,o)=>{if(i[e]){const l=o!=s?t.value.charAt(o):r;let d=new RegExp(i[e],"i").test(l);n.push(d?l:"_"),d&&s===o&&a++}else n.push(e),a===o&&a++,s===o&&s++})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}},s=e=>{if("focus"===e.type&&""!==t.value)return;let r=[],n=t.selectionStart;o.forEach(((e,o)=>{if(i[e]){let n=new RegExp(i[e],"i").test(t.value.charAt(o));r.push(n?t.value.charAt(o):"_")}else r.push(e)})),t.value=r.join(""),t.selectionStart=t.selectionEnd=n};t.addEventListener("keydown",r),t.addEventListener("keypress",n),t.addEventListener("input",s),t.addEventListener("focus",s)}class w{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=C(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(i.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const e=new I(t);(Math.abs(e.x-this.mouseDownPosition.x)>this.delta||Math.abs(e.y-this.mouseDownPosition.y)>this.delta)&&n(t)},r=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),i.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),this.finishedSuccessfully=!1,e.beforeDragStart&&e.beforeDragStart(),this.dragImage=C("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(i.cloneNode(!0)),e.renderer&&e.renderer(this.dragImage),this.dropEffect=t.DropEffect.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:i,scope:e.scope,data:e.data},this.updateDragItemPosition(n);const s=new S(this.draggableItem,this.dragImage,n);s.dropEffect=this.dropEffect,e.onDragStart&&e.onDragStart(s),this.dropEffect!==s.dropEffect&&(this.dropEffect=s.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",r,!0),document.addEventListener("touchmove",r,!0)},s=t=>{E&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new I(t),i.addEventListener("mousemove",o),i.addEventListener("touchmove",o),document.addEventListener("mouseup",a),document.addEventListener("touchend",a)};i.addEventListener("mousedown",s),i.addEventListener("touchstart",s);const a=t=>{this.mouseDownPosition=null,i.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),document.removeEventListener("mousemove",r,!0),document.removeEventListener("touchmove",r,!0),this.draggableItem&&l(t)},l=i=>{try{if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],o={element:e.element,scopes:e.scopes,data:e.data},r=new S(this.draggableItem,this.dragImage,i);try{o.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===t.DropEffect.Allow&&(this.finishedSuccessfully=!0,e.onDrop&&e.onDrop(o,r))}finally{e.onDragLeave&&e.onDragLeave(o,r)}}}finally{try{const t=new S(this.draggableItem,this.dragImage,i);t.data.finishedSuccessfully=this.finishedSuccessfully,e.onDragEnd&&e.onDragEnd(t)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",a),document.removeEventListener("touchend",a)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const i=this.containerDescriptors.filter((e=>e===t||e.element==t));if(i)for(const t of i)e.utils.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const o=new S(this.draggableItem,this.dragImage,t);o.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,o)}}}updateCusror(e){switch(e){case t.DropEffect.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case t.DropEffect.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(e){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),e){case t.DropEffect.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case t.DropEffect.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case t.DropEffect.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const r=new S(this.draggableItem,this.dragImage,e);r.dropEffect=t.DropEffect.Allow,i.onDragEnter&&i.onDragEnter(o,r),this.dropEffect=r.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==t.DropEffect.Forbid&&(this.dropEffect=t.DropEffect.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(e){const i=this.containerDescriptors[this.containerDescriptorIndex],o={element:i.element,scopes:i.scopes,data:i.data};if(o.scopes.indexOf(this.draggableItem.scope)>=0){const r=new S(this.draggableItem,this.dragImage,e);r.dropEffect=t.DropEffect.None,i.onDragLeave&&i.onDragLeave(o,r),this.dropEffect=r.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=p(t),o=new I(e);return!(o.yi.y+t.offsetHeight||o.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=p(t),o=new I(e);return!(o.y>i.y&&o.yi.x&&o.x=0&&t=0&&o!=i&&e.utils.moveArrayItem(this.items,o,i)}get(t){return t>=0&&t{const n=e?e.toString().replace(/\n/g,"↵ "):"";o.innerText=n,o.title=n,i.align==t.GridColumnAlign.NONE&&o.classList.add(`${H}-cell-value-align-left`)},G=(i,o,r,n)=>{let s=(i||"").toString();"number"==typeof i&&(s=o.dataColumn&&o.dataColumn.displayFormat&&_.test(o.dataColumn.displayFormat)?o.dataColumn.displayFormat.replace(_,((t,o)=>e.i18n.numberToStr(i,o))):i.toLocaleString()),r.innerText=s,r.title=s,o.align==t.GridColumnAlign.NONE&&r.classList.add(`${H}-cell-value-align-right`)},U=(i,o,r,n)=>{const s="[object Date]"===Object.prototype.toString.call(i);let a=(i||"").toString();if(s)if(o.dataColumn&&o.dataColumn.displayFormat&&_.test(o.dataColumn.displayFormat))a=o.dataColumn.displayFormat.replace(_,((t,r)=>e.i18n.dateTimeToStrEx(i,o.type,r)));else{const t=e.i18n.getCurrentLocale(),r={hour:"numeric",minute:"numeric",second:"numeric"};switch(o.type){case e.DataType.Date:a=i.toLocaleDateString(t);break;case e.DataType.Time:a=i.toLocaleTimeString(t,r);break;case e.DataType.DateTime:a=`${i.toLocaleDateString(t)} ${i.toLocaleTimeString(t,r)}`}}r.innerText=a,r.title=a,o.align==t.GridColumnAlign.NONE&&r.classList.add(`${H}-cell-value-align-right`)},j=(t,i,o,r)=>{if(i.dataColumn&&i.dataColumn.displayFormat&&_.test(i.dataColumn.displayFormat)){const r=i.dataColumn.displayFormat.replace(_,((i,o)=>e.i18n.booleanToStr(t,o)));return V(r,i,o)}o.classList.add(`${H}-cell-value-bool`),o.classList.add(`${H}-${t?"cell-value-true":"cell-value-false"}`)};class W{constructor(e){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",V),this.setDefaultRenderer(t.CellRendererType.STRING,V),this.registerRenderer("NumberDefault",G),this.setDefaultRenderer(t.CellRendererType.NUMBER,G),this.registerRenderer("DateTimeDefault",U),this.setDefaultRenderer(t.CellRendererType.DATETIME,U),this.registerRenderer("BoolDefault",j),this.setDefaultRenderer(t.CellRendererType.BOOL,j)}getDefaultRenderer(e){const i=this.getCellType(e);return this.defaultRenderers[t.CellRendererType[i]]}getDefaultRendererByType(e){return this.defaultRenderers[t.CellRendererType[e]]}setDefaultRenderer(e,i){i&&(this.defaultRenderers[t.CellRendererType[e]]=i)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(i){switch(i){case e.DataType.Autoinc:case e.DataType.Byte:case e.DataType.Word:case e.DataType.Currency:case e.DataType.Float:case e.DataType.Int32:case e.DataType.Int64:return t.CellRendererType.NUMBER;case e.DataType.Date:case e.DataType.DateTime:case e.DataType.Time:return t.CellRendererType.DATETIME;case e.DataType.Bool:return t.CellRendererType.BOOL;default:return t.CellRendererType.STRING}}}const K=36;class q{constructor(i){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:t.AutoResizeColumns.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=C("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(C("div").toDOM()).toDOM(),this._activeRowIndex=-1,i&&i.paging&&(i.paging=e.utils.assign(this.defaultDataGridOptions.paging,i.paging)),this.options=this.mergeOptions(i),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=i.dataTable,this.eventEmitter=new e.EventEmitter(this),this.cellRendererStore=new W(i),this.columns=new B(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const i=e.utils.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),o=e.utils.assignDeep({},this.defaultDataGridOptions.paging,t.paging),r=e.utils.assign({},this.defaultDataGridOptions,t);return r.columnWidths=i,r.paging=o,r}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;e.utils.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),e.utils.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[e.DataType.Bool]=Object.assign(Object.assign({},t.boolColumns),t[e.DataType.Bool]),e.utils.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const i=[...e.utils.getStringDataTypes(),...e.utils.getNumericDataTypes(),...e.utils.getDateDataTypes(),e.DataType.Bool];e.utils.getAllDataTypes().forEach((e=>{e in i||(t[e]=Object.assign(Object.assign({},t.otherColumns),t[e]))})),t[e.DataType.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(i){i.onInit&&this.addEventListener("init",i.onInit),i.onRowClick&&this.addEventListener("rowClick",i.onRowClick),i.onRowDbClick&&this.addEventListener("rowDbClick",i.onRowDbClick),i.onPlusButtonClick&&this.addEventListener("plusButtonClick",i.onPlusButtonClick),i.onColumnChanged&&this.addEventListener("columnChanged",i.onColumnChanged),i.onColumnDeleted&&this.addEventListener("columnDeleted",i.onColumnDeleted),i.onColumnMoved&&this.addEventListener("columnMoved",i.onColumnMoved),i.onPageChanged&&this.addEventListener("pageChanged",i.onPageChanged),i.onActiveRowChanged&&this.addEventListener("activeRowChanged",i.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),e.utils.assignDeep(this.paginationOptions,i.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&M.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${k}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(e,i)=>{i.dropEffect=t.DropEffect.Forbid,this.slot.classList.remove(`${k}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let e=document.createElement("div");e.classList.add(`${this.cssPrefix}-container`),e.appendChild(this.rootDiv),this.slot.appendChild(e);const i=this.options.columnWidths.autoResize!==t.AutoResizeColumns.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,i&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:K)*this.options.viewportRowsCount;return C(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,C(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=C("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=C("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=C("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=C("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&C(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();C(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(e,i){let o=C("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${i}`).setStyle("width",`${e.width}px`);e.dataColumn&&o.data("col-id",`${e.dataColumn.id}`);let r=o.toDOM();return C("div",r).addClass(`${this.cssPrefix}-header-cell-resize`),e.isRowNum||C("div",r).addClass(`${this.cssPrefix}-header-cell-label`).text(e.label),e.description&&C("div",r).addClass("question-mark").title(e.description),this.options.allowDragDrop&&M.registerDraggableItem({element:r,scope:"gridColumnMove",data:{column:e},renderer:t=>{t.innerHTML="";const i=document.createElement("div");i.innerText=e.label,t.classList.add(`${this.cssPrefix}-sortable-helper`),t.appendChild(i)},onDragStart:e=>{e.dropEffect=t.DropEffect.Allow}}),r}renderBody(){this.bodyDiv=C("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=C("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=C("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const i=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((o=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let r=0;if(o.length){const t=i?this.options.aggregates.settings.getGroups():[];r=o.length{if(i&&this.updateTotalsState(t,e),o(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{C(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,i,o=!1){const r=this.options.aggregates.settings;if(this.prevRowTotals&&r.hasGroups()){let o=-1;for(let e=1;e<=t.length;e++){const n=t[e-1];for(const t of n.columns)if(!r.compareValues(this.prevRowTotals.getValue(t),i.getValue(t))){o=e;break}if(-1!==o)break}if(-1!==o)for(let i=t.length;i>=o;i--){const t=new e.DataRow(this.dataTable.columns,this.prevRowTotals.toArray()),o=this.renderTotalsRow(i,t);this.bodyCellContainerDiv.appendChild(o)}}if(o&&r.hasGrandTotals()&&r.hasAggregates()){const t=this.renderTotalsRow(0,i);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=i}applyGroupColumnTemplate(t,e,i){let o=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return o=o.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),o}renderTotalsRow(t,e){const i=this.options.aggregates.settings,o=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},r=C("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let n="";const s=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&o.columns.indexOf(t.dataColumn.id)>=0&&(n=e.getValue(s)),s==this.dataTable.columns.count-1&&(n=". . . . . ."),r.appendChild(this.renderCell(t,i,n,r))}));const n=this.options.aggregates.calculator.getAggrContainer(),s=i.getAggregates().map((t=>t.colId)),a=i.buildGroupKey(o,e);return n.getAggregateData(t,a).then((n=>{for(const t of s)e.setValue(t,n[t]);r.innerHTML="",this.columns.getItems().forEach(((a,l)=>{if(!a.isVisible)return;let d="";const c=a.isRowNum?-1:this.dataTable.columns.getIndex(a.dataColumn.id);if(!a.isRowNum){let h=!1;if(a.dataColumn){const i=o.columns.indexOf(a.dataColumn.id),r=s.indexOf(a.dataColumn.id);h=t>0?i==o.columns.length-1:0==c,(i>=0||r>=0)&&(d=e.getValue(c))}let u="";t>0&&(u=a.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&h&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(d=this.renderCell(a,l,d,r).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,n[i.COUNT_FIELD_NAME]))}const h=this.renderCell(a,l,d,r);r.appendChild(h)}))})).catch((t=>console.error(t))),r}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&r<=n&&t.top>0&&t.bottomn&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+r-n),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>s&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-s)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=C("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const i=C("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const o=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,r=t?o+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),i.innerHTML=e.i18n.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${o.toString()}`).replace("{LastPageRecordNum}",`${r.toString()}`).replace("{Total}",`${n}`)}return i}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),o=C("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&o.addClass(`${this.cssPrefix}-row-first`);let r=o.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&o.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,o)=>{if(!e.isVisible)return;const n=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let s=e.isRowNum?i+1:t.getValue(n);r.appendChild(this.renderCell(e,o,s,r))})),r}renderCell(e,i,o,r){const n=C("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${i}`).attr("tabindex","-1").setStyle("width",`${e.width}px`);e.align==t.GridColumnAlign.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):e.align==t.GridColumnAlign.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):e.align==t.GridColumnAlign.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const s=n.toDOM(),a=s.appendChild(C("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),l=this.getCellRenderer(e);return l&&l(o,e,a,r),s}getCellRenderer(e){let i;return i=e.isRowNum?this.cellRendererStore.getDefaultRendererByType(t.CellRendererType.NUMBER):this.cellRendererStore.getDefaultRenderer(e.type),this.options&&this.options.onGetCellRenderer&&(i=this.options.onGetCellRenderer(e,i)||i),i}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const i=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&i>0){const i=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,o=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},r=(t,e,r,n,s)=>{const a=document.createElement("li");if(a.className=`${i}page-item`,!n){s&&(a.className+=" active");const r=document.createElement("a");return r.setAttribute("href","javascript:void(0)"),r.innerHTML=e||t.toString(),r.setAttribute("data-page",`${t}`),r.className=`${i}page-link`,r.addEventListener("click",o),a.appendChild(r),a}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${i}page-link`,r)a.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${i}page-link`,l.addEventListener("click",o)}return l.innerHTML=e,a.appendChild(l),a};if(this.dataTable.elasticChunks){const e=this.pagination.page||1;let o=document.createElement("ul");o.className=`${i}pagination`;let n=r(e-1,"«",1==e,!0,!1);o.appendChild(n),n=r(e+1,"»",this.isLastPage(),!0,!1),o.appendChild(n),t.appendChild(o)}else if(this.pagination.total>this.pagination.pageSize){const e=this.pagination.page||1,o=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,n=this.paginationOptions.maxButtonCount||10,s=e-1;let a=s-s%n+1,l=a+n-1;l>o&&(l=o);let d=document.createElement("ul");d.className=`${i}pagination`;let c=r(a-1,"«",1==a,!0,!1);d.appendChild(c);for(let t=a;t<=l;t++)c=r(t,t.toString(),!1,!1,t==e),d.appendChild(c);c=r(l+1,"»",l==o,!0,!1),d.appendChild(c),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const i=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},o=document.createElement("div");o.className=`${this.cssPrefix}-page-sizes`;const r=document.createElement("div");r.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,o.appendChild(r);const n=document.createElement("select"),s=this.options.paging.pageSizeItems||[],a=new Set(s);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),r.appendChild(n),n.addEventListener("change",i);const l=document.createElement("div");l.className=`${this.cssPrefix}-page-sizes-label`,o.appendChild(l);const d=document.createElement("span");d.innerText=e.i18n.getText("GridItemsPerPage"),l.appendChild(d),t.appendChild(o)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?C("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():C("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),o=[];for(let t=1;t=r.x&&t<=r.x+this.landingSlot.offsetWidth)return;let n=this.landingIndex;for(let e of o){const i=p(e),o=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let c=0;if(l>0)o+=l,a.width=l,d.forEach((t=>{t.parentElement.style.width=`${l}px`})),n[s].style.width=`${l}px`;else if(0==d.length&&(n[s].style.width=null,n[s].style.whiteSpace="nowrap"),c=n[s].offsetWidth,d.length>0){d.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>c&&(c=e)})),c+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;c>t&&(c=t),c{t.parentElement.style.width=`${c}px`})),n[s].style.width=`${c}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=c)}else o+=c;s++}o>0?(this.bodyCellContainerDiv.style.width=`${o}px`,this.headerCellContainerDiv.style.width=`${o}px`):(this.bodyCellContainerDiv.style.width=i,this.headerCellContainerDiv.style.width=i),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}}class Q{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class J{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=p(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class $ extends Q{constructor(t,i){super(t,i),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),C(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=C("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=e.i18n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),i=C("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return i.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(o=>{i.removeClass("error");try{this.isManualInputChanging=!0;const i=e.utils.strToDateTime(this.manualInputElem.value,t);this.currentDate=i,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){i.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=i.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=e.i18n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=e.i18n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return C("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),o=this.selectedYear-e+t;i.value=o.toString(),i.innerText=o.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{C("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));o===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),o===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const r=(t+o-1)%7;0!=r&&6!=r||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,o)])}const o=(t+e)%7,r=0==o?0:7-o;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=C("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=e.i18n.getCurrentLocale(),i=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=i}}class tt extends J{render(){const t=C("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=C("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(e.i18n.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(e.i18n.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(e.i18n.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=C("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new $(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=C("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new Z(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=p(t||document.body),i=p(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}}var et;t.DialogFooterAlignment=void 0,(et=t.DialogFooterAlignment||(t.DialogFooterAlignment={}))[et.Left=1]="Left",et[et.Center=2]="Center",et[et.Right=3]="Right";const it="kdlg";class ot{openConfirm(t,e,i){const o={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(o.onSubmit=()=>{i(!0)},o.onCancel=()=>{i(!1)},void this.open(o)):new Promise((t=>{o.onSubmit=()=>{t(!0)},o.onCancel=()=>{t(!1)},this.open(o)}))}openPrompt(t,e,i,o){const r={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${it}-dialog-form-input`);i&&(t.value=i),t.focus()}},n=t=>{const e=document.getElementById(`${it}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return o?(r.onSubmit=()=>n(o),r.onCancel=()=>{o("")},void this.open(r)):new Promise((t=>{r.onSubmit=()=>n(t),r.onCancel=()=>{t("")},this.open(r)}))}open(t,e){const i=new rt(t,e),o=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),o&&o(t)},i.open(),this.track(i),i}createSet(t){return new st(t,this)}untrack(t){const e=ot.openDialogs.indexOf(t);e>=0&&ot.openDialogs.splice(e,1)}track(t){ot.openDialogs.push(t)}openProgress(t){const e=new nt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ot.openDialogs)}closeAllDialogs(){for(const t of Array.from(ot.openDialogs))t.close()}}ot.openDialogs=[];class rt{constructor(i,o){this.options=i,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=e.utils.generateId("dlg"),this.data=o,this.slot=C("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${it}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(r=>this.windowElement=r.addClass(`${it}-modal-window`).addChild("header",(t=>{this.headerElement=t.addClass(`${it}-header`).addChild("p",(t=>t.addClass(`${it}-header-title`).addText(i.title))).toDOM(),!1!==i.closable&&t.addChild("button",(t=>t.addClass(`${it}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${it}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(t=>{if(this.bodyElement=t.addClass(`${it}-body`).toDOM(),"string"==typeof i.body){const r=e.liquid.renderLiquidTemplate(i.body,o);t.addHtml(r)}else t.addChildElement(i.body)})).addChild("footer",(o=>{let r=null;r=i.footerAlignment&&i.footerAlignment==t.DialogFooterAlignment.Center?"align-center":"align-right",this.footerElement=o.addClass(`${it}-footer`).toDOM(),o.addClass(r),!1!==i.submitable&&(o.addChild("button",(t=>{t.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(i.submitButtonText||e.i18n.getText("ButtonOK")),i.recaptchaSiteKey?(t.data("sitekey",i.recaptchaSiteKey),t.addClass("g-recaptcha"),t.on("click",(t=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(i.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):t.on("click",(t=>{this.submitHandler()})),t.focus()})),!1!==i.cancelable&&o.addChild("button",(t=>t.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(i.cancelButtonText||e.i18n.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),C(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${it}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let o=C("div").addClass(`${it}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${it}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(o)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${it}-progress-line`).addChild("div",(e=>{o=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:r,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=o}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class st{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}function at(){e.i18n.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"})}var lt,dt;at(),t.PRE_SELECT=void 0,(dt=t.PRE_SELECT||(t.PRE_SELECT={}))[dt.THIS_WEEK=0]="THIS_WEEK",dt[dt.LAST_WEEK=1]="LAST_WEEK",dt[dt.THIS_MONTH=2]="THIS_MONTH",dt[dt.FIRST_MONTH=3]="FIRST_MONTH",dt[dt.LAST_MONTH=4]="LAST_MONTH",dt[dt.THIS_YEAR=5]="THIS_YEAR",dt[dt.QUARTER_1=6]="QUARTER_1",dt[dt.QUARTER_2=7]="QUARTER_2",dt[dt.QUARTER_3=8]="QUARTER_3",dt[dt.QUARTER_4=9]="QUARTER_4",t.JUMP_TO=void 0,(lt=t.JUMP_TO||(t.JUMP_TO={})).UNDEF="-1",lt.TODAY="1",lt.YESTERDAY="2",lt.TOMORROW="3",lt.WEEK_START="4",lt.WEEK_END="5",lt.MONTH_START="6",lt.MONTH_END="7",lt.YEAR_START="8",lt.YEAR_END="9";const ct=0;class ht extends rt{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||ct,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){return C("div").addClass("tsp__container").addChild("div",(e=>{e.addClass("tsp__intervals").addChild("button",(e=>e.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(t.PRE_SELECT.THIS_WEEK)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(t.PRE_SELECT.LAST_WEEK)})))).addChild("button",(e=>e.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(t.PRE_SELECT.THIS_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(t.PRE_SELECT.FIRST_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(t.PRE_SELECT.LAST_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(t.PRE_SELECT.THIS_YEAR)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_1)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_2)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_3)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_4)}))))})).addChild("div",(e=>{e.addClass("tsp__form").addChild("div",(e=>{e.addClass("tsp__date").addChild("div",(e=>{e.addClass("tsp__label").addChild("label",(t=>{t.addText("Start")})).addChild("select",(e=>{e.addOption({value:t.JUMP_TO.UNDEF,title:"Jump To"}).addOption({value:t.JUMP_TO.TODAY,title:"Today"}).addOption({value:t.JUMP_TO.YESTERDAY,title:"Yesterday"}).addOption({value:t.JUMP_TO.TOMORROW,title:"Tomorrow"}).addOption({value:t.JUMP_TO.WEEK_START,title:"Week Start"}).addOption({value:t.JUMP_TO.WEEK_END,title:"Week End"}).addOption({value:t.JUMP_TO.MONTH_START,title:"Month Start"}).addOption({value:t.JUMP_TO.MONTH_END,title:"Month End"}).addOption({value:t.JUMP_TO.YEAR_START,title:"Year Start"}).addOption({value:t.JUMP_TO.YEAR_END,title:"Year End"}),e.on("change",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new $(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))})).addChild("div",(e=>{e.addClass("tsp__date").addChild("div",(e=>{e.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish")})).addChild("select",(e=>{e.addOption({value:t.JUMP_TO.UNDEF,title:"Jump To"}).addOption({value:t.JUMP_TO.TODAY,title:"Today"}).addOption({value:t.JUMP_TO.YESTERDAY,title:"Yesterday"}).addOption({value:t.JUMP_TO.TOMORROW,title:"Tomorrow"}).addOption({value:t.JUMP_TO.WEEK_START,title:"Week Start"}).addOption({value:t.JUMP_TO.WEEK_END,title:"Week End"}).addOption({value:t.JUMP_TO.MONTH_START,title:"Month Start"}).addOption({value:t.JUMP_TO.MONTH_END,title:"Month End"}).addOption({value:t.JUMP_TO.YEAR_START,title:"Year Start"}).addOption({value:t.JUMP_TO.YEAR_END,title:"Year End"}),e.on("change",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new $(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))}))})).toDOM()}setupDialog(){}jump(e,i,o){let r,n=1===e?"from":"to";const s=new Date;switch(i){case t.JUMP_TO.TODAY:r=s;break;case t.JUMP_TO.YESTERDAY:r=new Date(s.getFullYear(),s.getMonth(),s.getDate()-1);break;case t.JUMP_TO.TOMORROW:r=new Date(s.getFullYear(),s.getMonth(),s.getDate()+1);break;case t.JUMP_TO.WEEK_START:r=new Date(s.setDate(s.getDate()-s.getDay()+this.weekStart));break;case t.JUMP_TO.WEEK_END:r=new Date(s.setDate(s.getDate()-s.getDay()+6+this.weekStart));break;case t.JUMP_TO.MONTH_START:r=new Date(s.getFullYear(),s.getMonth(),1);break;case t.JUMP_TO.MONTH_END:r=new Date(s.getFullYear(),s.getMonth()+1,0);break;case t.JUMP_TO.YEAR_START:r=new Date(s.getFullYear(),0,1);break;case t.JUMP_TO.YEAR_END:r=new Date(s.getFullYear(),12,0)}r=this.alignDate(r),o.value=t.JUMP_TO.UNDEF,"from"===n?(this.from=r,this.to=this.from&&(this[n]=r),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(e){switch(e){case t.PRE_SELECT.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case t.PRE_SELECT.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case t.PRE_SELECT.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case t.PRE_SELECT.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case t.PRE_SELECT.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case t.PRE_SELECT.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case t.PRE_SELECT.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case t.PRE_SELECT.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case t.PRE_SELECT.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case t.PRE_SELECT.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const i=this.alignDate(new Date),o={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(i.getFullYear(),i.getMonth(),i.getDate()-1)),Tomorrow:this.alignDate(new Date(i.getFullYear(),i.getMonth(),i.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(i.setDate(i.getDate()-i.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(i.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(i.setDate(i.getDate()-i.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(i.getFullYear()+1,0,1))};for(let e in o)if(console.log(o[e],t),o[e].getTime()===t.getTime())return`\${{${e}}}`;return e.i18n.dateTimeToStr(t,e.i18n.getLocaleSettings().editDateFormat)}}const ut=t=>new ht(t).open(),pt=new ot;t.Calendar=Q,t.DFMT_REGEX=_,t.DateTimePicker=J,t.DefaultCalendar=$,t.DefaultDateTimePicker=tt,t.DefaultDialog=rt,t.DefaultDialogService=ot,t.DefaultDialogSet=st,t.DefaultProgressDialog=nt,t.DefaultTimePicker=Z,t.DomElementBuilder=w,t.DomInputElementBuilder=D,t.DomSelectElementBuilder=T,t.DomTextAreaElementBuilder=v,t.DragManager=R,t.EasyGrid=q,t.EqDragEvent=S,t.GridCellRendererStore=W,t.GridColumn=F,t.GridColumnList=B,t.TimePicker=X,t.TimeSpanPicker=ht,t.addCssClass=r,t.addElement=o,t.createBrowserEvent=d,t.dialogs=pt,t.domel=C,t.eqCssMobile=y,t.eqCssPrefix=k,t.eqDragManager=M,t.getDocSize=h,t.getElementAbsolutePos=p,t.getScrollPos=u,t.getViewportSize=c,t.getWinSize=g,t.hideElement=n,t.isVisible=l,t.mask=x,t.showElement=s,t.showTimeSpanPicker=ut,t.slideDown=f,t.slideUp=b,t.toggleVisibility=a,t.wrapInner=i}(e,n())}(0,o.exports);var s=o.exports,a={exports:{}};!function(t,e){ +/*! + * EasyData.JS CRUD v1.4.20 + * Copyright 2024 Korzh.com + * Licensed under MIT + */ +!function(t,e,i){class o{constructor(t,e,i,o=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=o,this.filterValue="",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((i=>{const o=new e.EasyDataTable({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())o.columns.add(t);o.setTotal(i.total);for(const t of i.table.getCachedRows())o.addRow(t);return o}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,i)=>{const o=new e.EasyDataTable({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())o.columns.add(t);const r=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>e.utils.isNumericType(t.type)||e.utils.getStringDataTypes().indexOf(t.type)>=0)),s=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of r)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())s(t)&&o.addRow(t);o.setTotal(o.getCachedCount()),t(o)}))}}const r="yyyy-MM-dd",n="HH:mm",s=t=>t==e.DataType.Date?r:t==e.DataType.Time?n:`${r}T${n}`,a=t=>{const i=e.i18n.getLocaleSettings();return t==e.DataType.Date?i.editDateFormat:t==e.DataType.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},l=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"))};class d{}class c extends d{constructor(){super(),this.name="DateTime"}validate(t,i){if(!e.utils.IsDefinedAndNotNull(i)||""==i)return{successed:!0};if(e.utils.getDateDataTypes().indexOf(t.dataType)>=0)try{const o=a(t.dataType);e.utils.strToDateTime(i,o)}catch(t){return{successed:!1,messages:[e.i18n.getText("DateTimeError")]}}return{successed:!0}}}class h{constructor(t){this.context=t,this.validators=[new c]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const o of t){const t=this.context.getMetaData().getAttributeById(o.name);if("checkbox"===o.type)continue;const r=this.validateValue(t,o.value);if(!r.successed){e&&i.domel(this.errorsDiv).addChild("ul"),e=!1;for(const e of r.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(o,r.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],o=Array.from(this.html.querySelectorAll("input, select, textarea"));let r={};for(const t of o){const e=t.name.substring(t.name.lastIndexOf(".")+1),o=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?r[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>r[e]=t))):r[e]=this.mapValue(o.dataType,t.value)}Promise.all(i).then((()=>t(r))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const o=new FileReader;o.readAsDataURL(t),o.onload=()=>{const t=o.result.toString();e(t.substring(t.indexOf(",")+1))},o.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(t,i){if(e.utils.getDateDataTypes().indexOf(t)>=0){if(t!==e.DataType.Time&&i&&i.length){const o=a(t),r=s(t),n=e.utils.strToDateTime(i,o);return e.i18n.dateTimeToStr(n,r)}return i&&i.length?i:null}return e.utils.isIntType(t)?parseInt(i):e.utils.isNumericType(t)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid")}))}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid")}validateValue(t,e){const i={successed:!0,messages:[]};for(const o of this.validators){const r=o.validate(t,e);r.successed||(i.successed=!1,i.messages=i.messages.concat(r.messages))}return i}}class u{constructor(t,o,r,n){this.slot=t,this.grid=o,this.filter=r,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=e.utils.assignDeep(this.options,n||{});const s=this.grid.cellRendererStore.getDefaultRendererByType(i.CellRendererType.STRING);this.grid.cellRendererStore.setDefaultRenderer(i.CellRendererType.STRING,((t,e,i,o)=>this.highlightCellRenderer(s,t,e,i,o)));const a=this.grid.cellRendererStore.getDefaultRendererByType(i.CellRendererType.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(i.CellRendererType.NUMBER,((t,e,i,o)=>this.highlightCellRenderer(a,t,e,i,o))),this.render()}render(){const t=i.browserUtils.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",o=i.browserUtils.IsIE()||i.browserUtils.IsEdge();i.domel(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",e.i18n.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this))})),o||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||i.domel(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(e.i18n.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return!(t&&e==this.filterInput.value||(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),0))}highlightCellRenderer(t,o,r,n,s){if((e.utils.isNumericType(r.type)||e.utils.getStringDataTypes().indexOf(r.type)>=0)&&o){o=r.dataColumn&&r.dataColumn.displayFormat&&i.DFMT_REGEX.test(r.dataColumn.displayFormat)?r.dataColumn.displayFormat.replace(i.DFMT_REGEX,((t,i)=>e.i18n.numberToStr(o,i))):o.toLocaleString();const t=this.highlightText(o.toString());if(t instanceof HTMLElement)return n.title=o,void n.appendChild(t)}t(o,r,n,s)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const o=[],r=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(o.push({index:t,length:r[i].length}),n=t+s.length):n++}}}if(o.length>0){o.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(o[t].length+=i),o.splice(t+1,1)}else t++}const e=document.createElement("div");for(let i=0;it.id==o.lookupEntity))[0],a=this.context.getMetaData().getAttributeById(o.dataAttr);if(!a)return;r=r||!a.isEditable,n=this.params.values?this.params.values.getValue(a.id):void 0;const l=p?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let d;i.domel(t).addChild("div",(t=>{t.addClass(l).addChild("input",(t=>{d=t.toDOM(),t.attr("readonly",""),t.name(a.id),t.type(this.resolveInputType(a.dataType)),t.value(e.utils.IsDefinedAndNotNull(n)?n.toString():"")})),r||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",e.i18n.getText("NavigationBtnTitle")).addText("...").on("click",(r=>{const n=new e.EasyDataTable({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:s.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:s.id}).then((r=>{for(const t of r.table.columns.getItems()){const e=s.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&n.columns.add(t)}n.setTotal(r.total);for(const t of r.table.getCachedRows())n.addRow(t);const a=new i.DefaultDialogService;let l,c=null,h=null;const p=i.domel("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(e.i18n.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>l=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>c=t.toDOM())))).toDOM();let m=d.value;const g=(t,i)=>t instanceof e.DataRow?t.getValue(i):t[i.substring(i.lastIndexOf(".")+1)],f=t=>{h.innerHTML=n.columns.getItems().map((e=>`${e.label}: ${g(t,e.id)}`)).join(", ")};if(m){const t=s.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:m},s.id).then((t=>{t.entity&&f(t.entity)})).catch((t=>{console.error(t)}))}const b=new i.EasyGrid({slot:c,dataTable:n,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{b.getData().getRow(t.rowIndex).then((t=>{m=t.getValue(o.lookupDataAttr),f(t)}))}});a.open({title:e.i18n.getText("LookupDlgCaption").replace("{entity}",s.caption),body:p,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(s.id,b.getData(),!0);new u(l,b,t,{instantMode:!0,focus:!0})},onSubmit:()=>(d.value=m,!0),onDestroy:()=>{b.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(t,o,r,n,s){const l=p?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",d=a(o.dataType);let c;const h=d.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");i.domel(t).addChild("div",(t=>{t.addClass(l).addChild("input",(t=>{c=t.toDOM(),t.name(o.id),t.type(s?"hidden":this.resolveInputType(o.dataType)),n?t.attr("readonly",""):(t.mask(h),t.on("keypress",(t=>this.applySumbit(t))).on("input",(i=>{t.removeClass("is-invalid");try{e.utils.strToDateTime(c.value,d)}catch(e){t.addClass("is-invalid")}})).on("blur",(t=>{c.value===h.replace(/[9]/g,"_")&&(c.value="")}))),t.value(e.utils.IsDefinedAndNotNull(r)?e.i18n.dateTimeToStr(r,d):"")})),n||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",e.i18n.getText(o.dataType!==e.DataType.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(t=>t.addClass(o.dataType!==e.DataType.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(t=>{let r;try{r=c.value.length?o.dataType!==e.DataType.Time?e.utils.strToDateTime(c.value,d):e.utils.strToTime(c.value):new Date((new Date).setSeconds(0))}catch(t){r=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:o.dataType!==e.DataType.Time,showTimePicker:o.dataType!==e.DataType.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),c.value=e.i18n.dateTimeToStr(t,d)}},s=new i.DefaultDateTimePicker(n);s.setDateTime(r),s.show(t.target)})).toDOM()))}))}setupListField(t,e,o,r,n){i.domel(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),r)for(let e=0;e{o&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",r)}))}setupTextField(t,o,r,n,s){i.domel(t).addChild("input",(t=>{n&&t.attr("readonly",""),t.type(s?"hidden":this.resolveInputType(o.dataType)),t.name(o.id).type(this.resolveInputType(o.dataType)),o.dataType==e.DataType.Bool?r&&t.attr("checked",""):t.on("keypress",(t=>this.applySumbit(t))).value(e.utils.IsDefinedAndNotNull(r)?r.toString():"")}))}setupTextArea(t,o,r,n){i.domel(t).addChild("textarea",(t=>{n&&t.attr("readonly",""),t.attr("name",o.id),t.setStyle("height","120px"),t.value(e.utils.IsDefinedAndNotNull(r)?r.toString():"")}))}addFormField(t,o){const r=this.params.values&&o.kind!==e.EntityAttrKind.Lookup?this.params.values.getValue(o.id):this.params.isEditForm?void 0:o.defaultValue,n=this.resolveEditor(o),s=this.params.isEditForm&&(o.isPrimaryKey||!o.isEditable),a=!o.isNullable;p&&(t=i.domel("div",t).addClass("kfrm-field-ie").toDOM()),i.domel(t).addChild("label",(t=>{t.attr("for",o.id),t.addHtml(`${o.caption} ${a?'*':""}: `),o.description&&t.addChild("div",(t=>t.attr("title",o.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")))}));const l=o.isPrimaryKey;if(o.kind!==e.EntityAttrKind.Lookup)switch(n.tag){case e.EditorTag.DateTime:this.setupDateTimeField(t,o,r,s,l);break;case e.EditorTag.List:this.setupListField(t,o,r,n.values,s);break;case e.EditorTag.File:this.setupFileField(t,o,s,n.accept);break;case e.EditorTag.Edit:default:n.multiline?this.setupTextArea(t,o,r,s):this.setupTextField(t,o,r,s,l)}else this.setupLookupField(t,o,s,r)}resolveInputType(t){return t===e.DataType.Bool?"checkbox":t===e.DataType.Blob?"file":"text"}resolveEditor(t){let i=t.defaultEditor||new e.ValueEditor;return i.tag==e.EditorTag.Unknown&&(e.utils.getDateDataTypes().indexOf(t.dataType)>=0?i.tag=e.EditorTag.DateTime:i.tag=e.EditorTag.Edit),i}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=i.domel("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(p?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right"),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class g{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar")}show(){this.slot.style.removeProperty("display")}hide(){this.slot.style.display="none"}}class f{constructor(t){this.context=t}loadChunk(t){const i=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});return delete t.sourceId,this.context.startProcess(),this.context.getHttpClient().post(i,t).then((i=>{const o=new e.EasyDataTable({chunkSize:1e3}),r=i.resultSet;for(const t of r.cols)o.columns.add(t);for(const t of r.rows)o.addRow(t);let n=0;return i.meta&&i.meta.totalRecords&&(n=i.meta.totalRecords),{table:o,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class b{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new e.HttpClient,this.model=new e.MetaData,this.model.id=t.metaDataId||"__default",this.dataLoader=new f(this);const i=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new e.EasyDataTable(i),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new o(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let o=i.match(this.endpointVarsRegex);if(o)for(let t of o){let o=t.substring(1,t.length-1),r=e[o];if(!r)if("modelId"==o)r=this.model.getId();else{if("sourceId"!=o)throw`Parameter [${o}] is not defined`;r=this.activeEntity.id}i=i.replace(t,r)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",e.combinePath(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",e.combinePath(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/delete"))}}class k extends d{constructor(){super(),this.name="Type"}validate(t,i){if(!e.utils.IsDefinedAndNotNull(i)||""==i)return{successed:!0};if(e.utils.isNumericType(t.dataType)){if(!e.utils.isNumeric(i))return{successed:!1,messages:[e.i18n.getText("NumberError")]};if(e.utils.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(i)))return{successed:!1,messages:[e.i18n.getText("IntNumberError")]}}return{successed:!0}}}class y extends d{constructor(){super(),this.name="Required"}validate(t,i){return t.isNullable||e.utils.IsDefinedAndNotNull(i)&&""!==i?{successed:!0}:{successed:!1,messages:[e.i18n.getText("RequiredError")]}}}class x{constructor(t,o,r,n){this.slot=t,this.context=o,this.basePath=r,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new y,new k],this.options=e.utils.assignDeep(this.options,n||{}),this.dlg=new i.DefaultDialogService;const s=this.context.getActiveEntity();if(!s)throw"Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${s.captionPlural||s.caption}

    `,this.options.showBackToEntities&&i.domel(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${e.i18n.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),l(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const o=document.createElement("div");if(this.slot.appendChild(o),o.id="Grid",this.grid=new i.EasyGrid(e.utils.assignDeep({slot:o,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:e.i18n.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const e=i.domel("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(e,o);const r=this.context.createFilter();this.filterWidget=new u(t,this.grid,r)}}))}manageCellRenderer(t,o){if(t.isRowNum)return t.width=110,(t,o,r,n)=>{const s=i.domel("div",r).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&s.addChild("a",(t=>t.attr("href","javascript:void(0)").text(e.i18n.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(n.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(e.i18n.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(n.getAttribute("data-row-idx")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),i=new m(this.context).onSubmit((()=>o.submit())).build();i.useValidators(this.defaultValidators);const o=this.dlg.open({title:e.i18n.getText("AddDlgCaption").replace("{entity}",t.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const i=this.context.getActiveEntity(),o=new m(this.context,{isEditForm:!0,values:t}).onSubmit((()=>r.submit())).build();o.useValidators(this.defaultValidators);const r=this.dlg.open({title:e.i18n.getText("EditDlgCaption").replace("{entity}",i.caption),body:o.getHtml(),onSubmit:()=>{if(!o.validate())return!1;o.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,i){this.grid.getData().getRow(i).then((t=>{if(t){const i=this.context.getActiveEntity(),o=i.getPrimaryAttrs(),r=o.map((e=>t.getValue(e.id))),n=o.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=r[i],t)),{});this.dlg.openConfirm(e.i18n.getText("DeleteDlgCaption").replace("{entity}",i.caption),e.i18n.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class w{constructor(t,i,o){this.slot=t,this.context=i,this.basePath=o,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${e.i18n.getText("RootViewTitle")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&i.domel(this.slot).addChild("div",(i=>i.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(e.i18n.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{l(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption)})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`)}))}))}))}))))}}class v{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation)},this.options=e.utils.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const i=document.createElement("div"),o=new g(i),r=this.container.parentElement;r.insertBefore(i,r.firstElementChild),this.context=new b({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>o.show(),onProcessEnd:()=>o.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw"Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else"#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new x(this.container,this.context,this.basePath,this.options)):window.EDView=new w(this.container,this.context,this.basePath)}clear(){this.container.innerHTML="",this.context.getData().clear()}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation)}}function D(){e.i18n.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."})}D(),t.DataContext=b,t.EasyDataServerLoader=f,t.EasyDataViewDispatcher=v,t.EntityDataView=x,t.EntityEditForm=h,t.EntityEditFormBuilder=m,t.ProgressBar=g,t.RequiredValidator=y,t.RootDataView=w,t.TextDataFilter=o,t.TextFilterWidget=u,t.TypeValidator=k,t.Validator=d}(e,n(),s)}(0,a.exports);var l=a.exports;return window.addEventListener("load",(function(){console.log(s.showTimeSpanPicker)})),globalThis.showPicker=function(){s.showTimeSpanPicker({title:"Select Period",submitButtonText:"Ok",cancelButtonText:"Cancel",onSubmit:function(t,e){return alert("\n You select interval with\n\n Start: ".concat(t,"\n\n Finish: ").concat(e,"\n "))}})},globalThis.showPickerWithPreset=function(){s.showTimeSpanPicker({start:new Date(2023,7,11),finish:new Date(2023,7,21),onSubmit:function(t,e){return alert("\n You select interval with\n\n Start: ".concat(t,"\n\n Finish: ").concat(e,"\n "))}})},t.runDispatcher=function(t){new l.EasyDataViewDispatcher(t).run()},t}({}); diff --git a/nx.json b/~nx.json similarity index 100% rename from nx.json rename to ~nx.json From 6509aa5e4c227ba9233c2f931e8b56433421298c Mon Sep 17 00:00:00 2001 From: olton Date: Wed, 3 Jan 2024 12:16:20 +0200 Subject: [PATCH 09/40] upd rollup config peerDeps --- ~nx.json => nx.json | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename ~nx.json => nx.json (100%) diff --git a/~nx.json b/nx.json similarity index 100% rename from ~nx.json rename to nx.json From 5805a8b1c7b47559bbe86757a5c1bfac3adfe039 Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 12:59:27 +0200 Subject: [PATCH 10/40] Add clean.bat. Ignore easydata.min.js in playground01 --- .gitignore | 3 ++- .../wwwroot/js/easydata.min.js | 24 ------------------- 2 files changed, 2 insertions(+), 25 deletions(-) delete mode 100644 playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js diff --git a/.gitignore b/.gitignore index 5cffe817..a0db612b 100644 --- a/.gitignore +++ b/.gitignore @@ -385,4 +385,5 @@ playground/EasyDataAspNetCoreTest01/wwwroot/js/dashboard.js.map .idea dist2 docs2 -.nx \ No newline at end of file +.nx +/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js diff --git a/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js b/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js deleted file mode 100644 index 92545a8c..00000000 --- a/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js +++ /dev/null @@ -1,24 +0,0 @@ -/*! - * EasyData.JS Demo - * Copyright 2024 Korzh.com - * Licensed under MIT - !*/ -var easydata=function(t){"use strict";function e(t,e){void 0===e&&(e={});var i=e.insertAt;if(t&&"undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],r=document.createElement("style");r.type="text/css","top"===i&&o.firstChild?o.insertBefore(r,o.firstChild):o.appendChild(r),r.styleSheet?r.styleSheet.cssText=t:r.appendChild(document.createTextNode(t))}}e('.keg-container *{outline:none}.keg-container,.keg-header{overflow:hidden}.keg-header{background-color:#f8f8f8;border-bottom:1px solid #babfc7;flex:0 0 auto}.keg-root{border:1px solid #babfc7;display:flex;flex-direction:column;font-family:Roboto,Arial,serif}.keg-body{flex:1;overflow:hidden}.keg-body-viewport{border:1px solid transparent;height:100%;overflow-x:auto;overflow-y:auto}.keg-body-viewport:focus,.keg-body-viewport:focus-within{border:1px solid #838383}.keg-header-row{color:rgba(0,0,0,.54);font-weight:600;min-height:30px}.keg-header-row,.keg-row{display:flex;font-size:12px}.keg-row{align-items:center;background-color:#fff;border-color:#dde2eb;border-bottom:solid #dde2eb;border-width:1px;color:#181d1f;height:26px;outline:none}.keg-row:not(.keg-row-active):not(.keg-row-totals):hover{background-color:#fffae9}.keg-row-odd{background-color:#fcfcfc}.keg-row-active{background-color:#fff3cf}.keg-cell,.keg-header-cell{display:flex}.keg-header-cell{align-items:center;padding:2px 6px;position:relative}.keg-header-cell-resize{align-items:center;display:flex;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:2}.keg-header-cell-resize:after{background-color:rgba(186,191,199,.5);content:"";display:block;height:50%;left:calc(50% - 1px);position:absolute;top:25%;width:2px;z-index:1}.keg-header-cell-label{-ms-word-wrap:keep-all;text-align:center;width:100%;word-break:keep-all}.keg-cell{align-items:center;border-right:solid transparent;height:100%;outline:none;padding:0 4px 0 10px}.keg-cell-value{max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.keg-cell-align-left,.keg-cell-value-align-left{text-align:left}.keg-cell-align-right,.keg-cell-value-align-right{text-align:right}.keg-cell-align-center,.keg-cell-value-align-center{text-align:center}.keg-cell-value-bool{margin:0 auto;width:auto}.keg-cell-value-true:before{color:#28a745;content:"\\2714";font-size:16px}.keg-cell-value-false:before{color:#dc3545;content:"\\2716";font-size:16px}.keg-header-btn-plus{height:23px;position:relative;width:23px}.keg-header-btn-plus a{background:url("data:image/png;base64,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") no-repeat;display:block;height:100%;width:100%}.keg-header-btn-plus a:hover{background-position:-25px 0!important}.keg-pagination,.keg-pagination-wrapper{display:inline-flex}.keg-pagination{border-radius:4px;margin:0;padding-left:0}.keg-page-item{display:inline}.keg-page-link{background-color:#fff;border:1px solid #ddd;color:#428bca;float:left;font-size:12px;line-height:1.42857;margin-left:-1px;padding:5px 10px;position:relative;text-decoration:none}.keg-page-link:focus,.keg-page-link:hover{background-color:#eee;border-color:#ddd;border-bottom:2px solid #ffd148!important;color:#2a6496}.keg-page-item.active>.keg-page-link,.keg-page-item.active>.keg-page-link:focus,.keg-page-item.active>.keg-page-link:hover{background-color:#428bca;border-color:#428bca;color:#fff;cursor:default;z-index:2}.keg-page-item.disabled>.keg-page-link,.keg-page-item.disabled>.keg-page-link:focus,.keg-page-item.disabled>.keg-page-link:hover{background-color:#fff;border-color:#ddd;color:#999;cursor:not-allowed}.keg-page-item:first-child>.keg-page-link{border-bottom-left-radius:3px;border-top-left-radius:3px;margin-left:0}.keg-page-item:last-child>.keg-page-link{border-bottom-right-radius:3px;border-top-right-radius:3px}.keg-page-sizes{display:inline-flex;margin-left:20px}.keg-page-sizes-select{font-size:12px;height:auto!important}.keg-page-sizes-select:after{border-width:2px!important;height:.6em!important;margin-top:-.6em!important;width:.6em!important}.keg-page-sizes-label{color:rgba(0,0,0,.54);font-size:16px;margin-left:10px;padding:5px 0;white-space:nowrap}.keg-footer{display:flex;flex-wrap:wrap;margin-top:5px}.keg-page-info{color:rgba(0,0,0,.54);flex:1 1 auto;font-size:16px;padding:5px 10px;text-align:end;white-space:nowrap}.keg-page-info>span{color:#212529}.keg-row-totals{font-weight:700}.keg-totals-lv0{background-color:#ace1af}.keg-totals-lv1{background-color:#d0f0c0}.keg-totals-lv2{background-color:#d0f2c0}.keg-totals-lv3{background-color:#d0f4c0}.keg-totals-lv4{background-color:#d0f6c0}.keg-totals-lv5{background-color:#d0f8c0}.keg-sortable-helper{background-color:#fff;border:2px solid #fb9c2f;border-radius:4px;padding:3px 20px}.eqjs-chart-content,.eqjs-chart-main,.keg-container,.keg-root{height:100%}.eqjs-chart-content canvas{max-height:100%}.question-mark{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC") no-repeat 50%;height:20px;margin-left:5px;position:relative;width:20px}');e('.kdlg-modal,.kdlg-modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.kdlg-modal-background{background-color:hsla(0,0%,4%,.5)}.kdlg-modal{align-items:center;display:none;flex-direction:column;font-family:Roboto,Arial,serif;font-size:16px;font-weight:400;justify-content:center;line-height:1.5;overflow:hidden;position:fixed;z-index:9999}.kdlg-modal.is-active{display:flex}.kdlg-modal-window,.kdlg-modal-window.size-default{display:flex;flex-direction:column;margin:0 20px;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible;position:relative;width:100%}@media print,screen and (min-width:481px){.kdlg-modal-window.size-small{margin:0 auto;width:400px}}@media print,screen and (min-width:769px){.kdlg-modal-window,.kdlg-modal-window.size-default{margin:0 auto;width:640px}.kdlg-modal-window.size-large,.kdlg-modal-window.size-xl{margin:0 20px;width:100%}}@media print,screen and (min-width:1025px){.kdlg-modal-window.size-large{margin:0 auto;width:900px}}@media print,screen and (min-width:1383px){.kdlg-modal-window.size-xl{margin:0 auto;width:1200px}}.kdlg-footer,.kdlg-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.kdlg-footer.align-right{justify-content:flex-end}.kdlg-footer.align-center{justify-content:center}.kdlg-header{border-top-left-radius:6px;border-top-right-radius:6px}.kdlg-header.has-border{border-bottom:1px solid #dbdbdb}.kdlg-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:initial;height:auto;margin:unset;min-height:10px}.kdlg-footer.has-border{border-top:1px solid #dbdbdb}.kdlg-header-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.6em;line-height:1;margin:0;padding:0}.kdlg-modal-close{-webkit-touch-callout:none;-moz-appearance:none;-webkit-appearance:none;background-color:hsla(0,0%,4%,.2);border:none;border-radius:290486px;cursor:pointer;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;outline:0;pointer-events:auto;position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;width:24px}.kdlg-modal-close:after,.kdlg-modal-close:before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.kdlg-modal-close:before{height:2px;width:50%}.kdlg-modal-close:after{height:50%;width:2px}.kdlg-modal-close:focus,.kdlg-modal-close:hover{background-color:rgba(255,1,1,.48)}.kdlg-body{-webkit-overflow-scrolling:touch;background-color:#fff;color:#4a4a4a;flex-grow:1;flex-shrink:1;font-size:1em;overflow:auto;padding:20px}.kdlg-alert-container{max-height:150px;overflow-y:auto}.kdlg-alert{background-color:#e2f5ff;color:#004aef;min-height:60px;min-width:1px;padding:20px}.kdlg-alert.success{background-color:#efffe6;color:#0c7905}.kdlg-alert.warning{background-color:#fff7e5;color:#e49e02}.kdlg-alert.error{background-color:#ffe2e2;color:red}.kdlg-alert-closebtn{cursor:pointer;float:right;font-size:22px;line-height:20px;margin-left:15px;transition:.3s}.kdlg-progress-line{background-color:#e0e0e0;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2);overflow:hidden;padding:3px;width:100%}.kdlg-progress-line .fill{background-color:#659cef;border-radius:3px;display:block;height:22px;transition:width .5s ease-in-out}.kdlg-progress-line .fill.indeterminate{animation:kdlg-progress-line-loading 2s linear infinite;left:-200px;position:relative;transition:none;width:200px}@keyframes kdlg-progress-line-loading{0%{left:-200px}to{left:120%}}');e('.kfrm-buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.kfrm-buttons.align-right{justify-content:flex-end}.kfrm-buttons.align-center{justify-content:center}.kfrm-buttons:last-child{margin-bottom:-.5rem}.kfrm-buttons .kfrm-button{margin-bottom:.5rem}.kfrm-button{-webkit-touch-callout:none;align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1em;height:2.5em;justify-content:center;line-height:1.5;padding:calc(.5em - 1px) 1em;position:relative;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:top;white-space:nowrap}.kfrm-button:not(:last-child){margin-right:.5em}.kfrm-button.is-hovered,.kfrm-button:hover{border-color:#b5b5b5;color:#363636}.kfrm-button.is-focused,.kfrm-button:focus{border-color:#3273dc;color:#363636;outline:none}.kfrm-button.is-focused:not(:active),.kfrm-button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-active,.kfrm-button:active{border-color:#4a4a4a;color:#363636}.kfrm-button[disabled],fieldset[disabled] .kfrm-button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;cursor:not-allowed;opacity:.5}.kfrm-button.is-loading{color:transparent!important;pointer-events:none}.kfrm-button.is-loading:after{animation:spinAround .5s linear infinite;border-color:transparent transparent #dbdbdb #dbdbdb;border-radius:290486px;border-style:solid;border-width:2px;content:"";display:block;height:1em;left:calc(50% - .5em);position:absolute!important;top:calc(50% - .5em);width:1em}@keyframes spinAround{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kfrm-button.size-small,.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large){border-radius:2px;font-size:.75rem}.kfrm-button.size-default\r\n.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large){font-size:1rem}.kfrm-button.size-medium,.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large){font-size:1.25rem}.kfrm-button.size-large\r\n.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium){font-size:1.5rem}.kfrm-button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-hovered,.kfrm-button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused,.kfrm-button.is-white:focus{border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused:not(:active),.kfrm-button.is-white:focus:not(:active){box-shadow:0 0 0 .125em hsla(0,0%,59%,.15)}.kfrm-button.is-white.is-active,.kfrm-button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.kfrm-button.is-dark{background-color:#363636e6;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-hovered,.kfrm-button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused,.kfrm-button.is-dark:focus{border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused:not(:active),.kfrm-button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.kfrm-button.is-dark.is-active,.kfrm-button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.kfrm-button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-hovered,.kfrm-button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused,.kfrm-button.is-primary:focus{border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused:not(:active),.kfrm-button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.kfrm-button.is-primary.is-active,.kfrm-button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.kfrm-button.is-link.is-hovered,.kfrm-button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused,.kfrm-button.is-link:focus{border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused:not(:active),.kfrm-button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-link.is-active,.kfrm-button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.kfrm-button.is-link.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.kfrm-button.is-info.is-hovered,.kfrm-button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused,.kfrm-button.is-info:focus{border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused:not(:active),.kfrm-button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.kfrm-button.is-info.is-active,.kfrm-button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.kfrm-button.is-info.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.kfrm-button.is-success.is-hovered,.kfrm-button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.kfrm-button.is-success.is-focused:not(:active),.kfrm-button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.kfrm-button.is-success.is-active,.kfrm-button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.kfrm-button.is-success.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-hovered,.kfrm-button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused,.kfrm-button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused:not(:active),.kfrm-button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.kfrm-button.is-warning.is-active,.kfrm-button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-loading:after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.kfrm-button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-hovered,.kfrm-button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused,.kfrm-button.is-danger:focus{border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused:not(:active),.kfrm-button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.kfrm-button.is-danger.is-active,.kfrm-button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-row{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.kfrm-row:not(:last-child){margin-bottom:.75rem}@media print,screen and (min-width:769px){.kfrm-row{display:flex;flex-wrap:wrap}.kdlg-modal-window.size-small .kfrm-row{display:block}.kfrm-column.size-1{flex:none;width:8.33333%}.kfrm-column.size-2{flex:none;width:16.66667%}.kfrm-column.size-3{flex:none;width:25%}.kfrm-column.size-4{flex:none;width:33.33333%}.kfrm-column.size-5{flex:none;width:41.66667%}.kfrm-column.size-6{flex:none;width:50%}.kfrm-column.size-7{flex:none;width:58.33333%}.kfrm-column.size-8{flex:none;width:66.66667%}.kfrm-column.size-9{flex:none;width:75%}.kfrm-column.size-10{flex:none;width:83.33333%}.kfrm-column.size-11{flex:none;width:91.66667%}.kfrm-column.size-12{flex:none;width:100%}}.kfrm-column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.kfrm-form .errors-block{color:red}.kfrm-form .control{box-sizing:border-box;clear:both;display:inline-flex;max-width:100%;padding:0!important;position:relative;text-align:inherit;width:100%}.kfrm-form .icon{align-items:center;display:inline-flex;height:1.5em;justify-content:center;width:1.5em}.kfrm-form .control.has-icons-left .select select,.kfrm-form .control.has-icons-left input{padding-left:2.5em}.kfrm-form .control.has-icons-right .select select,.kfrm-form .control.has-icons-right input{padding-right:2.5em}.kfrm-form .control.has-icons-left .icon.is-left{left:0}.kfrm-form .control.has-icons-right .icon.is-right{right:0}.kfrm-form .control .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.kfrm-form .control .icon.is-clickable{pointer-events:auto}.kfrm-form .control .icon.is-clickable:hover{color:#4a4a4a;cursor:pointer}.kfrm-form input.is-valid:not([type=checkbox]),.kfrm-form input.is-valid:not([type=checkbox]):hover{border-color:green}.kfrm-form input.is-invalid:not([type=checkbox]),.kfrm-form input.is-invalid:not([type=checkbox]):hover{border-color:red}.kfrm-form input:not([type=checkbox]):-moz-read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]):read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea,.kfrm-select select{align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid transparent;border-color:#dbdbdb;border-radius:4px;box-shadow:none;color:#363636;display:inline-flex;font-size:1em;height:2.5em;justify-content:flex-start;line-height:1.5;outline:0;padding:calc(.5em - 1px) calc(.75em - 1px);position:relative;vertical-align:top}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea{box-shadow:inset 0 .0625em .125em hsla(0,0%,4%,.05);max-width:100%;width:100%}.kfrm-form input:not([type=checkbox]).is-hovered,.kfrm-form input:not([type=checkbox]):hover,.kfrm-form textarea.is-hovered,.kfrm-form textarea:hover,.kfrm-select select.is-hovered,.kfrm-select select:hover{border-color:#b5b5b5}.kfrm-form input:not([type=checkbox]).is-active,.kfrm-form input:not([type=checkbox]).is-focused,.kfrm-form input:not([type=checkbox]):active,.kfrm-form input:not([type=checkbox]):focus,.kfrm-form textarea.is-active,.kfrm-form textarea.is-focused,.kfrm-form textarea:active,.kfrm-form textarea:focus,.kfrm-select select.is-active,.kfrm-select select.is-focused,.kfrm-select select:active,.kfrm-select select:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25);outline:0}.kfrm-select{display:inline-block;max-width:100%;padding:0;position:relative;vertical-align:top;width:-moz-max-content;width:max-content}.kfrm-select.full-width{width:100%}.kfrm-select select::-ms-expand{display:none!important}.kfrm-select:not(.is-multiple){height:2.5em}.kfrm-select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.kfrm-select select:not([multiple]){padding-right:2.5em}.kfrm-select.kfrm-select.full-width select:not([multiple]){width:100%}.kfrm-select:not(.is-multiple):not(.is-loading):after{border:3px solid #3273dc;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.425em;margin-top:-.5em;pointer-events:none;position:absolute;right:.7em;top:50%;transform:rotate(-45deg);transform-origin:center;width:.425em;z-index:4}.kfrm-form textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.kfrm-form textarea:not([rows]){max-height:40em;min-height:8em}.kfrm-form{font-size:16px}.kfrm-form fieldset{border:1px solid #dbdbdb;border-radius:6px;padding:20px}.kfrm-form fieldset>legend{font-size:16px;font-weight:600;margin-bottom:0;padding-inline-end:10px;padding-inline-start:10px;width:auto}.kfrm-break,.kfrm-break-50{margin-top:50px}.kfrm-break-10{margin-top:10px}.kfrm-break-20{margin-top:20px}.kfrm-break-30{margin-top:30px}.kfrm-break-40{margin-top:40px}.kfrm-break-60{margin-top:60px}.kfrm-break-70{margin-top:70px}.kfrm-break-80{margin-top:10px}.kfrm-fields,.kfrm-fields.col-a{grid-gap:10px;display:grid;grid-auto-rows:auto;grid-template-columns:auto}.kfrm-fields:not(:last-child){margin-bottom:.75rem}.kfrm-fields>label{padding:.5em 0}.kfrm-fields .label-compact{font-size:.9em}fieldset .kfrm-fields>label{margin:0;padding:0}.kfrm-fields>label:not(.checkbox){font-weight:600}.kfrm-fields.label-above>label:not(.checkbox){font-weight:500;margin-bottom:-.5em;padding:.5em 0 0}.kfrm-fields.label-align-right>label:not(.checkbox){text-align:right}.kfrm-fields.col-a-1{grid-template-columns:auto 1fr}.kfrm-fields.col-1-a{grid-template-columns:1fr auto}.kfrm-fields.col-a-a{grid-template-columns:auto auto}.kfrm-fields.col-1-1{grid-template-columns:1fr 1fr}.kfrm-fields.col-1-2{grid-template-columns:1fr 2fr}.kfrm-fields.col-1-3{grid-template-columns:1fr 3fr}.kfrm-fields.col-2-1{grid-template-columns:2fr 1fr}.kfrm-fields.col-3-1{grid-template-columns:3fr 1fr}.kfrm-fields.col-2-3{grid-template-columns:2fr 3fr}.kfrm-fields.col-3-2{grid-template-columns:3fr 2fr}.kfrm-fields.is-horizontal{display:flex;padding:0}.kfrm-fields.is-horizontal.align-right{justify-content:flex-end}.kfrm-fields.is-horizontal.align-center{justify-content:center}.kfrm-fields.is-horizontal.align-evenly{justify-content:space-evenly}.kfrm-fields.is-horizontal>label:not(:first-child){margin-left:.5rem}.kfrm-fields-ie{display:flex;flex-direction:column;font-size:16px}.kfrm-field-ie{display:flex;margin-bottom:1em}.kfrm-field-ie>:first-child{margin-right:20px}.kfrm-field-ie>label{padding:.5em 0}.kfrm-fields-ie.col-ie-1-1>.kfrm-field-ie>:first-child{flex:0 0 50%}.kfrm-fields-ie.col-ie-1-2>.kfrm-field-ie>:first-child{flex:0 0 33.3333%}.kfrm-fields-ie.col-ie-1-3>.kfrm-field-ie>:first-child{flex:0 0 25%}.kfrm-fields-ie.col-ie-1-4>.kfrm-field-ie>:first-child{flex:0 0 20%}.kfrm-fields-ie.label-align-right .kfrm-field-ie>:first-child{text-align:right}.kfrm-fields-ie.label-above .kfrm-field-ie>:first-child:not(.checkbox){margin-bottom:-.5em;padding:.5em 0 0}.kfrm-field-ie>label:not(.checkbox),.kfrm-fields-ie>label:not(.checkbox){font-weight:600}.kfrm-fields-ie.is-horizontal{display:flex;flex-direction:row;padding:0!important}.kfrm-fields-ie.kfrm-fields-ie.is-horizontal>:not(.kfrm-select){padding:.5em}.kfrm-fields-ie.is-horizontal>:not(:first-child){margin-left:1em}.kfrm-fields-ie>label{padding-left:0!important;padding-right:0!important}.kfrm-field>label{padding-right:.5em}.kfrm-callout{font-size:1.2em;text-align:center}.kdtp{background-color:#fff;border:1px solid silver;border-radius:8px;box-shadow:4px 8px 15px 0 rgba(0,0,0,.16);font-size:.7rem;outline:none;overflow:hidden;z-index:100000}.kdtp-buttons{display:flex;flex-direction:row;justify-content:space-between;margin-top:1em}.kdtp-button{background-color:#09c;border:none;color:#fff;cursor:pointer;flex:1;font-weight:500;height:2.5em;text-align:center;text-decoration:none}.kdtp-button:active,.kdtp-button:focus{outline:0}.kdtp-button-now{background-color:#fff;border:none;color:#09c}.kdtp-button:nth-child(2){border-top-left-radius:8px}.kdtp-button:not(:first-child){margin-left:2px}.kdtp-cal{padding:0}.kdtp-cal *{outline:none!important}.kdtp-cal-body{grid-gap:.5em;-ms-grid-rows:1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,minmax(1em,1fr));padding:0 12px}.kdtp-cal-body>:first-child{-ms-grid-column:1;-ms-grid-row:1}.kdtp-cal-body>:nth-child(2){-ms-grid-column:3;-ms-grid-row:1}.kdtp-cal-body>:nth-child(3){-ms-grid-column:5;-ms-grid-row:1}.kdtp-cal-body>:nth-child(4){-ms-grid-column:7;-ms-grid-row:1}.kdtp-cal-body>:nth-child(5){-ms-grid-column:9;-ms-grid-row:1}.kdtp-cal-body>:nth-child(6){-ms-grid-column:11;-ms-grid-row:1}.kdtp-cal-body>:nth-child(7){-ms-grid-column:13;-ms-grid-row:1}.kdtp-cal-body>:nth-child(8){-ms-grid-column:1;-ms-grid-row:3}.kdtp-cal-body>:nth-child(9){-ms-grid-column:3;-ms-grid-row:3}.kdtp-cal-body>:nth-child(10){-ms-grid-column:5;-ms-grid-row:3}.kdtp-cal-body>:nth-child(11){-ms-grid-column:7;-ms-grid-row:3}.kdtp-cal-body>:nth-child(12){-ms-grid-column:9;-ms-grid-row:3}.kdtp-cal-body>:nth-child(13){-ms-grid-column:11;-ms-grid-row:3}.kdtp-cal-body>:nth-child(14){-ms-grid-column:13;-ms-grid-row:3}.kdtp-cal-body>:nth-child(15){-ms-grid-column:1;-ms-grid-row:5}.kdtp-cal-body>:nth-child(16){-ms-grid-column:3;-ms-grid-row:5}.kdtp-cal-body>:nth-child(17){-ms-grid-column:5;-ms-grid-row:5}.kdtp-cal-body>:nth-child(18){-ms-grid-column:7;-ms-grid-row:5}.kdtp-cal-body>:nth-child(19){-ms-grid-column:9;-ms-grid-row:5}.kdtp-cal-body>:nth-child(20){-ms-grid-column:11;-ms-grid-row:5}.kdtp-cal-body>:nth-child(21){-ms-grid-column:13;-ms-grid-row:5}.kdtp-cal-body>:nth-child(22){-ms-grid-column:1;-ms-grid-row:7}.kdtp-cal-body>:nth-child(23){-ms-grid-column:3;-ms-grid-row:7}.kdtp-cal-body>:nth-child(24){-ms-grid-column:5;-ms-grid-row:7}.kdtp-cal-body>:nth-child(25){-ms-grid-column:7;-ms-grid-row:7}.kdtp-cal-body>:nth-child(26){-ms-grid-column:9;-ms-grid-row:7}.kdtp-cal-body>:nth-child(27){-ms-grid-column:11;-ms-grid-row:7}.kdtp-cal-body>:nth-child(28){-ms-grid-column:13;-ms-grid-row:7}.kdtp-cal-body>:nth-child(29){-ms-grid-column:1;-ms-grid-row:9}.kdtp-cal-body>:nth-child(30){-ms-grid-column:3;-ms-grid-row:9}.kdtp-cal-body>:nth-child(31){-ms-grid-column:5;-ms-grid-row:9}.kdtp-cal-body>:nth-child(32){-ms-grid-column:7;-ms-grid-row:9}.kdtp-cal-body>:nth-child(33){-ms-grid-column:9;-ms-grid-row:9}.kdtp-cal-body>:nth-child(34){-ms-grid-column:11;-ms-grid-row:9}.kdtp-cal-body>:nth-child(35){-ms-grid-column:13;-ms-grid-row:9}.kdtp-cal-body>:nth-child(36){-ms-grid-column:1;-ms-grid-row:11}.kdtp-cal-body>:nth-child(37){-ms-grid-column:3;-ms-grid-row:11}.kdtp-cal-body>:nth-child(38){-ms-grid-column:5;-ms-grid-row:11}.kdtp-cal-body>:nth-child(39){-ms-grid-column:7;-ms-grid-row:11}.kdtp-cal-body>:nth-child(40){-ms-grid-column:9;-ms-grid-row:11}.kdtp-cal-body>:nth-child(41){-ms-grid-column:11;-ms-grid-row:11}.kdtp-cal-body>:nth-child(42){-ms-grid-column:13;-ms-grid-row:11}.kdtp-cal-body>:nth-child(43){-ms-grid-column:1;-ms-grid-row:13}.kdtp-cal-body>:nth-child(44){-ms-grid-column:3;-ms-grid-row:13}.kdtp-cal-body>:nth-child(45){-ms-grid-column:5;-ms-grid-row:13}.kdtp-cal-body>:nth-child(46){-ms-grid-column:7;-ms-grid-row:13}.kdtp-cal-body>:nth-child(47){-ms-grid-column:9;-ms-grid-row:13}.kdtp-cal-body>:nth-child(48){-ms-grid-column:11;-ms-grid-row:13}.kdtp-cal-body>:nth-child(49){-ms-grid-column:13;-ms-grid-row:13}.kdtp-cal-header-input{background:#fff;border:1px solid silver;color:#262626;font-size:1em;height:100%;outline:none;padding:2px 5px;width:100%}.kdtp-cal-header-input.error{border-color:red}.kdtp-cal-header{background-color:#09c;color:#fff;font-size:1.2em;font-weight:600;height:2em;line-height:2em;text-align:center}.kdtp-cal-nav{display:flex;line-height:1em;margin:.7em 0;padding:0}.kdtp-cal-nav-next,.kdtp-cal-nav-prev{color:#777;flex:0 0 auto;font-size:3em;font-weight:600;text-align:center;width:1em}.kdtp-cal-nav-next:hover,.kdtp-cal-nav-prev:hover{color:#09c;cursor:pointer}.kdtp-cal-nav-selectors{display:flex;flex:1 1 auto;font-size:1.2em;margin:0 .5em}.kdtp-cal-nav-month{flex:1 1 auto;margin-right:.5em}.kdtp-cal-nav-year{flex:0 0 auto}.kdtp-cal-nav-selectors select{border:none;color:#777;font-weight:600}.kdtp-cal-nav-selectors select:hover{color:#09c}.kdtp-cal-nav-selectors select:hover option{color:#777}.kdtp-cal-weekday{align-items:center;color:#262626;display:flex;font-size:.8em;font-weight:600;height:1.8em;justify-content:center}.kdtp-cal-weekday.kdtp-cal-weekend{color:#ff685d}.kdtp-cal-day,.kdtp-cal-day-empty{align-items:center;border-radius:4px;color:#262626;display:flex;height:1.5em;justify-content:center}.kdtp-cal-day.kdtp-cal-weekend{color:#ff685d;font-weight:700}.kdtp-cal-day-selected,.kdtp-cal-day:hover{border:2px solid #09c;cursor:pointer;font-weight:700}.kdtp-cal-day-current{background-color:#d3d3d3}.kdtp-tp{-ms-flex-align:center;align-items:center;-webkit-align-items:center;display:flex;display:-ms-flexbox;margin-top:1em;padding:0 1em}.kdtp-tp-time{border:2px solid #09c;border-radius:6px;color:#777;flex:0 0 5em;-webkit-flex:0 0 5em;-ms-flex:0 0 5em;font-weight:600;margin-right:.5em;text-align:center}.kdtp-tp-sliders{flex:1 1 auto;-webkit-flex:1 1 auto;-ms-flex:1 1 auto}.kdtp-tp-time-row{align-items:center;background:linear-gradient(90deg,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;display:flex;height:1.5em}.kdtp-tp-time-row input[type=range]{-webkit-appearance:none;background:0 0;cursor:pointer;flex:1;height:100%;margin:0;padding:0}.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-ms-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:focus{outline:0}.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-ms-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;margin-top:-6px;-webkit-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-moz-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-ms-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-ms-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-moz-range-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-fill-lower,.kdtp-tp-time-row input[type=range]::-ms-fill-upper{background:0 0}:root{--tsp-border-color:#e8e8e8;--tsp-control-background:#ebebeb;--tsp-control-text-color:#000}.tsp__container{display:flex;flex-flow:row}.tsp__intervals{border-right:1px solid var(--tsp-border-color);display:flex;flex-flow:column;padding-right:10px}.tsp__button{align-items:center;background-color:var(--tsp-control-background);border:1px solid transparent;box-sizing:border-box;color:var(--tsp-control-text-color);cursor:pointer;display:inline-flex;font-size:12px;font-weight:400;justify-content:center;line-height:1.2;margin-bottom:4px;opacity:.8;outline:none;overflow:visible;padding:4px 12px;position:relative;text-align:center;transition:all .15s ease-in-out;-webkit-user-select:none;-moz-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.tsp__button:hover{border-color:var(--tsp-border-color);opacity:1}.tsp__button:active{opacity:.9}.tsp__form{display:flex;flex-flow:row nowrap;width:100%}.tsp__date{display:flex;flex-flow:column;padding:0 10px;width:50%}.tsp__label{display:flex;flex-flow:row nowrap}.tsp__label label{font-weight:700}.tsp__label select{border-color:var(--tsp-border-color);font-size:12px;margin-left:auto}.tsp__calendar{margin:10px 0;width:230px}.tsp__calendar .kdtp-cal-header input{border:1px solid var(--tsp-border-color)!important}.tsp__calendar{display:flex;flex-flow:column}.tsp__calendar .kdtp-cal-body{margin:10px 0!important}.tsp__calendar .kdtp-cal-header{margin-bottom:10px!important}.tsp__calendar .kdtp-cal-nav-selectors{font-size:16px!important}.tsp__calendar .kdtp-cal-body{grid-gap:2px!important;padding:0!important}.tsp__calendar .kdtp-cal-nav-next,.tsp__calendar .kdtp-cal-nav-prev{font-size:2em!important;width:auto!important}.tsp__calendar .kdtp-cal-body{border:1px solid var(--tsp-border-color);padding:5px!important}.tsp__calendar .kdtp-cal-day{border:1px solid var(--tsp-border-color);font-size:14px;height:30px;width:30px}.tsp__calendar .kdtp-cal-day-current{background:#3ab93c;color:#fff}.tsp__calendar .day-in-range{background:#c6e3ff!important}.kdlg-footer{border-top:1px solid var(--tsp-border-color)}');e('.keg-container *{outline:none}.keg-container,.keg-header{overflow:hidden}.keg-header{background-color:#f8f8f8;border-bottom:1px solid #babfc7;flex:0 0 auto}.keg-root{border:1px solid #babfc7;display:flex;flex-direction:column;font-family:Roboto,Arial,serif}.keg-body{flex:1;overflow:hidden}.keg-body-viewport{border:1px solid transparent;height:100%;overflow-x:auto;overflow-y:auto}.keg-body-viewport:focus,.keg-body-viewport:focus-within{border:1px solid #838383}.keg-header-row{color:rgba(0,0,0,.54);font-weight:600;min-height:30px}.keg-header-row,.keg-row{display:flex;font-size:12px}.keg-row{align-items:center;background-color:#fff;border-color:#dde2eb;border-bottom:solid #dde2eb;border-width:1px;color:#181d1f;height:26px;outline:none}.keg-row:not(.keg-row-active):not(.keg-row-totals):hover{background-color:#fffae9}.keg-row-odd{background-color:#fcfcfc}.keg-row-active{background-color:#fff3cf}.keg-cell,.keg-header-cell{display:flex}.keg-header-cell{align-items:center;padding:2px 6px;position:relative}.keg-header-cell-resize{align-items:center;display:flex;height:100%;position:absolute;right:-4px;top:0;width:8px;z-index:2}.keg-header-cell-resize:after{background-color:rgba(186,191,199,.5);content:"";display:block;height:50%;left:calc(50% - 1px);position:absolute;top:25%;width:2px;z-index:1}.keg-header-cell-label{-ms-word-wrap:keep-all;text-align:center;width:100%;word-break:keep-all}.keg-cell{align-items:center;border-right:solid transparent;height:100%;outline:none;padding:0 4px 0 10px}.keg-cell-value{max-height:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.keg-cell-align-left,.keg-cell-value-align-left{text-align:left}.keg-cell-align-right,.keg-cell-value-align-right{text-align:right}.keg-cell-align-center,.keg-cell-value-align-center{text-align:center}.keg-cell-value-bool{margin:0 auto;width:auto}.keg-cell-value-true:before{color:#28a745;content:"\\2714";font-size:16px}.keg-cell-value-false:before{color:#dc3545;content:"\\2716";font-size:16px}.keg-header-btn-plus{height:23px;position:relative;width:23px}.keg-header-btn-plus a{background:url("data:image/png;base64,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") no-repeat;display:block;height:100%;width:100%}.keg-header-btn-plus a:hover{background-position:-25px 0!important}.keg-pagination,.keg-pagination-wrapper{display:inline-flex}.keg-pagination{border-radius:4px;margin:0;padding-left:0}.keg-page-item{display:inline}.keg-page-link{background-color:#fff;border:1px solid #ddd;color:#428bca;float:left;font-size:12px;line-height:1.42857;margin-left:-1px;padding:5px 10px;position:relative;text-decoration:none}.keg-page-link:focus,.keg-page-link:hover{background-color:#eee;border-color:#ddd;border-bottom:2px solid #ffd148!important;color:#2a6496}.keg-page-item.active>.keg-page-link,.keg-page-item.active>.keg-page-link:focus,.keg-page-item.active>.keg-page-link:hover{background-color:#428bca;border-color:#428bca;color:#fff;cursor:default;z-index:2}.keg-page-item.disabled>.keg-page-link,.keg-page-item.disabled>.keg-page-link:focus,.keg-page-item.disabled>.keg-page-link:hover{background-color:#fff;border-color:#ddd;color:#999;cursor:not-allowed}.keg-page-item:first-child>.keg-page-link{border-bottom-left-radius:3px;border-top-left-radius:3px;margin-left:0}.keg-page-item:last-child>.keg-page-link{border-bottom-right-radius:3px;border-top-right-radius:3px}.keg-page-sizes{display:inline-flex;margin-left:20px}.keg-page-sizes-select{font-size:12px;height:auto!important}.keg-page-sizes-select:after{border-width:2px!important;height:.6em!important;margin-top:-.6em!important;width:.6em!important}.keg-page-sizes-label{color:rgba(0,0,0,.54);font-size:16px;margin-left:10px;padding:5px 0;white-space:nowrap}.keg-footer{display:flex;flex-wrap:wrap;margin-top:5px}.keg-page-info{color:rgba(0,0,0,.54);flex:1 1 auto;font-size:16px;padding:5px 10px;text-align:end;white-space:nowrap}.keg-page-info>span{color:#212529}.keg-row-totals{font-weight:700}.keg-totals-lv0{background-color:#ace1af}.keg-totals-lv1{background-color:#d0f0c0}.keg-totals-lv2{background-color:#d0f2c0}.keg-totals-lv3{background-color:#d0f4c0}.keg-totals-lv4{background-color:#d0f6c0}.keg-totals-lv5{background-color:#d0f8c0}.keg-sortable-helper{background-color:#fff;border:2px solid #fb9c2f;border-radius:4px;padding:3px 20px}.eqjs-chart-content,.eqjs-chart-main,.keg-container,.keg-root{height:100%}.eqjs-chart-content canvas{max-height:100%}.question-mark{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACE4AAAhOAYwxAOwAAAFgSURBVDhPbdK7K4dRHMfxn1sWUVhcihK/MBKlbMqGKAplMMglk7JJRpOy+R8sJotBiUUiSe6XWNxGpYT3++k5Tw/51Kvfc06/c/2enMzv2K5CCxpRgmecYB+vSJIX/5oCTGINnXjBG+owjXE84gzfSOLAZRxiKG6nU4QpnGIWyY79mIEDa+N2LirRhvK4Tx24Qx+iVOMarhhmHICr7MFJ22GcdB47KLajF8fIt0GcYBujcLur2EBIIa7Q5Eze6hY+ETKCdXzA838hxL4jZB1sOZ4Q4k0+wJ1sogtLSMdKlDnYOtbY8ycNsEzDOLAjFd+CZct04wKeLx3brfCM6ZTiFvWu7MvxTGMIt20slbWNbjWOj2oB54hWNv2wNNbRCU0FJhAGO3AQN/B/SRzgy7mHdfxvqytwYI8dJr1Nv635HFzVcnirXk4z3OoidhElPTjEbfrqsiiDZ7uMf98RJ5P5AUhxQvegD107AAAAAElFTkSuQmCC") no-repeat 50%;height:20px;margin-left:5px;position:relative;width:20px}.kdlg-modal,.kdlg-modal-background{bottom:0;left:0;position:absolute;right:0;top:0}.kdlg-modal-background{background-color:hsla(0,0%,4%,.5)}.kdlg-modal{align-items:center;display:none;flex-direction:column;font-family:Roboto,Arial,serif;font-size:16px;font-weight:400;justify-content:center;line-height:1.5;overflow:hidden;position:fixed;z-index:9999}.kdlg-modal.is-active{display:flex}.kdlg-modal-window,.kdlg-modal-window.size-default{display:flex;flex-direction:column;margin:0 20px;max-height:calc(100vh - 40px);overflow:hidden;-ms-overflow-y:visible;position:relative;width:100%}@media print,screen and (min-width:481px){.kdlg-modal-window.size-small{margin:0 auto;width:400px}}@media print,screen and (min-width:769px){.kdlg-modal-window,.kdlg-modal-window.size-default{margin:0 auto;width:640px}.kdlg-modal-window.size-large,.kdlg-modal-window.size-xl{margin:0 20px;width:100%}}@media print,screen and (min-width:1025px){.kdlg-modal-window.size-large{margin:0 auto;width:900px}}@media print,screen and (min-width:1383px){.kdlg-modal-window.size-xl{margin:0 auto;width:1200px}}.kdlg-footer,.kdlg-header{align-items:center;background-color:#fff;display:flex;flex-shrink:0;justify-content:flex-start;padding:20px;position:relative}.kdlg-footer.align-right{justify-content:flex-end}.kdlg-footer.align-center{justify-content:center}.kdlg-header{border-top-left-radius:6px;border-top-right-radius:6px}.kdlg-header.has-border{border-bottom:1px solid #dbdbdb}.kdlg-footer{border-bottom-left-radius:6px;border-bottom-right-radius:6px;color:initial;height:auto;margin:unset;min-height:10px}.kdlg-footer.has-border{border-top:1px solid #dbdbdb}.kdlg-header-title{color:#363636;flex-grow:1;flex-shrink:0;font-size:1.6em;line-height:1;margin:0;padding:0}.kdlg-modal-close{-webkit-touch-callout:none;-moz-appearance:none;-webkit-appearance:none;background-color:hsla(0,0%,4%,.2);border:none;border-radius:290486px;cursor:pointer;display:inline-block;flex-grow:0;flex-shrink:0;font-size:0;height:24px;max-height:24px;max-width:24px;min-height:24px;min-width:24px;outline:0;pointer-events:auto;position:relative;-webkit-user-select:none;user-select:none;vertical-align:top;width:24px}.kdlg-modal-close:after,.kdlg-modal-close:before{background-color:#fff;content:"";display:block;left:50%;position:absolute;top:50%;transform:translateX(-50%) translateY(-50%) rotate(45deg);transform-origin:center center}.kdlg-modal-close:before{height:2px;width:50%}.kdlg-modal-close:after{height:50%;width:2px}.kdlg-modal-close:focus,.kdlg-modal-close:hover{background-color:rgba(255,1,1,.48)}.kdlg-body{-webkit-overflow-scrolling:touch;background-color:#fff;color:#4a4a4a;flex-grow:1;flex-shrink:1;font-size:1em;overflow:auto;padding:20px}.kdlg-alert-container{max-height:150px;overflow-y:auto}.kdlg-alert{background-color:#e2f5ff;color:#004aef;min-height:60px;min-width:1px;padding:20px}.kdlg-alert.success{background-color:#efffe6;color:#0c7905}.kdlg-alert.warning{background-color:#fff7e5;color:#e49e02}.kdlg-alert.error{background-color:#ffe2e2;color:red}.kdlg-alert-closebtn{cursor:pointer;float:right;font-size:22px;line-height:20px;margin-left:15px;transition:.3s}.kdlg-progress-line{background-color:#e0e0e0;border-radius:3px;box-shadow:inset 0 1px 3px rgba(0,0,0,.2);overflow:hidden;padding:3px;width:100%}.kdlg-progress-line .fill{background-color:#659cef;border-radius:3px;display:block;height:22px;transition:width .5s ease-in-out}.kdlg-progress-line .fill.indeterminate{animation:kdlg-progress-line-loading 2s linear infinite;left:-200px;position:relative;transition:none;width:200px}@keyframes kdlg-progress-line-loading{0%{left:-200px}to{left:120%}}.kfrm-buttons{align-items:center;display:flex;flex-wrap:wrap;justify-content:flex-start}.kfrm-buttons.align-right{justify-content:flex-end}.kfrm-buttons.align-center{justify-content:center}.kfrm-buttons:last-child{margin-bottom:-.5rem}.kfrm-buttons .kfrm-button{margin-bottom:.5rem}.kfrm-button{-webkit-touch-callout:none;align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid #dbdbdb;border-radius:4px;box-shadow:none;color:#363636;cursor:pointer;display:inline-flex;font-size:1em;height:2.5em;justify-content:center;line-height:1.5;padding:calc(.5em - 1px) 1em;position:relative;text-align:center;-webkit-user-select:none;user-select:none;vertical-align:top;white-space:nowrap}.kfrm-button:not(:last-child){margin-right:.5em}.kfrm-button.is-hovered,.kfrm-button:hover{border-color:#b5b5b5;color:#363636}.kfrm-button.is-focused,.kfrm-button:focus{border-color:#3273dc;color:#363636;outline:none}.kfrm-button.is-focused:not(:active),.kfrm-button:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-active,.kfrm-button:active{border-color:#4a4a4a;color:#363636}.kfrm-button[disabled],fieldset[disabled] .kfrm-button{background-color:#fff;border-color:#dbdbdb;box-shadow:none;cursor:not-allowed;opacity:.5}.kfrm-button.is-loading{color:transparent!important;pointer-events:none}.kfrm-button.is-loading:after{animation:spinAround .5s linear infinite;border-color:transparent transparent #dbdbdb #dbdbdb;border-radius:290486px;border-style:solid;border-width:2px;content:"";display:block;height:1em;left:calc(50% - .5em);position:absolute!important;top:calc(50% - .5em);width:1em}@keyframes spinAround{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.kfrm-button.size-small,.kfrm-buttons.size-small .kfrm-button:not(.size-default):not(.size-medium):not(.size-large){border-radius:2px;font-size:.75rem}.kfrm-button.size-default\r\n.kfrm-buttons.size-default .kfrm-button:not(.size-small):not(.size-medium):not(.size-large){font-size:1rem}.kfrm-button.size-medium,.kfrm-buttons.size-medium .kfrm-button:not(.size-small):not(.size-default):not(.size-large){font-size:1.25rem}.kfrm-button.size-large\r\n.kfrm-buttons.size-large .kfrm-button:not(.size-small):not(.size-default):not(.size-medium){font-size:1.5rem}.kfrm-button.is-white{background-color:#fff;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-hovered,.kfrm-button.is-white:hover{background-color:#f9f9f9;border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused,.kfrm-button.is-white:focus{border-color:transparent;color:#0a0a0a}.kfrm-button.is-white.is-focused:not(:active),.kfrm-button.is-white:focus:not(:active){box-shadow:0 0 0 .125em hsla(0,0%,59%,.15)}.kfrm-button.is-white.is-active,.kfrm-button.is-white:active{background-color:#f2f2f2;border-color:transparent;color:#0a0a0a}.kfrm-button.is-dark{background-color:#363636e6;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-hovered,.kfrm-button.is-dark:hover{background-color:#2f2f2f;border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused,.kfrm-button.is-dark:focus{border-color:transparent;color:#fff}.kfrm-button.is-dark.is-focused:not(:active),.kfrm-button.is-dark:focus:not(:active){box-shadow:0 0 0 .125em rgba(54,54,54,.25)}.kfrm-button.is-dark.is-active,.kfrm-button.is-dark:active{background-color:#292929;border-color:transparent;color:#fff}.kfrm-button.is-primary{background-color:#00d1b2;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-hovered,.kfrm-button.is-primary:hover{background-color:#00c4a7;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused,.kfrm-button.is-primary:focus{border-color:transparent;color:#fff}.kfrm-button.is-primary.is-focused:not(:active),.kfrm-button.is-primary:focus:not(:active){box-shadow:0 0 0 .125em rgba(0,209,178,.25)}.kfrm-button.is-primary.is-active,.kfrm-button.is-primary:active{background-color:#00b89c;border-color:transparent;color:#fff}.kfrm-button.is-primary.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-link{background-color:#3273dc;border-color:transparent;color:#fff}.kfrm-button.is-link.is-hovered,.kfrm-button.is-link:hover{background-color:#276cda;border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused,.kfrm-button.is-link:focus{border-color:transparent;color:#fff}.kfrm-button.is-link.is-focused:not(:active),.kfrm-button.is-link:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,115,220,.25)}.kfrm-button.is-link.is-active,.kfrm-button.is-link:active{background-color:#2366d1;border-color:transparent;color:#fff}.kfrm-button.is-link.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-info{background-color:#3298dc;border-color:transparent;color:#fff}.kfrm-button.is-info.is-hovered,.kfrm-button.is-info:hover{background-color:#2793da;border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused,.kfrm-button.is-info:focus{border-color:transparent;color:#fff}.kfrm-button.is-info.is-focused:not(:active),.kfrm-button.is-info:focus:not(:active){box-shadow:0 0 0 .125em rgba(50,152,220,.25)}.kfrm-button.is-info.is-active,.kfrm-button.is-info:active{background-color:#238cd1;border-color:transparent;color:#fff}.kfrm-button.is-info.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-success{background-color:#48c774;border-color:transparent;color:#fff}.kfrm-button.is-success.is-hovered,.kfrm-button.is-success:hover{background-color:#3ec46d;border-color:transparent;color:#fff}.kfrm-button.is-success.is-focused:not(:active),.kfrm-button.is-success:focus:not(:active){box-shadow:0 0 0 .125em rgba(72,199,116,.25)}.kfrm-button.is-success.is-active,.kfrm-button.is-success:active{background-color:#3abb67;border-color:transparent;color:#fff}.kfrm-button.is-success.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-button.is-warning{background-color:#ffdd57;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-hovered,.kfrm-button.is-warning:hover{background-color:#ffdb4a;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused,.kfrm-button.is-warning:focus{border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-focused:not(:active),.kfrm-button.is-warning:focus:not(:active){box-shadow:0 0 0 .125em rgba(255,221,87,.25)}.kfrm-button.is-warning.is-active,.kfrm-button.is-warning:active{background-color:#ffd83d;border-color:transparent;color:rgba(0,0,0,.7)}.kfrm-button.is-warning.is-loading:after{border-color:transparent transparent rgba(0,0,0,.7) rgba(0,0,0,.7)!important}.kfrm-button.is-danger{background-color:#f14668;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-hovered,.kfrm-button.is-danger:hover{background-color:#f03a5f;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused,.kfrm-button.is-danger:focus{border-color:transparent;color:#fff}.kfrm-button.is-danger.is-focused:not(:active),.kfrm-button.is-danger:focus:not(:active){box-shadow:0 0 0 .125em rgba(241,70,104,.25)}.kfrm-button.is-danger.is-active,.kfrm-button.is-danger:active{background-color:#ef2e55;border-color:transparent;color:#fff}.kfrm-button.is-danger.is-loading:after{border-color:transparent transparent #fff #fff!important}.kfrm-row{margin-left:-.75rem;margin-right:-.75rem;margin-top:-.75rem}.kfrm-row:not(:last-child){margin-bottom:.75rem}@media print,screen and (min-width:769px){.kfrm-row{display:flex;flex-wrap:wrap}.kdlg-modal-window.size-small .kfrm-row{display:block}.kfrm-column.size-1{flex:none;width:8.33333%}.kfrm-column.size-2{flex:none;width:16.66667%}.kfrm-column.size-3{flex:none;width:25%}.kfrm-column.size-4{flex:none;width:33.33333%}.kfrm-column.size-5{flex:none;width:41.66667%}.kfrm-column.size-6{flex:none;width:50%}.kfrm-column.size-7{flex:none;width:58.33333%}.kfrm-column.size-8{flex:none;width:66.66667%}.kfrm-column.size-9{flex:none;width:75%}.kfrm-column.size-10{flex:none;width:83.33333%}.kfrm-column.size-11{flex:none;width:91.66667%}.kfrm-column.size-12{flex:none;width:100%}}.kfrm-column{display:block;flex-basis:0;flex-grow:1;flex-shrink:1;padding:.75rem}.kfrm-form .errors-block{color:red}.kfrm-form .control{box-sizing:border-box;clear:both;display:inline-flex;max-width:100%;padding:0!important;position:relative;text-align:inherit;width:100%}.kfrm-form .icon{align-items:center;display:inline-flex;height:1.5em;justify-content:center;width:1.5em}.kfrm-form .control.has-icons-left .select select,.kfrm-form .control.has-icons-left input{padding-left:2.5em}.kfrm-form .control.has-icons-right .select select,.kfrm-form .control.has-icons-right input{padding-right:2.5em}.kfrm-form .control.has-icons-left .icon.is-left{left:0}.kfrm-form .control.has-icons-right .icon.is-right{right:0}.kfrm-form .control .icon{color:#dbdbdb;height:2.5em;pointer-events:none;position:absolute;top:0;width:2.5em;z-index:4}.kfrm-form .control .icon.is-clickable{pointer-events:auto}.kfrm-form .control .icon.is-clickable:hover{color:#4a4a4a;cursor:pointer}.kfrm-form input.is-valid:not([type=checkbox]),.kfrm-form input.is-valid:not([type=checkbox]):hover{border-color:green}.kfrm-form input.is-invalid:not([type=checkbox]),.kfrm-form input.is-invalid:not([type=checkbox]):hover{border-color:red}.kfrm-form input:not([type=checkbox]):read-only{background-color:#e9ecef;opacity:1}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea,.kfrm-select select{align-items:center;-moz-appearance:none;-webkit-appearance:none;background-color:#fff;border:1px solid transparent;border-color:#dbdbdb;border-radius:4px;box-shadow:none;color:#363636;display:inline-flex;font-size:1em;height:2.5em;justify-content:flex-start;line-height:1.5;outline:0;padding:calc(.5em - 1px) calc(.75em - 1px);position:relative;vertical-align:top}.kfrm-form input:not([type=checkbox]),.kfrm-form textarea{box-shadow:inset 0 .0625em .125em hsla(0,0%,4%,.05);max-width:100%;width:100%}.kfrm-form input:not([type=checkbox]).is-hovered,.kfrm-form input:not([type=checkbox]):hover,.kfrm-form textarea.is-hovered,.kfrm-form textarea:hover,.kfrm-select select.is-hovered,.kfrm-select select:hover{border-color:#b5b5b5}.kfrm-form input:not([type=checkbox]).is-active,.kfrm-form input:not([type=checkbox]).is-focused,.kfrm-form input:not([type=checkbox]):active,.kfrm-form input:not([type=checkbox]):focus,.kfrm-form textarea.is-active,.kfrm-form textarea.is-focused,.kfrm-form textarea:active,.kfrm-form textarea:focus,.kfrm-select select.is-active,.kfrm-select select.is-focused,.kfrm-select select:active,.kfrm-select select:focus{border-color:#3273dc;box-shadow:0 0 0 .125em rgba(50,115,220,.25);outline:0}.kfrm-select{display:inline-block;max-width:100%;padding:0;position:relative;vertical-align:top;width:max-content}.kfrm-select.full-width{width:100%}.kfrm-select select::-ms-expand{display:none!important}.kfrm-select:not(.is-multiple){height:2.5em}.kfrm-select select{cursor:pointer;display:block;font-size:1em;max-width:100%;outline:0}.kfrm-select select:not([multiple]){padding-right:2.5em}.kfrm-select.kfrm-select.full-width select:not([multiple]){width:100%}.kfrm-select:not(.is-multiple):not(.is-loading):after{border:3px solid #3273dc;border-radius:2px;border-right:0;border-top:0;content:" ";display:block;height:.425em;margin-top:-.5em;pointer-events:none;position:absolute;right:.7em;top:50%;transform:rotate(-45deg);transform-origin:center;width:.425em;z-index:4}.kfrm-form textarea{display:block;max-width:100%;min-width:100%;padding:calc(.75em - 1px);resize:vertical}.kfrm-form textarea:not([rows]){max-height:40em;min-height:8em}.kfrm-form{font-size:16px}.kfrm-form fieldset{border:1px solid #dbdbdb;border-radius:6px;padding:20px}.kfrm-form fieldset>legend{font-size:16px;font-weight:600;margin-bottom:0;padding-inline-end:10px;padding-inline-start:10px;width:auto}.kfrm-break,.kfrm-break-50{margin-top:50px}.kfrm-break-10{margin-top:10px}.kfrm-break-20{margin-top:20px}.kfrm-break-30{margin-top:30px}.kfrm-break-40{margin-top:40px}.kfrm-break-60{margin-top:60px}.kfrm-break-70{margin-top:70px}.kfrm-break-80{margin-top:10px}.kfrm-fields,.kfrm-fields.col-a{grid-gap:10px;display:grid;grid-auto-rows:auto;grid-template-columns:auto}.kfrm-fields:not(:last-child){margin-bottom:.75rem}.kfrm-fields>label{padding:.5em 0}.kfrm-fields .label-compact{font-size:.9em}fieldset .kfrm-fields>label{margin:0;padding:0}.kfrm-fields>label:not(.checkbox){font-weight:600}.kfrm-fields.label-above>label:not(.checkbox){font-weight:500;margin-bottom:-.5em;padding:.5em 0 0}.kfrm-fields.label-align-right>label:not(.checkbox){text-align:right}.kfrm-fields.col-a-1{grid-template-columns:auto 1fr}.kfrm-fields.col-1-a{grid-template-columns:1fr auto}.kfrm-fields.col-a-a{grid-template-columns:auto auto}.kfrm-fields.col-1-1{grid-template-columns:1fr 1fr}.kfrm-fields.col-1-2{grid-template-columns:1fr 2fr}.kfrm-fields.col-1-3{grid-template-columns:1fr 3fr}.kfrm-fields.col-2-1{grid-template-columns:2fr 1fr}.kfrm-fields.col-3-1{grid-template-columns:3fr 1fr}.kfrm-fields.col-2-3{grid-template-columns:2fr 3fr}.kfrm-fields.col-3-2{grid-template-columns:3fr 2fr}.kfrm-fields.is-horizontal{display:flex;padding:0}.kfrm-fields.is-horizontal.align-right{justify-content:flex-end}.kfrm-fields.is-horizontal.align-center{justify-content:center}.kfrm-fields.is-horizontal.align-evenly{justify-content:space-evenly}.kfrm-fields.is-horizontal>label:not(:first-child){margin-left:.5rem}.kfrm-fields-ie{display:flex;flex-direction:column;font-size:16px}.kfrm-field-ie{display:flex;margin-bottom:1em}.kfrm-field-ie>:first-child{margin-right:20px}.kfrm-field-ie>label{padding:.5em 0}.kfrm-fields-ie.col-ie-1-1>.kfrm-field-ie>:first-child{flex:0 0 50%}.kfrm-fields-ie.col-ie-1-2>.kfrm-field-ie>:first-child{flex:0 0 33.3333%}.kfrm-fields-ie.col-ie-1-3>.kfrm-field-ie>:first-child{flex:0 0 25%}.kfrm-fields-ie.col-ie-1-4>.kfrm-field-ie>:first-child{flex:0 0 20%}.kfrm-fields-ie.label-align-right .kfrm-field-ie>:first-child{text-align:right}.kfrm-fields-ie.label-above .kfrm-field-ie>:first-child:not(.checkbox){margin-bottom:-.5em;padding:.5em 0 0}.kfrm-field-ie>label:not(.checkbox),.kfrm-fields-ie>label:not(.checkbox){font-weight:600}.kfrm-fields-ie.is-horizontal{display:flex;flex-direction:row;padding:0!important}.kfrm-fields-ie.kfrm-fields-ie.is-horizontal>:not(.kfrm-select){padding:.5em}.kfrm-fields-ie.is-horizontal>:not(:first-child){margin-left:1em}.kfrm-fields-ie>label{padding-left:0!important;padding-right:0!important}.kfrm-field>label{padding-right:.5em}.kfrm-callout{font-size:1.2em;text-align:center}.kdtp{background-color:#fff;border:1px solid silver;border-radius:8px;box-shadow:4px 8px 15px 0 rgba(0,0,0,.16);font-size:.7rem;outline:none;overflow:hidden;z-index:100000}.kdtp-buttons{display:flex;flex-direction:row;justify-content:space-between;margin-top:1em}.kdtp-button{background-color:#09c;border:none;color:#fff;cursor:pointer;flex:1;font-weight:500;height:2.5em;text-align:center;text-decoration:none}.kdtp-button:active,.kdtp-button:focus{outline:0}.kdtp-button-now{background-color:#fff;border:none;color:#09c}.kdtp-button:nth-child(2){border-top-left-radius:8px}.kdtp-button:not(:first-child){margin-left:2px}.kdtp-cal{padding:0}.kdtp-cal *{outline:none!important}.kdtp-cal-body{grid-gap:.5em;-ms-grid-rows:1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr .5em 1fr;box-sizing:border-box;display:grid;grid-template-columns:repeat(7,minmax(1em,1fr));padding:0 12px}.kdtp-cal-body>:first-child{-ms-grid-column:1;-ms-grid-row:1}.kdtp-cal-body>:nth-child(2){-ms-grid-column:3;-ms-grid-row:1}.kdtp-cal-body>:nth-child(3){-ms-grid-column:5;-ms-grid-row:1}.kdtp-cal-body>:nth-child(4){-ms-grid-column:7;-ms-grid-row:1}.kdtp-cal-body>:nth-child(5){-ms-grid-column:9;-ms-grid-row:1}.kdtp-cal-body>:nth-child(6){-ms-grid-column:11;-ms-grid-row:1}.kdtp-cal-body>:nth-child(7){-ms-grid-column:13;-ms-grid-row:1}.kdtp-cal-body>:nth-child(8){-ms-grid-column:1;-ms-grid-row:3}.kdtp-cal-body>:nth-child(9){-ms-grid-column:3;-ms-grid-row:3}.kdtp-cal-body>:nth-child(10){-ms-grid-column:5;-ms-grid-row:3}.kdtp-cal-body>:nth-child(11){-ms-grid-column:7;-ms-grid-row:3}.kdtp-cal-body>:nth-child(12){-ms-grid-column:9;-ms-grid-row:3}.kdtp-cal-body>:nth-child(13){-ms-grid-column:11;-ms-grid-row:3}.kdtp-cal-body>:nth-child(14){-ms-grid-column:13;-ms-grid-row:3}.kdtp-cal-body>:nth-child(15){-ms-grid-column:1;-ms-grid-row:5}.kdtp-cal-body>:nth-child(16){-ms-grid-column:3;-ms-grid-row:5}.kdtp-cal-body>:nth-child(17){-ms-grid-column:5;-ms-grid-row:5}.kdtp-cal-body>:nth-child(18){-ms-grid-column:7;-ms-grid-row:5}.kdtp-cal-body>:nth-child(19){-ms-grid-column:9;-ms-grid-row:5}.kdtp-cal-body>:nth-child(20){-ms-grid-column:11;-ms-grid-row:5}.kdtp-cal-body>:nth-child(21){-ms-grid-column:13;-ms-grid-row:5}.kdtp-cal-body>:nth-child(22){-ms-grid-column:1;-ms-grid-row:7}.kdtp-cal-body>:nth-child(23){-ms-grid-column:3;-ms-grid-row:7}.kdtp-cal-body>:nth-child(24){-ms-grid-column:5;-ms-grid-row:7}.kdtp-cal-body>:nth-child(25){-ms-grid-column:7;-ms-grid-row:7}.kdtp-cal-body>:nth-child(26){-ms-grid-column:9;-ms-grid-row:7}.kdtp-cal-body>:nth-child(27){-ms-grid-column:11;-ms-grid-row:7}.kdtp-cal-body>:nth-child(28){-ms-grid-column:13;-ms-grid-row:7}.kdtp-cal-body>:nth-child(29){-ms-grid-column:1;-ms-grid-row:9}.kdtp-cal-body>:nth-child(30){-ms-grid-column:3;-ms-grid-row:9}.kdtp-cal-body>:nth-child(31){-ms-grid-column:5;-ms-grid-row:9}.kdtp-cal-body>:nth-child(32){-ms-grid-column:7;-ms-grid-row:9}.kdtp-cal-body>:nth-child(33){-ms-grid-column:9;-ms-grid-row:9}.kdtp-cal-body>:nth-child(34){-ms-grid-column:11;-ms-grid-row:9}.kdtp-cal-body>:nth-child(35){-ms-grid-column:13;-ms-grid-row:9}.kdtp-cal-body>:nth-child(36){-ms-grid-column:1;-ms-grid-row:11}.kdtp-cal-body>:nth-child(37){-ms-grid-column:3;-ms-grid-row:11}.kdtp-cal-body>:nth-child(38){-ms-grid-column:5;-ms-grid-row:11}.kdtp-cal-body>:nth-child(39){-ms-grid-column:7;-ms-grid-row:11}.kdtp-cal-body>:nth-child(40){-ms-grid-column:9;-ms-grid-row:11}.kdtp-cal-body>:nth-child(41){-ms-grid-column:11;-ms-grid-row:11}.kdtp-cal-body>:nth-child(42){-ms-grid-column:13;-ms-grid-row:11}.kdtp-cal-body>:nth-child(43){-ms-grid-column:1;-ms-grid-row:13}.kdtp-cal-body>:nth-child(44){-ms-grid-column:3;-ms-grid-row:13}.kdtp-cal-body>:nth-child(45){-ms-grid-column:5;-ms-grid-row:13}.kdtp-cal-body>:nth-child(46){-ms-grid-column:7;-ms-grid-row:13}.kdtp-cal-body>:nth-child(47){-ms-grid-column:9;-ms-grid-row:13}.kdtp-cal-body>:nth-child(48){-ms-grid-column:11;-ms-grid-row:13}.kdtp-cal-body>:nth-child(49){-ms-grid-column:13;-ms-grid-row:13}.kdtp-cal-header-input{background:#fff;border:1px solid silver;color:#262626;font-size:1em;height:100%;outline:none;padding:2px 5px;width:100%}.kdtp-cal-header-input.error{border-color:red}.kdtp-cal-header{background-color:#09c;color:#fff;font-size:1.2em;font-weight:600;height:2em;line-height:2em;text-align:center}.kdtp-cal-nav{display:flex;line-height:1em;margin:.7em 0;padding:0}.kdtp-cal-nav-next,.kdtp-cal-nav-prev{color:#777;flex:0 0 auto;font-size:3em;font-weight:600;text-align:center;width:1em}.kdtp-cal-nav-next:hover,.kdtp-cal-nav-prev:hover{color:#09c;cursor:pointer}.kdtp-cal-nav-selectors{display:flex;flex:1 1 auto;font-size:1.2em;margin:0 .5em}.kdtp-cal-nav-month{flex:1 1 auto;margin-right:.5em}.kdtp-cal-nav-year{flex:0 0 auto}.kdtp-cal-nav-selectors select{border:none;color:#777;font-weight:600}.kdtp-cal-nav-selectors select:hover{color:#09c}.kdtp-cal-nav-selectors select:hover option{color:#777}.kdtp-cal-weekday{align-items:center;color:#262626;display:flex;font-size:.8em;font-weight:600;height:1.8em;justify-content:center}.kdtp-cal-weekday.kdtp-cal-weekend{color:#ff685d}.kdtp-cal-day,.kdtp-cal-day-empty{align-items:center;border-radius:4px;color:#262626;display:flex;height:1.5em;justify-content:center}.kdtp-cal-day.kdtp-cal-weekend{color:#ff685d;font-weight:700}.kdtp-cal-day-selected,.kdtp-cal-day:hover{border:2px solid #09c;cursor:pointer;font-weight:700}.kdtp-cal-day-current{background-color:#d3d3d3}.kdtp-tp{-ms-flex-align:center;align-items:center;-webkit-align-items:center;display:flex;display:-ms-flexbox;margin-top:1em;padding:0 1em}.kdtp-tp-time{border:2px solid #09c;border-radius:6px;color:#777;flex:0 0 5em;-webkit-flex:0 0 5em;-ms-flex:0 0 5em;font-weight:600;margin-right:.5em;text-align:center}.kdtp-tp-sliders{flex:1 1 auto;-webkit-flex:1 1 auto;-ms-flex:1 1 auto}.kdtp-tp-time-row{align-items:center;background:linear-gradient(90deg,#c5c5c5,#c5c5c5) left 50%/100% 1px no-repeat;display:flex;height:1.5em}.kdtp-tp-time-row input[type=range]{-webkit-appearance:none;background:0 0;cursor:pointer;flex:1;height:100%;margin:0;padding:0}.kdtp-tp-time-row input[type=range]:hover::-webkit-slider-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-moz-range-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:hover::-ms-thumb{border-color:#777}.kdtp-tp-time-row input[type=range]:focus{outline:0}.kdtp-tp-time-row input[type=range]:focus::-webkit-slider-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-moz-range-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]:focus::-ms-thumb{background:#09c;border-color:#09c}.kdtp-tp-time-row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;margin-top:-6px;-webkit-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-moz-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-ms-thumb{background:#fff;border:1px solid #c5c5c5;border-radius:3px;box-sizing:border-box;cursor:pointer;height:12px;-ms-transition:background .2s;transition:background .2s;width:12px}.kdtp-tp-time-row input[type=range]::-webkit-slider-runnable-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-moz-range-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-track{background:0 0;border:none;color:transparent;cursor:pointer;height:1px}.kdtp-tp-time-row input[type=range]::-ms-fill-lower,.kdtp-tp-time-row input[type=range]::-ms-fill-upper{background:0 0}:root{--tsp-border-color:#e8e8e8;--tsp-control-background:#ebebeb;--tsp-control-text-color:#000}.tsp__container{display:flex;flex-flow:row}.tsp__intervals{border-right:1px solid var(--tsp-border-color);display:flex;flex-flow:column;padding-right:10px}.tsp__button{align-items:center;background-color:var(--tsp-control-background);border:1px solid transparent;box-sizing:border-box;color:var(--tsp-control-text-color);cursor:pointer;display:inline-flex;font-size:12px;font-weight:400;justify-content:center;line-height:1.2;margin-bottom:4px;opacity:.8;outline:none;overflow:visible;padding:4px 12px;position:relative;text-align:center;transition:all .15s ease-in-out;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap}.tsp__button:hover{border-color:var(--tsp-border-color);opacity:1}.tsp__button:active{opacity:.9}.tsp__form{display:flex;flex-flow:row nowrap;width:100%}.tsp__date{display:flex;flex-flow:column;padding:0 10px;width:50%}.tsp__label{display:flex;flex-flow:row nowrap}.tsp__label label{font-weight:700}.tsp__label select{border-color:var(--tsp-border-color);font-size:12px;margin-left:auto}.tsp__calendar{margin:10px 0;width:230px}.tsp__calendar .kdtp-cal-header input{border:1px solid var(--tsp-border-color)!important}.tsp__calendar{display:flex;flex-flow:column}.tsp__calendar .kdtp-cal-body{margin:10px 0!important}.tsp__calendar .kdtp-cal-header{margin-bottom:10px!important}.tsp__calendar .kdtp-cal-nav-selectors{font-size:16px!important}.tsp__calendar .kdtp-cal-body{grid-gap:2px!important;padding:0!important}.tsp__calendar .kdtp-cal-nav-next,.tsp__calendar .kdtp-cal-nav-prev{font-size:2em!important;width:auto!important}.tsp__calendar .kdtp-cal-body{border:1px solid var(--tsp-border-color);padding:5px!important}.tsp__calendar .kdtp-cal-day{border:1px solid var(--tsp-border-color);font-size:14px;height:30px;width:30px}.tsp__calendar .kdtp-cal-day-current{background:#3ab93c;color:#fff}.tsp__calendar .day-in-range{background:#c6e3ff!important}.kdlg-footer{border-top:1px solid var(--tsp-border-color)}.ed-entity-menu{display:flex;flex-direction:column;margin-bottom:0;padding-left:0}.ed-entity-item{background-color:#fff;border:1px solid rgba(0,0,0,.125);border-left:none;border-right:none;display:block;font-size:1.2em;margin-bottom:-1px;padding:.75rem 1.25rem;position:relative}.ed-entity-item:hover{background-color:#3498db;color:#fff;cursor:pointer}.ed-root{display:flex;flex-direction:column}.ed-menu-description{font-size:1.5em;margin:50px auto;text-align:center}.ed-entity-item-caption{display:flex;font-weight:500;justify-content:space-between}.ed-entity-item-caption:after{content:"\\276F";height:1em;text-align:center;transition:all .35s;width:1em}.ed-entity-item-descr{font-size:.8em;margin-left:30px;margin-top:5px}.ed-progress-bar{background-color:#ddd;display:"none";height:4px;left:0;overflow:hidden;position:fixed;top:0;width:100%;z-index:65000}.ed-progress-bar:before{animation:ed-progress-bar-loading 2s linear infinite;background-color:#2980b9;content:"";display:block;height:4px;left:-200px;position:absolute;width:200px}@keyframes ed-progress-bar-loading{0%{left:-200px;width:30%}50%{width:30%}70%{width:70%}80%{left:50%}95%{left:120%}to{left:100%}}.ed-calendar-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqklEQVQ4T+3TuwlCMRSA4e+uo4UigiNoI2gpaOsa6hY6gAP4KHQDEUQb51ECN5Cb6oqNhWkS+E/+cB4pfLmK7P4IW0ywz9g4YbvIouCBFlZYJHvqyNkdnSh4lZEzrDEvX0sFU2wyVuSCJ44YopGlENihZM2SVQQXnGvWdIAeKoKQ47KmIMSFWv0FP1eDK05JG+OQpf8lnvvopm0Mc92uOQMx7BYk+W/80MEb/4ExEZgczvIAAAAASUVORK5CYII=") no-repeat;height:16px;width:16px}.ed-timer-icon{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABLklEQVQ4T4XTPyhGYRTH8c87GZUYTFJSJgurxMSgGMRmfa3EgFIogxmbWCibxUQyYldSWEwWo4mOnvt239v7cJd773PO+T7nz+/UtH7aMY7eZH7BFT6r7rXKQSe2MYdbPCV7P0ZwhnV8FHFlwAAucYfF5NSWHL8Q8AMMYwKPYSsAYXzALg5LWa2l753SWR2rGIpLCkAEdWC2UtJm+i/ehfk8ZVgPQDTsDX3l2iqBVUBk/IyeAMxgAVMtBpLLIFwvcBSAJXRjOQMYxQ2+cYIYaTx7eP8PMIjpFBCAY7xWAX+VkNHZ73GjhL+amAM0NTGccmPMAZrGGE45IbUChJBWkiIbQgrHQsr3CKeG3hOlC/tJgZNVKRc3RSZbmM8s0yk2cstUTjcaO1ZZ5+tW6/wDn+5DtafCGz8AAAAASUVORK5CYII=") no-repeat;height:16px;width:16px}');"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self&&self;var i,o={exports:{}},r={exports:{}};function n(){return i||(i=1,function(t,e){ -/*! - * EasyData.JS Core v1.4.20 - * Copyright 2024 Korzh.com - * Licensed under MIT - */ -!function(t){var e,i;t.DataType=void 0,(i=t.DataType||(t.DataType={}))[i.Unknown=0]="Unknown",i[i.String=1]="String",i[i.Byte=2]="Byte",i[i.Word=3]="Word",i[i.Int32=4]="Int32",i[i.Int64=5]="Int64",i[i.Bool=6]="Bool",i[i.Float=7]="Float",i[i.Currency=8]="Currency",i[i.BCD=9]="BCD",i[i.Date=10]="Date",i[i.Time=11]="Time",i[i.DateTime=12]="DateTime",i[i.Autoinc=13]="Autoinc",i[i.Memo=14]="Memo",i[i.Blob=15]="Blob",i[i.FixedChar=16]="FixedChar",i[i.Guid=17]="Guid",i[i.Geometry=18]="Geometry",i[i.Geography=19]="Geography",t.EntityAttrKind=void 0,(e=t.EntityAttrKind||(t.EntityAttrKind={}))[e.Data=0]="Data",e[e.Virtual=1]="Virtual",e[e.Lookup=2]="Lookup";const o={Unknown:"Unknown",Edit:"EDIT",DateTime:"DATETIME",List:"LIST",CustomList:"CUSTOMLIST",File:"FILE"};class r{constructor(t){t instanceof Date?this.date=t:this._name=t}asTime(t){if(this.date)return this.date;l.getDateByName(this._name)}get name(){return this.name}}class n{getDateByName(t,e){return this[t]?this[t](e):void 0}Today(t){return new Date}Yesterday(t){let e=new Date;return e.setDate(e.getDate()-1),e}Tomorrow(t){let e=new Date;return e.setDate(e.getDate()+1),e}FirstDayOfMonth(t){let e=new Date;return e.setDate(1),e}LastDayOfMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,0),e}FirstDayOfNextMonth(t){let e=new Date;return e.setMonth(e.getMonth()+1,1),e}FirstDayOfPrevMonth(t){let e=new Date;return e.setMonth(e.getMonth()-1,1),e}FirstDayOfYear(t){const e=new Date;return e.setMonth(0,1),e}FirstDayOfPrevYear(t){let e=new Date;return e.setFullYear(e.getFullYear()-1,0,1),e}FirstDayOfNextYear(t){let e=new Date;return e.setFullYear(e.getFullYear()+1,0,1),e}FirstDayOfWeek(t){const e=new Date;let i=e.getDay();return i=0==i?6:i-1,e.setDate(e.getDate()-i),e}FirstDayOfPrevWeek(t){let e=new Date,i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()-i),e}FirstDayOfNextWeek(t){let e=new Date;var i=e.getDay();return i=0==i?1:8-i,e.setDate(e.getDate()+i),e}}var s,a,l=new n;function d(t){l=t}t.HttpMethod=void 0,(s=t.HttpMethod||(t.HttpMethod={})).Trace="TRACE",s.Options="OPTIONS",s.Get="GET",s.Put="PUT",s.Post="POST",s.Delete="DELETE";class c{constructor(t,e){this.xhr=t,this.method=e.method,this.url=e.url,this.headers=e.headers,this.queryParams=e.queryParams,this.data=e.data}setHeader(t,e){this.headers[t]=e}setQueryParam(t,e){this.queryParams[t]=e}getXMLHttpRequest(){return this.xhr}getResponseHeaders(){if(this.xhr.readyState==this.xhr.HEADERS_RECEIVED){const t=this.xhr.getAllResponseHeaders().trim().split(/[\r\n]+/),e={};for(const i of t){const t=i.split(": "),o=t.shift(),r=t.join(": ");e[o]=r}return e}return{}}open(){if(this.xhr.readyState!==this.xhr.UNSENT)return;let t=this.url;this.queryParams&&Object.keys(this.queryParams).length>0&&(t+=encodeURI("?"+Object.keys(this.queryParams).map((t=>t+"="+this.queryParams[t])).join("&"))),this.xhr.open(this.method,t,!0),this.xhr.setRequestHeader("X-Requested-With","XMLHttpRequest");for(const t in this.headers)this.xhr.setRequestHeader(t,this.headers[t])}abort(){this.xhr.abort()}}t.utils=void 0,function(e){function i(){return Object.values(t.DataType).filter((t=>"number"==typeof t))}function o(){return[t.DataType.Time,t.DataType.Date,t.DataType.DateTime]}function r(){return[t.DataType.String,t.DataType.Memo,t.DataType.FixedChar]}e.getAllDataTypes=i,e.getDateDataTypes=o,e.getStringDataTypes=r;const n=[t.DataType.Byte,t.DataType.Word,t.DataType.Int32,t.DataType.Int64,t.DataType.Float,t.DataType.Currency,t.DataType.Autoinc];function s(){return n}e.getNumericDataTypes=s;const a=[t.DataType.Byte,t.DataType.Word,t.DataType.Int32,t.DataType.Int64,t.DataType.Autoinc];function l(t,...e){for(let i=0;i=t.length)throw"Index out of bounds: "+e;i>=t.length&&(i=t.length-1);let o=t.splice(e,1)[0];t.splice(i,0,o)}function y(t,e){let i=t.indexOf(e);if(-1!=i)return t.splice(i,1)[0]}function x(t,e,i){t.splice(e,0,i)}function w(t,e,i=0,o){let r=t.length>>>0;var n=i>>0,s=n<0?Math.max(r+n,0):Math.min(n,r),a=void 0===o?r:o>>0;let l=a<0?Math.max(r+a,0):Math.min(a,r);for(;so&&(n=o-r-10,t+n<0&&(n=10-t)),n}function D(t){return null!==t&&("function"==typeof t||"object"==typeof t)}function T(t){return n.indexOf(t)>=0}function C(t){return a.indexOf(t)>=0}function E(t){return!isNaN(parseFloat(t))&&isFinite(t)}function A(e,i){return void 0===e||void 0===i||e==t.DataType.Unknown||i==t.DataType.Unknown||e==i||e==t.DataType.Date&&i==t.DataType.DateTime||e==t.DataType.DateTime&&i==t.DataType.Date}function S(t,e){return t[e]||t[e.toLowerCase()]||t[e.toUpperCase()]}e.assign=l,e.assignDeep=d,e.getIfDefined=h,e.IsDefinedAndNotNull=u,e.copyArrayTo=p,e.createArrayFrom=m,e.findItemById=g,e.findItemIndexById=f,e.indexOfArrayItem=b,e.moveArrayItem=k,e.removeArrayItem=y,e.insertArrayItem=x,e.fillArray=w,e.shiftToFitWindow=v,e.isObject=D,e.isNumericType=T,e.isIntType=C,e.isNumeric=E,e.areCompatibleDataTypes=A,e.isPropSet=S;const I=4,R="0123456789abcdefghijklmnopqrstuvwxyz",M=0x8d60e562e627800;function P(t){t||(t="easy");let e=t.length>I?L(t,I):t;e&&e.length>0&&(e+="-");var i=R[N(0,R.length)]+R[N(0,R.length)]+R[N(0,R.length)],o=N(0,1e4);return e+i+O(F()-M-o)}function O(t,e=36){var i="",o=t;do{i=R[o%e]+i,o=Math.floor(o/=e)}while(o>0);return i}function L(t,e){let i=t.split("-"),o=1,r=e;i.lengthe){let o=i/e,r="";r+=t[0];let n,s=o;for(let e=1;es&&(r+=n,s+=o);return r}return t}function N(t,e){return Math.floor(Math.random()*(e-t))+t}function F(){return 621355968e9+1e4*(new Date).getTime()}function B(t){const e=parseInt(t);if(isNaN(e))throw`"${t}" is not a valid number`;return e}function H(t,e){return new Date(e,t+1,0).getDate()}function _(t,e){if(!t||0==t.length)return new Date;const i=t.replace(/[^a-zA-Z0-9_]/g,"-"),o=e.replace(/[^a-zA-Z0-9_]/g,"-").split("-"),r=i.split("-"),n=o.indexOf("MM"),s=o.indexOf("dd"),a=o.indexOf("yyyy"),l=o.indexOf("HH"),d=o.indexOf("mm"),c=o.indexOf("ss"),h=new Date;try{const t=a>-1&&a-1&&n11)throw"";const i=s>-1&&sH(e,t))throw"";const o=l>-1&&l23)throw"";const u=d>-1&&d59)throw"";const p=c>-1&&c59)throw"";return new Date(t,e,i,o,u,p)}catch(e){throw`${t} is not a valid date.`}}function Y(t){const e=t.split(":");try{const t=e.length>0?B(e[0]):0;if(t>23)throw"";const i=e.length>1?B(e[1]):0;if(i>59)throw"";const o=e.length>1?B(e[1]):0;if(o>59)throw"";return new Date(0,0,0,t,i,o)}catch(e){throw`${t} is not a valid time.`}}e.generateId=P,e.strToDateTime=_,e.strToTime=Y}(t.utils||(t.utils={}));class h{constructor(t,e){this.request=t,this.promise=e}getPromise(){return this.promise}getRequest(){return this.request}then(t,e){return this.promise.then(t,e)}catch(t){return this.promise.catch(t)}finally(t){return this.promise.finally(t)}}class u extends Error{constructor(t,e){super(e),this.status=t}}class p{get responseBody(){return this._responseBody}constructor(){this.defaultHeaders={},this.customPayload=void 0}get(e,i){return this.send(t.HttpMethod.Get,e,null,i)}post(e,i,o){return this.send(t.HttpMethod.Post,e,i,o)}put(e,i,o){return this.send(t.HttpMethod.Put,e,i,o)}delete(e,i,o){return this.send(t.HttpMethod.Delete,e,i,o)}send(e,i,o,r){const n=(r=r||{}).dataType||"json",s=r.contentType||"form-data"!==n?"application/json":null;o&&"form-data"!=n&&this.customPayload&&(o.data=t.utils.assignDeep(o.data||{},this.customPayload));const a=new("onload"in new XMLHttpRequest?XMLHttpRequest:window.XDomainRequest),l={method:e,url:i,headers:Object.assign(Object.assign({},this.defaultHeaders),r.headers||{}),queryParams:r.queryParams||{},data:o};s&&(l.headers["Content-Type"]=s);const d=new c(a,l);this.beforeEachRequest&&(console.warn("HttpClient: 'beforeEachRequest' is deprecated and will be removed in future updates.\n Use 'onRequest' instead"),this.beforeEachRequest(d)),this.onRequest&&this.onRequest(d);const m=d.data&&"string"!=typeof d.data&&"json"==n?JSON.stringify(d.data):d.data;return d.open(),new h(d,new Promise(((t,e)=>{r.responseType&&(a.responseType=r.responseType),a.onerror=t=>{e(new u(a.status,a.responseText))},a.onreadystatechange=()=>{if(4!=a.readyState)return;const o=a.getResponseHeader("Content-Type")||"",r=a.status;if(0===r)e(new u(r,"Network error or the request was aborted"));else if(r>=200&&r<400){const e="arraybuffer"===a.responseType||"blob"===a.responseType?a.response:0==o.indexOf("application/json")?JSON.parse(a.responseText):a.responseText;this._responseBody=e,this.onResponse&&this.onResponse(a),t(e)}else("arraybuffer"===a.responseType||"blob"===a.responseType?p.decodeArrayBuffer(a.response):Promise.resolve(a.responseText)).then((t=>{const n=0==o.indexOf("application/json")?JSON.parse(t):t;this._responseBody=n;const s=n.message||(404==r?`No such endpoint: ${i}`:n);e(new u(r,s))}))},a.send(m)})))}static decodeArrayBuffer(t){var e=new FileReader;return new Promise((i=>{e.onloadend=function(){e.readyState==FileReader.DONE&&i(e.result)},e.readAsText(new Blob([t]))}))}}t.i18n=void 0,function(e){let i,o={shortDateFormat:"MM/dd/yyyy",longDateFormat:"dd MMM, yyyy",editDateFormat:"MM/dd/yyyy",shortTimeFormat:"HH:mm",editTimeFormat:"HH:mm",longTimeFormat:"HH:mm:ss",shortMonthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],longMonthNames:["January","February","March","April","May","June","July","August","September","October","November","December"],shortWeekDayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],longWeekDayNames:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],decimalSeparator:".",currency:"USD"},r={localeId:"en-US",englishName:"English",displayName:"English",texts:{ButtonOK:"OK",ButtonCancel:"Cancel",Yes:"Yes",No:"No",True:"True",False:"False"},settings:o},n={"en-US":r};const s=[];function a(t){for(const e of s)e(t)}function l(t){s.push(t)}function d(){let t=[];for(let e in n)t.push({locale:e,englishName:n[e].englishName,displayName:n[e].displayName});return t.sort(((t,e)=>t.englishName>e.englishName?1:t.englishName===e.englishName?0:-1))}function c(){return i.localeId}function h(t){console.warn("This method is deprecated. Use setCurrentLocale instead"),u(t)}function u(e){const o=n[e];o?t.utils.assignDeep(i,o):(i.englishName=e,i.displayName=e,i.texts=t.utils.assignDeep({},r.texts)),i.localeId=e}function p(...t){let e=i.texts,o="";if(t&&t.length){const i=t.length;for(let r=0;r0&&t<13)return e.shortMonthNames[t-1];throw"Wrong month number: "+t}function b(t){const e=m();if(t>0&&t<13)return e.longMonthNames[t-1];throw"Wrong month number: "+t}function k(t){const e=m();if(t>0&&t<8)return e.shortWeekDayNames.length>=t?e.shortWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t}function y(t){const e=m();if(t>0&&t<8)return e.longWeekDayNames.length>=t?e.longWeekDayNames[t-1]:t.toString();throw"Wrong month number: "+t}function x(e){i.settings||(i.settings=t.utils.assignDeep({},o)),i.settings=t.utils.assignDeep(i.settings,e)}function w(e){"object"==typeof e?(a({localeId:i.localeId,texts:e}),t.utils.assignDeep(i.texts,e)):console.error("Wrong parameter type in updateLocaleTexts function call.The first parameter (localeId) is not necessary. Use updateLocaleTexts(texts) instead")}function v(e){for(let i in n){let o=n[i];o.texts=t.utils.assignDeep({},e,o.texts)}i.texts=t.utils.assignDeep({},e,i.texts)}function D(e,o){a(o);let s=i;e&&(o.localeId||(o.localeId=e),s=n[e],s||(s=t.utils.assignDeep({},r),n[e]=s)),t.utils.assignDeep(s,o)}function T(t,e){D(t,e)}function C(t){const e=new Date(2020,5,7,19,34,56,88),o={year:"numeric",month:"numeric",day:"numeric"},r={hour:"numeric",minute:"numeric",second:"numeric"},n=e.toLocaleDateString(t,o),s=e.toLocaleTimeString(t,r);let a=n.replace("07","dd").replace("7","d").replace("06","MM").replace("6","M").replace("2020","yyyy").replace("20","yy"),l=s.replace("19","HH").replace("07","hh").replace("7","h").replace("34","mm").replace("56","ss").replace("PM","tt");i.settings||(i.settings={}),x({shortDateFormat:a,shortTimeFormat:l})}function E(){C("object"==typeof navigator?navigator.language:void 0)}function A(){i||(i=t.utils.assignDeep({},r),E())}e.addMapper=l,e.getLocales=d,e.getCurrentLocale=c,e.setLocale=h,e.setCurrentLocale=u,e.getText=p,e.getLocaleSettings=m,e.getOneLocaleSetting=g,e.getShortMonthName=f,e.getLongMonthName=b,e.getShortWeekDayName=k,e.getLongWeekDayName=y,e.updateLocaleSettings=x,e.updateLocaleTexts=w,e.updateDefaultTexts=v,e.updateLocaleInfo=D,e.addLocale=T,e.resetLocales=A;const S=/\[([^\]]+)]|y{2,4}|M{1,4}|d{1,2}|H{1,2}|h{1,2}|m{2}|s{2}|t{2}/g;function I(t,i){const o=t.getFullYear().toString(),r=t.getMonth()+1,n=t.getDate(),s=t.getHours(),a=t.getMinutes(),l=t.getSeconds(),d=s%12||12,c=s>11,h={yyyy:o,yy:o.substring(o.length-2),MMMM:e.getLongMonthName(r),MMM:e.getShortMonthName(r),MM:r<10?"0"+r:r.toString(),M:r.toString(),dd:n<10?"0"+n:n.toString(),d:n.toString(),HH:s<10?"0"+s:s.toString(),H:s.toString(),hh:d<10?"0"+d:d.toString(),h:d.toString(),tt:c?"PM":"AM",mm:a<10?"0"+a:a.toString(),ss:l<10?"0"+l:l.toString()};return i.replace(S,((t,e)=>e||h[t]))}function R(e,i,o){return o?"d"==o?o=M(t.DataType.Date):"D"==o?o=P(t.DataType.Date):"f"==o?o=M(t.DataType.DateTime):"F"==o&&(o=P(t.DataType.DateTime)):o=M(i),I(e,o)}function M(e){const i=m();let o;switch(e){case t.DataType.Date:o=i.shortDateFormat;break;case t.DataType.Time:o=i.shortTimeFormat;break;default:o=i.shortDateFormat+" "+i.shortTimeFormat}return o}function P(e){const i=m();let o;switch(e){case t.DataType.Date:o=i.longDateFormat;break;case t.DataType.Time:o=i.longTimeFormat;break;default:o=i.longDateFormat+" "+i.longTimeFormat}return o}function O(t,e,i){if(e&&e.length>0){const i=e.charAt(0).toUpperCase();if("S"===i)return N(t,e.slice(1));if(["D","F","C"].indexOf(i)>=0){const i=c();return t.toLocaleString(i,B(e))}return F(Math.trunc(t),e)}const o=m();return i=i||o.decimalSeparator,t.toString().replace(".",i)}function L(t,i){if(i&&i.length>0&&"S"===i.charAt(0).toUpperCase()){const o=i.slice(1).split("|");if(o.length>1){const i=o[t?1:0];return e.getText(i)||i}}return`${t}`}e.dateTimeToStr=I,e.dateTimeToStrEx=R,e.numberToStr=O,e.booleanToStr=L;const z={};function N(t,i){if(!z[i]){const t=i.split("|").filter((t=>t.length>0)).map((t=>t.split("=")));if(z[i]={},t.length>0)if(t[0].length>1)for(const e of t)z[i][Number.parseInt(e[1])]=e[0];else t.forEach(((t,e)=>{z[i][e]=t[0]}))}const o=z[i];if(void 0!==o[t]){const i=o[t];return e.getText(i)||i}return t.toString()}function F(t,e){let i=t.toString(),o="",r=i.length-1;for(let t=e.length-1;t>=0;t--){const n=e.charAt(t);"#"===n||"0"===n?r>=0?(o+=i.charAt(r),r--):"0"===n&&(o+=0):o+=n}return o.split("").reverse().join("")}function B(t){const e=m(),i=t[0].toUpperCase(),o=t.length>1?Number.parseInt(t.slice(1)):"D"==i?1:2;switch(i){case"D":return{style:"decimal",useGrouping:!1,minimumIntegerDigits:o};case"C":return{style:"currency",currency:e.currency,minimumFractionDigits:o};default:return{style:"decimal",minimumFractionDigits:o,maximumFractionDigits:o}}}}(t.i18n||(t.i18n={}));class m{constructor(t){this.isEditable=!0,this.name="",this.caption="",this.description="",this.parent=t,this.attributes=new Array,this.subEntities=new Array}loadFromData(t,e){if(e){if(this.id=e.id,this.name=e.name,this.captionPlural=e.namePlur,this.caption=e.name,this.description=e.desc,void 0!==e.ied&&(this.isEditable=e.ied),this.subEntities=new Array,e.ents)for(let i=0;i{if(e&&e(r,i),r.attributes){let e=r.attributes.length;for(let o=0;ot.isPrimaryKey))}}class g{constructor(e){this.id="",this.caption="{Unrecognized attribute}",this.dataType=t.DataType.String,this.size=0,this.isPrimaryKey=!1,this.isForeignKey=!1,this.isNullable=!0,this.showOnView=!0,this.isEditable=!0,this.showOnCreate=!0,this.showOnEdit=!0,this.showInLookup=!1,this.lookupAttr="",this.expr="",this.entity=e,this.kind=t.EntityAttrKind.Data}loadFromData(e,i){if(i){this.id=i.id,this.description=i.desc,this.caption=i.cptn,this.dataType=i.dtype,this.isPrimaryKey=i.ipk,this.isForeignKey=i.ifk,this.size=i.size,this.lookupAttr=i.lattr,this.lookupEntity=i.lent,this.dataAttr=i.dattr,this.lookupDataAttr=i.ldattr;const o=t.utils.getDateDataTypes().indexOf(this.dataType);this.defaultValue=i.defVal&&o?new Date(i.defVal):i.defVal,this.isNullable=t.utils.getIfDefined(i.nul,this.isNullable),this.isEditable=t.utils.getIfDefined(i.ied,this.isEditable),this.showOnView=t.utils.getIfDefined(i.ivis||i.sov,this.showOnView),this.showOnCreate=t.utils.getIfDefined(i.soc,this.showOnCreate),this.showOnEdit=t.utils.getIfDefined(i.soe,this.showOnEdit),this.showInLookup=t.utils.getIfDefined(i.sil,this.showInLookup),this.kind=i.kind,this.displayFormat=i.dfmt,i.udata&&(this.userData=i.udata),i.edtr&&(this.defaultEditor=e.getEditorById(i.edtr)||e.createValueEditor())}}}class f{constructor(){this.id="",this.tag=o.Unknown,this.resType=t.DataType.Unknown,this.defValue=""}loadFromData(t){t&&(this.id=t.id,this.tag=t.tag,this.defValue=t.defval,this.resType=t.rtype,this.accept=t.accept,this.multiline=t.multiline,t.subType&&(this.resType=t.subType),t.name&&(this.name=t.name),t.values&&(this.values=t.values))}getValueText(t){let e="";if(!this.values)return e;if(Array.isArray(t))for(let i of this.values)t.indexOf(i.id)>=0&&(e+=i.text+",");else for(let i of this.values)i.id===t&&(e+=i.text+",");return e&&(e=e.substring(0,e.length-1)),e}}class b{constructor(){this.mainEntity=null,this.id="__none",this.name="Empty model",this.rootEntity=this.createEntity(),this.displayFormats=new Map}getMainEntity(){return this.mainEntity}createEntity(t){return new m(t)}createEntityAttr(t){return new g(t)}createValueEditor(){return new f}loadFromJSON(t){let e=JSON.parse(t);this.loadFromData(e)}loadFromData(e){if(this.id=e.id,this.name=e.name,this.version=e.vers,this.editors=new Array,e.editors)for(let t=0;tt.isdef))[0]:null}setData(t){"string"==typeof t?this.loadFromJSON(t):this.loadFromData(t)}isEmpty(){return 0===this.rootEntity.subEntities.length&&0===this.rootEntity.attributes.length}getId(){return this.id}getName(){return this.name}getRootEntity(){return this.rootEntity}getEditorById(t){for(let e of this.editors)if(e.id===t)return e;return null}getAttributeById(t){let e=this.getEntityAttrById(this.getRootEntity(),t);return e||null}checkAttrProperty(t,e){let i=this.getAttributeById(t);if(i){if(void 0===i[e])throw"No such property: "+e;return!!i[e]||!!i.lookupAttr&&(t=i.lookupAttr,i=this.getAttributeById(t),i&&i[e])}return!1}getEntityAttrById(t,e){let i,o;if(t.attributes){let o=t.attributes.length;for(i=0;i0&&r.push(e)}}let s=null;if(e.attributes){let n=e.attributes.length;for(let a=0;a0&&n.push(e)}}let l=null;if(e.attributes){let i=e.attributes.length;for(let n=0;nt.text.toLowerCase()==e.text.toLowerCase()?0:t.text.toLowerCase()>e.text.toLowerCase()?1:-1;return i.sortEntities&&(n.sort(c),s.sort(c)),d=i.attrPlacement&&0!=i.attrPlacement?s.concat(n):n.concat(s),2==i.attrPlacement&&d.sort(c),i.includeRootData?(r=t.i18n.getText("Entities",e.name),r||(r=e.caption),{id:e.name,text:r,items:d}):d}clear(){this.rootEntity=this.createEntity(),this.editors=[],this.version=""}addDefaultValueEditors(){let e;e=this.addOrUpdateValueEditor("_DTE",o.Edit,t.DataType.String),e.defValue="",this.addOrUpdateValueEditor("_DPDE",o.DateTime,t.DataType.DateTime),this.addOrUpdateValueEditor("_DPTE",o.DateTime,t.DataType.DateTime)}addOrUpdateValueEditor(e,i,o){let r=t.utils.findItemById(this.editors,e);return r||(r=this.createValueEditor(),r.id=e,this.editors.push(r)),r.tag=i,r.resType=o,r}getEntitiesTree(t,e){return this.listByEntity(this.getRootEntity(),t,e)}getEntitiesTreeWithFilter(t){return this.listByEntityWithFilter(this.getRootEntity(),t)}getFullEntityPathByAttr(t,e){return e=e||" ",this.getEntityPathByAttr(this.getRootEntity(),t,e,!0)}getEntityPathByAttr(e,i,o,r){if(!e)return"";o=o||" ";let n="";if(e.caption&&!r){let i=t.i18n.getText("Entities",e.caption);n=i||e.caption}if(e.attributes){let t=e.attributes.length;for(let o=0;o(t=t.concat(e.columns),Object.assign(Object.assign({},e),{columns:Array.from(t),aggregates:Array.from(this.aggregates)}))))}getInternalGroups(){return this.groups}lastGroup(){const t=this.getGroups();return t[t.length-1]}getAggregates(){return this.aggregates}hasAggregates(){return this.aggregates.length>0}hasGroups(){return this.groups.length>0}hasGrandTotals(){return this.useGrandTotals}hasRecordCount(){return this.useRecordCount}isEmpty(){return!(this.hasAggregates()||this.hasGroups()||this.hasAggregates()||this.hasRecordCount())}drop(){console.warn('"drop()" method is obsolete. Use "clear()" instead'),this.clear()}clear(){return this.groups=[],this.aggregates=[],this.useGrandTotals=!1,this.useRecordCount=!1,this.caseSensitiveGroups=!1,this}hasColumnsInUse(t){for(const e of this.groups)if(e.columns.filter((e=>t.indexOf(e)>=0)).length>0)return!0;for(const e of this.aggregates)if(t.indexOf(e.colId)>=0)return!0;return!1}needAggrCalculation(){return(this.hasAggregates()||this.hasRecordCount())&&(this.hasGrandTotals()||this.hasGroups())}saveToData(){return{groups:Array.from(this.groups),ugt:this.useGrandTotals,urc:this.useRecordCount,csg:this.caseSensitiveGroups,aggregates:Array.from(this.aggregates)}}loadFromData(t){t&&(void 0!==t.ugt&&(this.useGrandTotals=t.ugt),void 0!==t.urc&&(this.useRecordCount=t.urc),void 0!==t.csg&&(this.caseSensitiveGroups=t.csg),t.groups&&(this.groups=Array.from(t.groups)),t.aggregates&&(this.aggregates=Array.from(t.aggregates)))}buildGroupKey(t,e){const i=!this.caseSensitiveGroups;let o={};if(t)for(const r of t.columns){let t=e.getValue(r);i&&"string"==typeof t&&(t=t.toLowerCase()),o[r]=t}return o}strictCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():t===e}caseInsensitiveCompare(t,e){return t instanceof Date?t.getTime()===e.getTime():("string"==typeof t?t.toLowerCase():t)===("string"==typeof e?e.toLowerCase():e)}}t.ColumnAlignment=void 0,(a=t.ColumnAlignment||(t.ColumnAlignment={}))[a.None=0]="None",a[a.Left=1]="Left",a[a.Center=2]="Center",a[a.Right=3]="Right";class y{constructor(e){if(!e)throw Error("Options are required");if(!e.id)throw Error("Field Id is required");if(!e.label)throw Error("Label is required");this.id=e.id,this.type=t.utils.getIfDefined(e.type,t.DataType.String),this.label=e.label,this.originAttrId=e.originAttrId,this.isAggr=e.isAggr||!1,this.displayFormat=e.dfmt,this.groupFooterColumnTemplate=e.gfct,this.style=e.style||{},this.description=e.description,this.calculatedWidth=0}}class x{constructor(){this.items=[],this.mapper={},this._dateColumnIdx=[]}get count(){return this.items.length}add(e){let i;i=e instanceof y?e:new y(e);const o=this.items.length;return this.items.push(i),this.mapper[i.id]=o,[t.DataType.Date,t.DataType.DateTime,t.DataType.Time].indexOf(i.type)>=0&&this._dateColumnIdx.push(o),o}updateDateColumnIdx(){this._dateColumnIdx=this.getItems().filter((e=>[t.DataType.Date,t.DataType.DateTime,t.DataType.Time].indexOf(e.type)>=0)).map(((t,e)=>e))}put(t,e){t>=0&&t=0&&o!=i&&(t.utils.moveArrayItem(this.items,o,i),this.updateDateColumnIdx())}get(t){return t>=0&&t=0&&this._dateColumnIdx.splice(i,1),delete this.mapper[e.id]}clear(){this.items=[],this._dateColumnIdx=[],this.mapper={}}}class w{constructor(t,e){this.columns=t,this.values=e}toArray(){return Array.from(this.values)}size(){return this.values.length}getValue(t){let e;if("string"==typeof t){if(e=this.columns.getIndex(t),void 0===e)throw new RangeError(`No column with id '${t}'`)}else e=t;if(e>=this.values.length)throw new RangeError("Out of range: "+e);return this.values[e]}setValue(t,e){let i;if("string"==typeof t){if(i=this.columns.getIndex(t),void 0===i)throw new RangeError(`No column with id '${t}'`)}else i=t;if(i>=this.values.length)throw new RangeError("Out of range: "+i);this.values[i]=e}}class v{constructor(t){if(this._chunkSize=1e3,this._elasticChunks=!1,this.cachedRows=[],this.total=0,this.loader=null,this.needTotal=!0,this.isInMemory=!1,t=t||{},this._chunkSize=t.chunkSize||this._chunkSize,this._elasticChunks=t.elasticChunks||this._elasticChunks,this.loader=t.loader,void 0!==t.inMemory&&(this.isInMemory=t.inMemory),this.isInMemory&&(this.needTotal=!1),this._columns=new x,this.onUpdate=t.onUpdate,t.columns)for(const e of t.columns)this._columns.add(e);if(t.rows)for(const e of t.rows){const t=this.createRow(e);this.addRow(t)}this.needTotal=!this._elasticChunks}get columns(){return this._columns}get chunkSize(){return this._chunkSize}set chunkSize(t){this._chunkSize=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}get elasticChunks(){return this._elasticChunks}set elasticChunks(t){this._elasticChunks=t,this.total=0,this.needTotal=!this.elasticChunks,this.cachedRows=[]}getRows(t){let e=0,i=this._chunkSize;t&&("page"in t?(e=t.pageSize*(t.page-1),i=t.pageSize):(e=t.offset,i=t.limit));let o=e+i;if(!this.needTotal&&!this.elasticChunks){if(e>=this.total)return Promise.resolve([]);o>this.total&&(o=this.total)}if(this.isInMemory&&o>this.cachedRows.length&&(o=this.cachedRows.length),o<=this.cachedRows.length)return Promise.resolve(this.cachedRows.slice(e,o));if(!this.loader)throw`Loader is not defined. Can't get the rows from ${e} to ${o}`;const r=this.needTotal;this.needTotal&&(this.needTotal=!1);let n=this.cachedRows.length,s=o-n;return s(r&&(this.total=t.total),Array.prototype.push.apply(this.cachedRows,t.table.getCachedRows()),o>this.cachedRows.length&&(o=this.cachedRows.length),this.elasticChunks&&t.table.getCachedCount()t.length>0?t[0]:null))}getTotal(){return this.total}setTotal(t){this.total=t,this.needTotal=!1}getCachedCount(){return this.cachedRows.length}clear(){this.columns.clear(),this.cachedRows=[],this.total=0,this.needTotal=!this._elasticChunks,this.fireUpdated()}createRow(t){const e=this._columns.getDateColumnIndexes(),i=new Array(this._columns.count),o=t instanceof w?e=>t.getValue(e):e=>t[e];return t&&this.columns.getItems().forEach((t=>{const r=o(t.id),n=this.columns.getIndex(t.id);i[n]=e.indexOf(n)>=0?this.mapDate(r,t.type):r})),new w(this._columns,i)}mapDate(e,i){if(e){let o=new Date(e);return isNaN(o.getTime())&&i==t.DataType.Time&&(o=t.utils.strToTime(e)),o}return null}addRow(t){let e;if(Array.isArray(t)){let i=t;const o=this._columns.getDateColumnIndexes();if(o.length>0)for(const t of o)i[t]&&(i[t]=this.mapDate(i[t],this._columns.get(t).type));e=new w(this._columns,i)}else e=this.createRow(t);this.cachedRows.push(e);const i=this.getCachedCount();return i>this.total&&(this.total=i),e}getCachedRows(){return this.cachedRows}totalIsKnown(){return this.elasticChunks?this.getCachedCount()===this.total:!this.needTotal}fireUpdated(){this.onUpdate&&this.onUpdate(this)}}class D{static newGuid(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,(function(t){var e=16*Math.random()|0;return("x"==t?e:3&e|8).toString(16)}))}}class T{constructor(t){this.silentMode=0,this.events=new Array,this.source=t}subscribe(t,e){let i=this.getEventRecByType(t);const o={id:D.newGuid(),callback:e};return i?i.eventCallbacks.push(o):(i={type:t,eventCallbacks:new Array(o)},this.events.push(i)),o.id}unsubscribe(t,e){let i=this.getEventRecByType(t);if(i){let t=-1;for(t=0;t=0&&i.eventCallbacks.splice(t,1)}}fire(t,e,i=0,o=!1){if(this.silentMode&&!o)return;let r=this.getEventRecByType(t);if(r){const o={type:t,source:this.source,data:e};let n=()=>{for(let t of r.eventCallbacks)t.callback(o)};i>0?setTimeout(n,i):n()}}enterSilentMode(){this.silentMode++}exitSilentMode(){this.silentMode&&this.silentMode--}isSilent(){return this.silentMode>0}getEventRecByType(t){for(let e of this.events)if(e.type==t)return e;return null}}function C(t,e){return t.repeat(e)}function E(t){return t.split("").reverse().join("")}function A(t,e){return t&&t.lastIndexOf(e)==t.length-e.length}function S(t,e){let i=t;return null!=i&&i.length>0?("/"!=i.charAt(i.length-1)&&(i+="/"),i+=e):i=e,i}t.liquid=void 0,function(t){function e(t,e){let i=t;if(e)for(let t in e){const o=new RegExp("{{"+t+"}}","g");i=i.replace(o,e[t])}return i}t.renderLiquidTemplate=e}(t.liquid||(t.liquid={})),t.i18n.resetLocales(),"function"!=typeof Object.values&&(Object.values=function(t){return Object.keys(t).map((e=>t[e]))}),"function"!=typeof Math.trunc&&(Math.trunc=function(t){return isNaN(t)?NaN:t>0?Math.floor(t):Math.ceil(t)}),t.AggregationSettings=k,t.DataColumn=y,t.DataColumnList=x,t.DataRow=w,t.EasyDataTable=v,t.EasyGuid=D,t.EditorTag=o,t.EventEmitter=T,t.HttpClient=p,t.HttpRequest=c,t.HttpResponseError=u,t.MetaData=b,t.MetaEntity=m,t.MetaEntityAttr=g,t.SpecialDatesResolver=n,t.TimeValue=r,t.ValueEditor=f,t.combinePath=S,t.registerSpecialDatesResolver=d,t.repeatString=C,t.reverseString=E,t.strEndsWith=A}(e)}(0,r.exports)),r.exports}!function(t,e){ -/*! - * EasyData.JS UI - * Copyright 2020 - 2024 Korzh.com - * Licensed under MIT - */ -!function(t,e){function i(t,e){for(t.appendChild(e);t.firstChild!==e;)e.appendChild(t.firstChild)}function o(t,e,i){let o=document.createElement(e),r=i||{};return r.cssClass&&(o.className=r.cssClass),t.appendChild(o),o}function r(t,e){t.className=t.className?t.className+" "+e:e}function n(t){t.style.display="none"}function s(t,e){e||(e=""),t.style.display=e}function a(t,e,i){i||(i={}),i.display||(i.display=""),i.duration||(i.duration=200),n(t),s(e,i.display),i.complete&&i.complete()}function l(t){return"none"!=t.style.display&&0!=t.offsetWidth&&0!=t.offsetHeight}function d(t){var e;return"function"==typeof Event?e=new Event(t):(e=document.createEvent("Event")).initEvent(t,!0,!0),e}function c(){return{width:Math.max(document.documentElement.clientWidth||0,window.innerWidth||0),height:Math.max(document.documentElement.clientHeight||0,window.innerHeight||0)}}function h(){return t.browserUtils.IsIE()?g():{width:Math.max(document.documentElement.clientWidth,document.body.clientWidth||0),height:Math.max(document.documentElement.clientHeight,document.body.clientHeight||0)}}function u(){const t=document.body,e=document.documentElement;return{top:window.pageYOffset||e.scrollTop||t.scrollTop,left:window.pageXOffset||e.scrollLeft||t.scrollLeft}}function p(t){let e={x:0,y:0};if(null!==t){const i=m(t);e={x:i.left,y:i.top}}return e}function m(t){const e={top:0,right:0,bottom:0,left:0,width:0,height:0};let i;try{i=t.getBoundingClientRect()}catch(t){i=e}const o=document.body,r=document.documentElement,n=u(),s=n.top,a=n.left,l=r.clientTop||o.clientTop||0,d=r.clientLeft||o.clientLeft||0,c=i.top+s-l,h=i.left+a-d;return{top:Math.round(c),left:Math.round(h)}}function g(){return{width:window.innerWidth,height:window.innerHeight}}function f(t,e,i){t.style.removeProperty("display");let o=window.getComputedStyle(t).display;"none"===o&&(o="block"),t.style.display=o;let r=t.offsetHeight;t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",t.offsetHeight,t.style.boxSizing="border-box",t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.height=r+"px",t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),window.setTimeout((()=>{t.style.removeProperty("height"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)}function b(t,e,i){t.style.transitionProperty="height, margin, padding",t.style.transitionDuration=e+"ms",t.style.boxSizing="border-box",t.style.height=t.offsetHeight+"px",t.offsetHeight,t.style.overflow="hidden",t.style.height="0px",t.style.paddingTop="0px",t.style.paddingBottom="0px",t.style.marginTop="0px",t.style.marginBottom="0px",window.setTimeout((()=>{t.style.display="none",t.style.removeProperty("height"),t.style.removeProperty("padding-top"),t.style.removeProperty("padding-bottom"),t.style.removeProperty("margin-top"),t.style.removeProperty("margin-bottom"),t.style.removeProperty("overflow"),t.style.removeProperty("transition-duration"),t.style.removeProperty("transition-property"),t.style.removeProperty("box-sizing"),i&&i()}),e)}t.browserUtils=void 0,function(t){let e=null,i=null;function o(){if(null===i){const t=navigator.userAgent;i=t.indexOf("MSIE ")>-1||t.indexOf("Trident/")>-1}return i}function r(){const t=window.navigator.userAgent;return!o()&&t.includes("Edge/")}function n(){if(null===e){const t=navigator.userAgent;e=t.toLowerCase().indexOf("firefox")>-1}return e}t.IsIE=o,t.IsEdge=r,t.IsFirefox=n;let s,a,l=!1,d=()=>{const t=c();l=window.matchMedia("only screen and (max-width: 840px)").matches||window.matchMedia("only screen and (max-height: 420px)").matches;const e=c();e!==t&&a&&a(e)};function c(){return void 0!==s?s:l}function h(t){const e=c();s=t;const i=c();i!==e&&a&&a(i)}function u(t){a=t}function p(){return c()?"k-mobile":null}d(),window.addEventListener("resize",(()=>d())),t.isMobileMode=c,t.setIsMobileMode=h,t.onMobileModeChanged=u,t.getMobileCssClass=p}(t.browserUtils||(t.browserUtils={}));const k="eqjs",y="eqjs-mobile";function x(t,e){const i={9:"[0-9]",a:"[a-z]"},o=e.split(""),r=e=>{if(8===e.keyCode||46===e.keyCode){e.preventDefault();let r=[],n=t.selectionStart;if(0==n)return;let s=n,a=!0;for(let e=o.length-1;e>=0;e--){const l=o[e];if(i[l]){let o=new RegExp(i[l],"i").test(t.value.charAt(e));o&&e!=n-1&&(a=!1),e===n-1&&s--,r.push(o&&e!=n-1?t.value.charAt(e):"_")}else e===s-1&&s--,n-1===e&&n--,r.push(l)}t.value=a?"":r.reverse().join(""),t.selectionStart=t.selectionEnd=s<0?0:s;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}},n=e=>{const r=String.fromCharCode(e.charCode);if(r){e.preventDefault();let n=[],s=t.selectionStart,a=s;o.forEach(((e,o)=>{if(i[e]){const l=o!=s?t.value.charAt(o):r;let d=new RegExp(i[e],"i").test(l);n.push(d?l:"_"),d&&s===o&&a++}else n.push(e),a===o&&a++,s===o&&s++})),t.value=n.join(""),t.selectionStart=t.selectionEnd=a;const l=document.createEvent("Event");l.initEvent("input",!0,!0),t.dispatchEvent(l)}},s=e=>{if("focus"===e.type&&""!==t.value)return;let r=[],n=t.selectionStart;o.forEach(((e,o)=>{if(i[e]){let n=new RegExp(i[e],"i").test(t.value.charAt(o));r.push(n?t.value.charAt(o):"_")}else r.push(e)})),t.value=r.join(""),t.selectionStart=t.selectionEnd=n};t.addEventListener("keydown",r),t.addEventListener("keypress",n),t.addEventListener("input",s),t.addEventListener("focus",s)}class w{constructor(t,e){this.element="string"==typeof t?document.createElement(t):t,e&&this.element.parentElement!==e&&e.appendChild(this.element)}addChild(t,e){const i=C(t,this.element);return e&&e(i),this}addChildElement(t){return t&&this.element.appendChild(t),this}attr(t,e){return this.element.setAttribute(t,e),this}id(t){return this.attr("id",t)}focus(){return this.element.focus(),this}title(t){return this.attr("title",t)}data(t,e=null){return null===e?(this.element.removeAttribute("data-"+t),this):this.attr("data-"+t,e)}show(){return this.removeStyle("display")}hide(t=!0){return t?this.setStyle("display","none"):this}visible(t=!0){return t?this.setStyle("visibility","visible"):this.setStyle("visibility","hidden")}isVisible(){return!!(this.element.offsetWidth||this.element.offsetHeight||this.element.getClientRects().length)}addClass(t,...e){if(t){const i=[...t.trim().split(" "),...e];for(let t=0;t{if(i.hasAttribute(this.DRAG_DISABLED_ATTR))return;t.preventDefault(),t instanceof MouseEvent&&t.stopPropagation();const e=new I(t);(Math.abs(e.x-this.mouseDownPosition.x)>this.delta||Math.abs(e.y-this.mouseDownPosition.y)>this.delta)&&n(t)},r=t=>{this.mouseMoveDragListener(t)},n=n=>{n.preventDefault(),n.stopPropagation(),i.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),this.finishedSuccessfully=!1,e.beforeDragStart&&e.beforeDragStart(),this.dragImage=C("div").setStyle("position","absolute").setStyle("z-index","65530").toDOM(),document.body.appendChild(this.dragImage),this.dragImage.appendChild(i.cloneNode(!0)),e.renderer&&e.renderer(this.dragImage),this.dropEffect=t.DropEffect.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect),this.draggableItem={element:i,scope:e.scope,data:e.data},this.updateDragItemPosition(n);const s=new S(this.draggableItem,this.dragImage,n);s.dropEffect=this.dropEffect,e.onDragStart&&e.onDragStart(s),this.dropEffect!==s.dropEffect&&(this.dropEffect=s.dropEffect,this.updateImageClass(this.dropEffect)),document.addEventListener("mousemove",r,!0),document.addEventListener("touchmove",r,!0)},s=t=>{E&&t instanceof TouchEvent&&t.preventDefault(),this.mouseDownPosition=new I(t),i.addEventListener("mousemove",o),i.addEventListener("touchmove",o),document.addEventListener("mouseup",a),document.addEventListener("touchend",a)};i.addEventListener("mousedown",s),i.addEventListener("touchstart",s);const a=t=>{this.mouseDownPosition=null,i.removeEventListener("mousemove",o),i.removeEventListener("touchmove",o),document.removeEventListener("mousemove",r,!0),document.removeEventListener("touchmove",r,!0),this.draggableItem&&l(t)},l=i=>{try{if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],o={element:e.element,scopes:e.scopes,data:e.data},r=new S(this.draggableItem,this.dragImage,i);try{o.scopes.indexOf(this.draggableItem.scope)>=0&&this.dropEffect===t.DropEffect.Allow&&(this.finishedSuccessfully=!0,e.onDrop&&e.onDrop(o,r))}finally{e.onDragLeave&&e.onDragLeave(o,r)}}}finally{try{const t=new S(this.draggableItem,this.dragImage,i);t.data.finishedSuccessfully=this.finishedSuccessfully,e.onDragEnd&&e.onDragEnd(t)}finally{this.draggableItem=null,this.dragImage&&this.dragImage.parentElement&&this.dragImage.parentElement.removeChild(this.dragImage),this.dragImage=null,this.finishedSuccessfully=!1,document.removeEventListener("mouseup",a),document.removeEventListener("touchend",a)}}}}registerDropContainer(t){if(!t.element)throw Error("Element in drop container is null or undefined");this.containerDescriptors.push(t)}removeDropContainer(t){const i=this.containerDescriptors.filter((e=>e===t||e.element==t));if(i)for(const t of i)e.utils.removeArrayItem(this.containerDescriptors,t)}mouseMoveDragListener(t){if(t instanceof MouseEvent&&t.preventDefault(),t.stopPropagation(),this.updateDragItemPosition(t),-1==this.containerDescriptorIndex){for(let e=0;e=0&&this.dragEnterEvent(t)}else{const e=this.containerDescriptors[this.containerDescriptorIndex];this.detectDragLeaveEvent(e.element,t)&&(this.dragLeaveEvent(t),this.containerDescriptorIndex=-1)}if(this.containerDescriptorIndex>=0){const e=this.containerDescriptors[this.containerDescriptorIndex],i={element:e.element,scopes:e.scopes,data:e.data};if(i.scopes.indexOf(this.draggableItem.scope)>=0){const o=new S(this.draggableItem,this.dragImage,t);o.dropEffect=this.dropEffect,e.onDragOver&&e.onDragOver(i,o)}}}updateCusror(e){switch(e){case t.DropEffect.Allow:this.setCursorStyle(this.dragImage,"grabbing");break;case t.DropEffect.Forbid:this.setCursorStyle(this.dragImage,"no-drop");break;default:this.setCursorStyle(this.dragImage,"grabbing")}}updateImageClass(e){switch(this.dragImage.classList.remove(`${this.classPrefix}-allow`),this.dragImage.classList.remove(`${this.classPrefix}-forbid`),this.dragImage.classList.remove(`${this.classPrefix}-none`),e){case t.DropEffect.Allow:this.dragImage.classList.add(`${this.classPrefix}-allow`);break;case t.DropEffect.None:this.dragImage.classList.add(`${this.classPrefix}-none`);break;case t.DropEffect.Forbid:this.dragImage.classList.add(`${this.classPrefix}-forbid`);break;default:this.dragImage.classList.add(`${this.classPrefix}-none`)}}setCursorStyle(t,e){if(t){t.style.cursor=e;for(let i=0;i=0){const r=new S(this.draggableItem,this.dragImage,e);r.dropEffect=t.DropEffect.Allow,i.onDragEnter&&i.onDragEnter(o,r),this.dropEffect=r.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}else this.dropEffect!==t.DropEffect.Forbid&&(this.dropEffect=t.DropEffect.None,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect))}dragLeaveEvent(e){const i=this.containerDescriptors[this.containerDescriptorIndex],o={element:i.element,scopes:i.scopes,data:i.data};if(o.scopes.indexOf(this.draggableItem.scope)>=0){const r=new S(this.draggableItem,this.dragImage,e);r.dropEffect=t.DropEffect.None,i.onDragLeave&&i.onDragLeave(o,r),this.dropEffect=r.dropEffect,this.updateCusror(this.dropEffect),this.updateImageClass(this.dropEffect)}}detectDragEnterEvent(t,e){const i=p(t),o=new I(e);return!(o.yi.y+t.offsetHeight||o.xi.x+t.offsetWidth)}detectDragLeaveEvent(t,e){const i=p(t),o=new I(e);return!(o.y>i.y&&o.yi.x&&o.x=0&&t=0&&o!=i&&e.utils.moveArrayItem(this.items,o,i)}get(t){return t>=0&&t{const n=e?e.toString().replace(/\n/g,"↵ "):"";o.innerText=n,o.title=n,i.align==t.GridColumnAlign.NONE&&o.classList.add(`${H}-cell-value-align-left`)},G=(i,o,r,n)=>{let s=(i||"").toString();"number"==typeof i&&(s=o.dataColumn&&o.dataColumn.displayFormat&&_.test(o.dataColumn.displayFormat)?o.dataColumn.displayFormat.replace(_,((t,o)=>e.i18n.numberToStr(i,o))):i.toLocaleString()),r.innerText=s,r.title=s,o.align==t.GridColumnAlign.NONE&&r.classList.add(`${H}-cell-value-align-right`)},U=(i,o,r,n)=>{const s="[object Date]"===Object.prototype.toString.call(i);let a=(i||"").toString();if(s)if(o.dataColumn&&o.dataColumn.displayFormat&&_.test(o.dataColumn.displayFormat))a=o.dataColumn.displayFormat.replace(_,((t,r)=>e.i18n.dateTimeToStrEx(i,o.type,r)));else{const t=e.i18n.getCurrentLocale(),r={hour:"numeric",minute:"numeric",second:"numeric"};switch(o.type){case e.DataType.Date:a=i.toLocaleDateString(t);break;case e.DataType.Time:a=i.toLocaleTimeString(t,r);break;case e.DataType.DateTime:a=`${i.toLocaleDateString(t)} ${i.toLocaleTimeString(t,r)}`}}r.innerText=a,r.title=a,o.align==t.GridColumnAlign.NONE&&r.classList.add(`${H}-cell-value-align-right`)},j=(t,i,o,r)=>{if(i.dataColumn&&i.dataColumn.displayFormat&&_.test(i.dataColumn.displayFormat)){const r=i.dataColumn.displayFormat.replace(_,((i,o)=>e.i18n.booleanToStr(t,o)));return V(r,i,o)}o.classList.add(`${H}-cell-value-bool`),o.classList.add(`${H}-${t?"cell-value-true":"cell-value-false"}`)};class W{constructor(e){this.renderers={},this.defaultRenderers={},this.registerRenderer("StringDefault",V),this.setDefaultRenderer(t.CellRendererType.STRING,V),this.registerRenderer("NumberDefault",G),this.setDefaultRenderer(t.CellRendererType.NUMBER,G),this.registerRenderer("DateTimeDefault",U),this.setDefaultRenderer(t.CellRendererType.DATETIME,U),this.registerRenderer("BoolDefault",j),this.setDefaultRenderer(t.CellRendererType.BOOL,j)}getDefaultRenderer(e){const i=this.getCellType(e);return this.defaultRenderers[t.CellRendererType[i]]}getDefaultRendererByType(e){return this.defaultRenderers[t.CellRendererType[e]]}setDefaultRenderer(e,i){i&&(this.defaultRenderers[t.CellRendererType[e]]=i)}getRenderer(t){return this.renderers[t]}registerRenderer(t,e){this.renderers[t]=e}getCellType(i){switch(i){case e.DataType.Autoinc:case e.DataType.Byte:case e.DataType.Word:case e.DataType.Currency:case e.DataType.Float:case e.DataType.Int32:case e.DataType.Int64:return t.CellRendererType.NUMBER;case e.DataType.Date:case e.DataType.DateTime:case e.DataType.Time:return t.CellRendererType.DATETIME;case e.DataType.Bool:return t.CellRendererType.BOOL;default:return t.CellRendererType.STRING}}}const K=36;class q{constructor(i){if(this.cssPrefix="keg",this.pagination={page:1,pageSize:30,total:0},this.paginationOptions={maxButtonCount:10,useBootstrap:!1},this.defaultDataGridOptions={slot:null,dataTable:null,fixHeightOnFirstRender:!1,syncGridColumns:!0,useRowNumeration:!0,allowDragDrop:!1,aggregates:{settings:null,calculator:null},paging:{enabled:!0,pageSize:30,pageSizeItems:[20,30,50,100,200]},columnWidths:{autoResize:t.AutoResizeColumns.Always,stringColumns:{min:100,max:500,default:250},numberColumns:{min:60,default:120},boolColumns:{min:50,default:80},dateColumns:{min:80,default:200},otherColumns:{min:100,max:500,default:250},rowNumColumn:{min:40,default:60}},showPlusButton:!1,viewportRowsCount:null,showActiveRow:!0},this.rowsOnPagePromise=null,this.containerInitialHeight=0,this.firstRender=!0,this.prevRowTotals=null,this.landingIndex=-1,this.landingSlot=C("div").addClass(`${this.cssPrefix}-col-landing-slot`).addChildElement(C("div").toDOM()).toDOM(),this._activeRowIndex=-1,i&&i.paging&&(i.paging=e.utils.assign(this.defaultDataGridOptions.paging,i.paging)),this.options=this.mergeOptions(i),this.processColumnWidthsOptions(),!this.options.slot)throw Error('"slot" parameter is required to initialize EasyDataGrid');if(!this.options.dataTable)throw Error('"dataTable" parameter is required to initialize EasyDataGrid');this.dataTable=i.dataTable,this.eventEmitter=new e.EventEmitter(this),this.cellRendererStore=new W(i),this.columns=new B(this.dataTable.columns,this),this.setSlot(this.options.slot),this.init(this.options)}mergeOptions(t){const i=e.utils.assignDeep({},this.defaultDataGridOptions.columnWidths,t.columnWidths),o=e.utils.assignDeep({},this.defaultDataGridOptions.paging,t.paging),r=e.utils.assign({},this.defaultDataGridOptions,t);return r.columnWidths=i,r.paging=o,r}processColumnWidthsOptions(){const t=this.options.columnWidths;if(!t)return;e.utils.getStringDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.stringColumns),t[e])})),e.utils.getNumericDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.numberColumns),t[e])})),t[e.DataType.Bool]=Object.assign(Object.assign({},t.boolColumns),t[e.DataType.Bool]),e.utils.getDateDataTypes().forEach((e=>{t[e]=Object.assign(Object.assign({},t.dateColumns),t[e])}));const i=[...e.utils.getStringDataTypes(),...e.utils.getNumericDataTypes(),...e.utils.getDateDataTypes(),e.DataType.Bool];e.utils.getAllDataTypes().forEach((e=>{e in i||(t[e]=Object.assign(Object.assign({},t.otherColumns),t[e]))})),t[e.DataType.Unknown]=t.otherColumns}setSlot(t){if("string"==typeof t){if(t.length)if("#"===t[0])this.slot=document.getElementById(t.substring(1));else{if("."!==t[0])throw Error("Unrecognized slot parameter (Must be id, class or HTMLElement): "+t);{const e=document.getElementsByClassName(t.substring(1));e.length&&(this.slot=e[0])}}}else this.slot=t}init(i){i.onInit&&this.addEventListener("init",i.onInit),i.onRowClick&&this.addEventListener("rowClick",i.onRowClick),i.onRowDbClick&&this.addEventListener("rowDbClick",i.onRowDbClick),i.onPlusButtonClick&&this.addEventListener("plusButtonClick",i.onPlusButtonClick),i.onColumnChanged&&this.addEventListener("columnChanged",i.onColumnChanged),i.onColumnDeleted&&this.addEventListener("columnDeleted",i.onColumnDeleted),i.onColumnMoved&&this.addEventListener("columnMoved",i.onColumnMoved),i.onPageChanged&&this.addEventListener("pageChanged",i.onPageChanged),i.onActiveRowChanged&&this.addEventListener("activeRowChanged",i.onActiveRowChanged),this.addEventListener("pageChanged",(t=>this.activeRowIndex=-1)),e.utils.assignDeep(this.paginationOptions,i.pagination),this.pagination.pageSize=this.options.paging.pageSize||this.pagination.pageSize,this.options.allowDragDrop&&M.registerDropContainer({element:this.slot,scopes:["gridColumnMove"],onDragEnter:(t,e)=>{this.slot.classList.add(`${k}-drophover`),this.showLandingSlot(e.pageX,e.pageY)},onDragOver:(t,e)=>{this.showLandingSlot(e.pageX,e.pageY)},onDragLeave:(e,i)=>{i.dropEffect=t.DropEffect.Forbid,this.slot.classList.remove(`${k}-drophover`),this.hideLandingSlot()},onDrop:(t,e)=>{this.dataTable.columns.move(e.data.column,this.landingIndex),this.refresh(),this.fireEvent({type:"columnMoved",columnId:e.data.column.id,newIndex:this.landingIndex})}}),this.refresh(),this.fireEvent("init")}fireEvent(t){"string"==typeof t?this.eventEmitter.fire(t):this.eventEmitter.fire(t.type,t)}setData(t){this.dataTable=t,this.clear(),this.refresh()}getData(){return this.dataTable}getColumns(){return this.columns}destroy(){this.slot.innerHTML=""}refresh(){this.clearDOM(),this.render()}clearDOM(){this.slot.innerHTML=""}clear(){this.pagination.page=1,this.clearDOM()}render(){if(!this.hasData()&&!this.options.showPlusButton)return;this.containerInitialHeight=this.slot.clientHeight,this.rootDiv=document.createElement("div"),this.rootDiv.style.width="100%",this.rootDiv.classList.add(`${this.cssPrefix}-root`),this.columns.sync(this.dataTable.columns,this.options.useRowNumeration),this.renderHeader(),this.rootDiv.appendChild(this.headerDiv),this.renderBody(),this.rootDiv.appendChild(this.bodyDiv),this.renderFooter(),this.rootDiv.appendChild(this.footerDiv);let e=document.createElement("div");e.classList.add(`${this.cssPrefix}-container`),e.appendChild(this.rootDiv),this.slot.appendChild(e);const i=this.options.columnWidths.autoResize!==t.AutoResizeColumns.Never;this.rowsOnPagePromise?this.rowsOnPagePromise.then((()=>this.updateHeight())).then((()=>{this.firstRender=!1,this.rowsOnPagePromise=null})):setTimeout((()=>{this.updateHeight().then((()=>{this.firstRender=!1,i&&this.resizeColumns()}))}),100)}updateHeight(){return new Promise((t=>{if(this.options.viewportRowsCount){const e=this.bodyCellContainerDiv.firstElementChild;let i=(e?e.offsetHeight:K)*this.options.viewportRowsCount;return C(this.bodyViewportDiv).setStyle("height",`${i}px`),void setTimeout((()=>{const e=this.bodyViewportDiv.offsetHeight-this.bodyViewportDiv.clientHeight;i+=e,C(this.bodyViewportDiv).setStyle("height",`${i}px`),t()}),100)}this.containerInitialHeight,t()})).then((()=>{this.options.fixHeightOnFirstRender&&this.firstRender&&(this.slot.style.height=`${this.slot.offsetHeight}px`)}))}getContainerWidth(){return this.columns.getItems().filter((t=>t.isVisible)).map((t=>t.width)).reduce(((t,e)=>t+e))}renderHeader(){this.headerDiv=C("div").addClass(`${this.cssPrefix}-header`).toDOM(),this.headerViewportDiv=C("div",this.headerDiv).addClass(`${this.cssPrefix}-header-viewport`).toDOM(),this.headerCellContainerDiv=C("div",this.headerViewportDiv).addClass(`${this.cssPrefix}-header-cell-container`).toDOM(),this.headerRowDiv=C("div",this.headerCellContainerDiv).addClass(`${this.cssPrefix}-header-row`).toDOM(),this.columns.getItems().forEach(((t,e)=>{if(!t.isVisible)return;let i=this.renderColumnHeader(t,e);this.headerRowDiv.appendChild(i),t.isRowNum&&C(i).addChildElement(this.renderHeaderButtons())}));const t=this.getContainerWidth();C(this.headerCellContainerDiv).setStyle("width",`${t}px`)}hasData(){return this.dataTable.columns.count>0}renderColumnHeader(e,i){let o=C("div").addClass(`${this.cssPrefix}-header-cell`).data("col-idx",`${i}`).setStyle("width",`${e.width}px`);e.dataColumn&&o.data("col-id",`${e.dataColumn.id}`);let r=o.toDOM();return C("div",r).addClass(`${this.cssPrefix}-header-cell-resize`),e.isRowNum||C("div",r).addClass(`${this.cssPrefix}-header-cell-label`).text(e.label),e.description&&C("div",r).addClass("question-mark").title(e.description),this.options.allowDragDrop&&M.registerDraggableItem({element:r,scope:"gridColumnMove",data:{column:e},renderer:t=>{t.innerHTML="";const i=document.createElement("div");i.innerText=e.label,t.classList.add(`${this.cssPrefix}-sortable-helper`),t.appendChild(i)},onDragStart:e=>{e.dropEffect=t.DropEffect.Allow}}),r}renderBody(){this.bodyDiv=C("div").addClass(`${this.cssPrefix}-body`).toDOM(),this.bodyViewportDiv=C("div",this.bodyDiv).addClass(`${this.cssPrefix}-body-viewport`).attr("tabIndex","0").toDOM(),this.bodyCellContainerDiv=C("div",this.bodyViewportDiv).addClass(`${this.cssPrefix}-cell-container`).toDOM();const i=this.canShowAggregates();this.dataTable&&(this.showProgress(),this.rowsOnPagePromise=this.getRowsToRender().then((o=>{this.pagination.total=this.dataTable.getTotal(),this.hideProgress(),this.bodyCellContainerDiv.innerHTML="",this.prevRowTotals=null;let r=0;if(o.length){const t=i?this.options.aggregates.settings.getGroups():[];r=o.length{if(i&&this.updateTotalsState(t,e),o(console.error(t),0)))),this.bodyViewportDiv.addEventListener("scroll",(t=>{C(this.headerViewportDiv).setStyle("margin-left",`-${this.bodyViewportDiv.scrollLeft}px`)})),this.bodyViewportDiv.addEventListener("keydown",this.onViewportKeydown.bind(this))}isLastPage(){return this.dataTable.elasticChunks?this.dataTable.totalIsKnown()&&this.pagination.page*this.pagination.pageSize>=this.pagination.total:this.pagination.page*this.pagination.pageSize>=this.pagination.total}canShowAggregates(){if(!this.options||!this.options.aggregates||!this.options.aggregates.settings)return!1;const t=this.options.aggregates.settings;return(t.hasAggregates()||t.hasRecordCount())&&(t.hasGroups()||t.hasGrandTotals())}updateTotalsState(t,i,o=!1){const r=this.options.aggregates.settings;if(this.prevRowTotals&&r.hasGroups()){let o=-1;for(let e=1;e<=t.length;e++){const n=t[e-1];for(const t of n.columns)if(!r.compareValues(this.prevRowTotals.getValue(t),i.getValue(t))){o=e;break}if(-1!==o)break}if(-1!==o)for(let i=t.length;i>=o;i--){const t=new e.DataRow(this.dataTable.columns,this.prevRowTotals.toArray()),o=this.renderTotalsRow(i,t);this.bodyCellContainerDiv.appendChild(o)}}if(o&&r.hasGrandTotals()&&r.hasAggregates()){const t=this.renderTotalsRow(0,i);this.bodyCellContainerDiv.appendChild(t)}this.prevRowTotals=i}applyGroupColumnTemplate(t,e,i){let o=t.replace(/{{\s*GroupValue\s*}}/g,e?`${e}`:"-");return o=o.replace(/{{\s*GroupCount\s*}}/g,i?`${i}`:"-"),o}renderTotalsRow(t,e){const i=this.options.aggregates.settings,o=t>0?i.getGroups()[t-1]:{columns:[],aggregates:i.getAggregates()},r=C("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-totals`).addClass(`${this.cssPrefix}-totals-lv${t}`).data("totals-level",`${t}`).attr("tabindex","-1").toDOM();this.columns.getItems().forEach(((t,i)=>{if(!t.isVisible)return;let n="";const s=t.isRowNum?-1:this.dataTable.columns.getIndex(t.dataColumn.id);!t.isRowNum&&t.dataColumn&&o.columns.indexOf(t.dataColumn.id)>=0&&(n=e.getValue(s)),s==this.dataTable.columns.count-1&&(n=". . . . . ."),r.appendChild(this.renderCell(t,i,n,r))}));const n=this.options.aggregates.calculator.getAggrContainer(),s=i.getAggregates().map((t=>t.colId)),a=i.buildGroupKey(o,e);return n.getAggregateData(t,a).then((n=>{for(const t of s)e.setValue(t,n[t]);r.innerHTML="",this.columns.getItems().forEach(((a,l)=>{if(!a.isVisible)return;let d="";const c=a.isRowNum?-1:this.dataTable.columns.getIndex(a.dataColumn.id);if(!a.isRowNum){let h=!1;if(a.dataColumn){const i=o.columns.indexOf(a.dataColumn.id),r=s.indexOf(a.dataColumn.id);h=t>0?i==o.columns.length-1:0==c,(i>=0||r>=0)&&(d=e.getValue(c))}let u="";t>0&&(u=a.dataColumn.groupFooterColumnTemplate,!u&&i.hasRecordCount()&&h&&(u="{{GroupValue}} ({{GroupCount}})")),u&&(d=this.renderCell(a,l,d,r).firstChild.innerHTML,d=this.applyGroupColumnTemplate(u,d,n[i.COUNT_FIELD_NAME]))}const h=this.renderCell(a,l,d,r);r.appendChild(h)}))})).catch((t=>console.error(t))),r}onViewportKeydown(t){if(this.options.showActiveRow){const e=this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row`).length;let i;switch(t.key){case"ArrowLeft":case"ArrowRight":break;case"ArrowUp":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?e-1:this.activeRowIndex-1,this.activeRowIndex=i>=0?i:0;break;case"ArrowDown":t.preventDefault(),i=this.activeRowIndex<0||this.activeRowIndex>=e?0:this.activeRowIndex+1,this.activeRowIndex=i0&&r<=n&&t.top>0&&t.bottomn&&(this.bodyViewportDiv.scrollTop=this.bodyViewportDiv.scrollTop+r-n),t=e.getBoundingClientRect(),t.top<0?document.documentElement.scrollTop=document.documentElement.scrollTop+t.top:t.bottom>s&&(document.documentElement.scrollTop=document.documentElement.scrollTop+t.bottom-s)}}getRowsToRender(){return!1===this.options.paging.enabled?Promise.resolve(this.dataTable.getCachedRows()):this.dataTable.getRows({offset:(this.pagination.page-1)*this.pagination.pageSize,limit:this.pagination.pageSize+1}).catch((t=>(console.error(t),[])))}renderFooter(){this.footerDiv=C("div").addClass(`${this.cssPrefix}-footer`).toDOM(),this.rowsOnPagePromise&&this.rowsOnPagePromise.then((t=>{this.footerDiv.innerHTML="",this.footerPaginateDiv=this.renderPageNavigator(),this.footerDiv.appendChild(this.footerPaginateDiv);const e=this.renderPageInfoBlock(t);this.footerDiv.appendChild(e)}))}renderPageInfoBlock(t){const i=C("div").addClass(`${this.cssPrefix}-page-info`).toDOM();if(this.dataTable.getTotal()>0){const o=t?(this.pagination.page-1)*this.pagination.pageSize+1:0,r=t?o+t-1:0;let n=this.dataTable.getTotal().toString();this.dataTable.elasticChunks&&this.dataTable.getCachedCount()!==this.dataTable.getTotal()&&(n="?"),i.innerHTML=e.i18n.getText("GridPageInfo").replace("{FirstPageRecordNum}",`${o.toString()}`).replace("{LastPageRecordNum}",`${r.toString()}`).replace("{Total}",`${n}`)}return i}showProgress(){}hideProgress(){}getLocalIndexByGlobal(t){return this.pagination?t%this.pagination.pageSize:t}getGlobalIndexByLocal(t){return this.pagination?(this.pagination.page-1)*this.pagination.pageSize+t:t}renderRow(t,e){let i=this.getGlobalIndexByLocal(e),o=C("div").addClass(`${this.cssPrefix}-row`).addClass(`${this.cssPrefix}-row-${e%2==1?"odd":"even"}`).data("row-idx",`${i}`).attr("tabindex","-1").on("click",(i=>{this.activeRowIndex=e,this.fireEvent({type:"rowClick",row:t,rowIndex:e,sourceEvent:i})})).on("dblclick",(i=>{this.fireEvent({type:"rowDbClick",row:t,rowIndex:e,sourceEvent:i})}));0==e&&o.addClass(`${this.cssPrefix}-row-first`);let r=o.toDOM();return this.options.showActiveRow&&e==this.activeRowIndex&&o.addClass(`${this.cssPrefix}-row-active`),this.columns.getItems().forEach(((e,o)=>{if(!e.isVisible)return;const n=e.isRowNum?-1:this.dataTable.columns.getIndex(e.dataColumn.id);let s=e.isRowNum?i+1:t.getValue(n);r.appendChild(this.renderCell(e,o,s,r))})),r}renderCell(e,i,o,r){const n=C("div").addClass(`${this.cssPrefix}-cell`).data("col-idx",`${i}`).attr("tabindex","-1").setStyle("width",`${e.width}px`);e.align==t.GridColumnAlign.LEFT?n.addClass(`${this.cssPrefix}-cell-align-left`):e.align==t.GridColumnAlign.RIGHT?n.addClass(`${this.cssPrefix}-cell-align-right`):e.align==t.GridColumnAlign.CENTER&&n.addClass(`${this.cssPrefix}-cell-align-center`);const s=n.toDOM(),a=s.appendChild(C("div").addClass(`${this.cssPrefix}-cell-value`).toDOM()),l=this.getCellRenderer(e);return l&&l(o,e,a,r),s}getCellRenderer(e){let i;return i=e.isRowNum?this.cellRendererStore.getDefaultRendererByType(t.CellRendererType.NUMBER):this.cellRendererStore.getDefaultRenderer(e.type),this.options&&this.options.onGetCellRenderer&&(i=this.options.onGetCellRenderer(e,i)||i),i}setPage(t){this.pagination.page=t,this.fireEvent({type:"pageChanged",page:t}),this.refresh(),this.bodyViewportDiv.focus()}renderPageNavigator(){let t=document.createElement("div");t.className=`${this.cssPrefix}-pagination-wrapper`;const i=this.dataTable.getTotal();if(this.options.paging&&this.options.paging.enabled&&i>0){const i=this.paginationOptions.useBootstrap?"":`${this.cssPrefix}-`,o=t=>{const e=t.target;if(e.hasAttribute("data-page")){const t=parseInt(e.getAttribute("data-page"));this.setPage(t)}},r=(t,e,r,n,s)=>{const a=document.createElement("li");if(a.className=`${i}page-item`,!n){s&&(a.className+=" active");const r=document.createElement("a");return r.setAttribute("href","javascript:void(0)"),r.innerHTML=e||t.toString(),r.setAttribute("data-page",`${t}`),r.className=`${i}page-link`,r.addEventListener("click",o),a.appendChild(r),a}let l=document.createElement("span");if(l.setAttribute("aria-hidden","true"),l.className=`${i}page-link`,r)a.className+=" disabled";else{if(this.paginationOptions.useBootstrap)l=document.createElement("a"),l.setAttribute("href","javascript:void(0)"),l.setAttribute("data-page",`${t}`);else{let e=document.createElement("a");e.setAttribute("href","javascript:void(0)"),e.setAttribute("data-page",`${t}`),l=e}l.className=`${i}page-link`,l.addEventListener("click",o)}return l.innerHTML=e,a.appendChild(l),a};if(this.dataTable.elasticChunks){const e=this.pagination.page||1;let o=document.createElement("ul");o.className=`${i}pagination`;let n=r(e-1,"«",1==e,!0,!1);o.appendChild(n),n=r(e+1,"»",this.isLastPage(),!0,!1),o.appendChild(n),t.appendChild(o)}else if(this.pagination.total>this.pagination.pageSize){const e=this.pagination.page||1,o=Math.ceil(this.pagination.total/this.pagination.pageSize)||1,n=this.paginationOptions.maxButtonCount||10,s=e-1;let a=s-s%n+1,l=a+n-1;l>o&&(l=o);let d=document.createElement("ul");d.className=`${i}pagination`;let c=r(a-1,"«",1==a,!0,!1);d.appendChild(c);for(let t=a;t<=l;t++)c=r(t,t.toString(),!1,!1,t==e),d.appendChild(c);c=r(l+1,"»",l==o,!0,!1),d.appendChild(c),t.appendChild(d)}if(this.options.paging.allowPageSizeChange){const i=t=>{const e=parseInt(t.target.value);this.pagination.pageSize=e,this.pagination.page=1,this.refresh()},o=document.createElement("div");o.className=`${this.cssPrefix}-page-sizes`;const r=document.createElement("div");r.className=`kfrm-select ${this.cssPrefix}-page-sizes-select`,o.appendChild(r);const n=document.createElement("select"),s=this.options.paging.pageSizeItems||[],a=new Set(s);a.add(this.options.paging.pageSize||20),Array.from(a).forEach((t=>{const e=document.createElement("option");e.value=t.toString(),e.text=t.toString(),n.appendChild(e)})),n.value=(this.pagination.pageSize||20).toString(),r.appendChild(n),n.addEventListener("change",i);const l=document.createElement("div");l.className=`${this.cssPrefix}-page-sizes-label`,o.appendChild(l);const d=document.createElement("span");d.innerText=e.i18n.getText("GridItemsPerPage"),l.appendChild(d),t.appendChild(o)}}return t}addEventListener(t,e){return this.eventEmitter.subscribe(t,(t=>e(t.data)))}removeEventListener(t,e){this.eventEmitter.unsubscribe(t,e)}renderHeaderButtons(){return this.options.showPlusButton?C("div").addClass(`${this.cssPrefix}-header-btn-plus`).title(this.options.plusButtonTitle||"Add").addChild("a",(t=>t.attr("href","javascript:void(0)").on("click",(t=>{t.preventDefault(),this.fireEvent({type:"plusButtonClick",sourceEvent:t})})))).toDOM():C("span").addText("#").toDOM()}showLandingSlot(t,e){const i=this.headerRowDiv.querySelectorAll(`[class*=${this.cssPrefix}-table-col]`),o=[];for(let t=1;t=r.x&&t<=r.x+this.landingSlot.offsetWidth)return;let n=this.landingIndex;for(let e of o){const i=p(e),o=e.offsetWidth;t>i.x&&t{this.landingSlot.parentElement&&this.landingSlot.parentElement.removeChild(this.landingSlot)}),10)}get activeRowIndex(){return this._activeRowIndex}set activeRowIndex(t){if(t!==this._activeRowIndex){const e=this._activeRowIndex;this._activeRowIndex=t,this.updateActiveRow(),this.fireEvent({type:"activeRowChanged",oldValue:e,newValue:this.activeRowIndex,rowIndex:this.getGlobalIndexByLocal(this.activeRowIndex)})}}updateActiveRow(){if(this.options.showActiveRow){this.bodyCellContainerDiv.querySelectorAll(`[class*=${this.cssPrefix}-row-active]`).forEach((t=>{t.classList.remove(`${this.cssPrefix}-row-active`)}));const t=this.getActiveRow();t&&(t.classList.add(`${this.cssPrefix}-row-active`),this.ensureRowVisibility(this.activeRowIndex))}}getActiveRow(){return this.getDataRow(this.activeRowIndex)}getDataRow(t){const e=Array.from(this.bodyCellContainerDiv.querySelectorAll(`.${this.cssPrefix}-row:not(.${this.cssPrefix}-row-totals)`));return t>=0&&t .${this.cssPrefix}-cell-value`);let c=0;if(l>0)o+=l,a.width=l,d.forEach((t=>{t.parentElement.style.width=`${l}px`})),n[s].style.width=`${l}px`;else if(0==d.length&&(n[s].style.width=null,n[s].style.whiteSpace="nowrap"),c=n[s].offsetWidth,d.length>0){d.forEach((t=>{t.parentElement.style.width=null;const e=t.parentElement.offsetWidth;e>c&&(c=e)})),c+=3;const t=a.isRowNum?this.options.columnWidths.rowNumColumn.max||500:this.options.columnWidths[a.dataColumn.type].max||2e3,i=a.isRowNum?this.options.columnWidths.rowNumColumn.min||0:this.options.columnWidths[a.dataColumn.type].min||20;c>t&&(c=t),c{t.parentElement.style.width=`${c}px`})),n[s].style.width=`${c}px`,a.dataColumn&&(a.dataColumn.calculatedWidth=c)}else o+=c;s++}o>0?(this.bodyCellContainerDiv.style.width=`${o}px`,this.headerCellContainerDiv.style.width=`${o}px`):(this.bodyCellContainerDiv.style.width=i,this.headerCellContainerDiv.style.width=i),this.bodyCellContainerDiv.style.visibility=null,this.headerRowDiv.removeAttribute("style")}}class Q{get cssPrefix(){return"kdtp-cal"}constructor(t,e){this.slot=t,this.options=e||{},this.options.yearRange||(this.options.yearRange="c-10:c+10")}setDate(t){this.currentDate=new Date(t)}getDate(){return new Date(this.currentDate)}dateChanged(t){this.options.onDateChanged&&this.options.onDateChanged(this.currentDate,t)}}class J{get cssPrefix(){return"kdtp"}constructor(t){this.calendar=null,this.timePicker=null,this.options=t,this.render()}setDateTime(t){this.currentDateTime=new Date(t),this.calendar&&this.calendar.setDate(this.currentDateTime),this.timePicker&&this.timePicker.setTime(this.currentDateTime)}getDateTime(){return new Date(this.currentDateTime)}render(){this.options.showCalendar&&(this.calendar=this.createCalendar({yearRange:this.options.yearRange,showDateTimeInput:this.options.showDateTimeInput,timePickerIsUsed:this.options.showTimePicker,oneClickDateSelection:this.options.oneClickDateSelection,onDateChanged:(t,e)=>{this.currentDateTime=t,this.timePicker&&this.timePicker.setTime(this.currentDateTime),this.options.showTimePicker&&this.dateTimeChanged(),e&&this.apply(this.currentDateTime)}}),this.calendar&&this.calendar.render()),this.options.showTimePicker&&(this.timePicker=this.createTimePicker({onTimeChanged:t=>{this.currentDateTime.setHours(t.getHours()),this.currentDateTime.setMinutes(t.getMinutes()),this.calendar&&this.calendar.setDate(this.currentDateTime),this.dateTimeChanged()}}),this.timePicker&&this.timePicker.render()),this.setDateTime(new Date)}createCalendar(t){return null}createTimePicker(t){return null}show(t){this.options.beforeShow&&this.options.beforeShow();const e=p(t||document.body);this.slot.style.top=e.y+t.clientHeight+"px",this.slot.style.left=e.x+"px"}apply(t){this.options.onApply&&this.options.onApply(t),this.destroy()}cancel(){this.options.onCancel&&this.options.onCancel(),this.destroy()}destroy(){this.slot&&this.slot.parentElement&&this.slot.parentElement.removeChild(this.slot)}dateTimeChanged(){this.options.onDateTimeChanged&&this.options.onDateTimeChanged(this.currentDateTime)}}class $ extends Q{constructor(t,i){super(t,i),this.daysOfWeek=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],this.months=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],this.calendarBody=null,this.isManualInputChanging=!1;for(let t=0;tthis.headerTextElem=t.toDOM())),C(this.slot).addChildElement(this.renderCalendarButtons()),this.calendarBody=C("div",this.slot).addClass(`${this.cssPrefix}-body`).toDOM()}getInputDateFormat(){const t=e.i18n.getLocaleSettings();return this.options.timePickerIsUsed?`${t.editDateFormat} ${t.editTimeFormat}`:t.editDateFormat}renderManualDateInput(){const t=this.getInputDateFormat(),i=C("input").attr("placeholder",t).addClass(`${this.cssPrefix}-header-input`);return i.mask(t.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99")).on("input",(o=>{i.removeClass("error");try{this.isManualInputChanging=!0;const i=e.utils.strToDateTime(this.manualInputElem.value,t);this.currentDate=i,this.jump(this.currentDate.getFullYear(),this.currentDate.getMonth()),this.dateChanged(!1)}catch(t){i.addClass("error")}finally{this.isManualInputChanging=!1}})).on("keydown",(t=>{13===t.keyCode&&(t.preventDefault(),t.stopPropagation(),this.manualInputElem.className.indexOf("error")<0&&!this.isManualInputChanging&&this.dateChanged(!0))})).on("focus",(()=>{setTimeout((()=>{this.manualInputElem.selectionStart=0,this.manualInputElem.selectionEnd=0}),50)})),this.manualInputElem=i.toDOM(),this.manualInputElem}updateDisplayedDateValue(){if(this.manualInputElem){if(!this.isManualInputChanging){const t=this.getInputDateFormat();this.manualInputElem.value=e.i18n.dateTimeToStr(this.currentDate,t),this.manualInputElem.focus()}}else if(this.headerTextElem){const t=e.i18n.getCurrentLocale();this.headerTextElem.innerText=this.currentDate.toLocaleString("en"==t?void 0:t,{year:"numeric",month:"long",day:"numeric"})}}renderCalendarButtons(){return C("nav").addClass(`${this.cssPrefix}-nav`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-prev`).on("click",(()=>{this.prev()})).addChild("span",(t=>t.html("‹"))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-selectors`).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-month`).addChild("select",(t=>{t.on("change",(()=>{this.jump(this.selectedYear,parseInt(this.selectMonthElem.value))}));for(let e=0;et.attr("value",e.toString()).text(this.months[e])));this.selectMonthElem=t.toDOM()})))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-year`).addChild("select",(t=>this.selectYearElem=t.on("change",(()=>{this.jump(parseInt(this.selectYearElem.value),this.selectedMonth)})).toDOM())))))).addChild("div",(t=>t.addClass(`${this.cssPrefix}-nav-next`).on("click",(()=>{this.next()})).addChild("span",(t=>t.html("›"))))).toDOM()}prev(){this.selectedYear=0===this.selectedMonth?this.selectedYear-1:this.selectedYear,this.selectedMonth=0===this.selectedMonth?11:this.selectedMonth-1,this.rerenderMonth()}next(){this.selectedYear=11===this.selectedMonth?this.selectedYear+1:this.selectedYear,this.selectedMonth=(this.selectedMonth+1)%12,this.rerenderMonth()}rerenderSelectYear(){const t=/c-(\d*):c\+(\d*)/g.exec(this.options.yearRange);let e=0,i=1;null!==t&&(e=parseInt(t[1]),i=parseInt(t[2])),this.selectYearElem.innerHTML="";for(let t=0;t<=e+i;t++){let i=document.createElement("option"),o=this.selectedYear-e+t;i.value=o.toString(),i.innerText=o.toString(),this.selectYearElem.appendChild(i)}}jump(t,e){this.selectedYear=t,this.selectedMonth=e,this.rerenderMonth()}rerenderMonth(){this.updateDisplayedDateValue(),this.rerenderSelectYear();let t=new Date(this.selectedYear,this.selectedMonth).getDay(),e=new Date(this.selectedYear,this.selectedMonth+1,0).getDate();this.calendarBody.innerHTML="",this.selectYearElem.value=this.selectedYear.toString(),this.selectMonthElem.value=this.selectedMonth.toString(),this.daysOfWeek.forEach(((t,e)=>{C("div",this.calendarBody).addClass(`${this.cssPrefix}-weekday`).addClass(0==e||6==e?`${this.cssPrefix}-weekend`:"").text(t)}));for(let e=0;e{this.currentDate.setFullYear(this.selectedYear),this.currentDate.setMonth(this.selectedMonth),this.currentDate.setDate(parseInt(t.target.getAttribute("data-date"))),this.dateChanged(this.options.oneClickDateSelection)}));o===i.getDate()&&this.selectedYear===i.getFullYear()&&this.selectedMonth===i.getMonth()&&e.addClass(`${this.cssPrefix}-day-current`),o===this.currentDate.getDate()&&this.selectedYear===this.currentDate.getFullYear()&&this.selectedMonth===this.currentDate.getMonth()&&e.addClass(`${this.cssPrefix}-day-selected`);const r=(t+o-1)%7;0!=r&&6!=r||e.addClass(`${this.cssPrefix}-weekend`),"function"==typeof this.options.onDrawDay&&this.options.onDrawDay.apply(e.toDOM(),[e.toDOM(),new Date(this.selectedYear,this.selectedMonth,o)])}const o=(t+e)%7,r=0==o?0:7-o;for(let t=0;tthis.timeText=t.toDOM())).toDOM();const t=C("div",this.slot).addClass(`${this.cssPrefix}-sliders`);return t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Hours").addChild("input",(t=>this.hoursInput=t.addClass(`${this.cssPrefix}-input-hours`).type("range").attr("min","0").attr("max","23").attr("step","1").on("input",(t=>{this.currentTime.setHours(this.hoursInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),t.addChild("div",(t=>t.addClass(`${this.cssPrefix}-time-row`).title("Minutes").addChild("input",(t=>this.minutesInput=t.addClass(`${this.cssPrefix}-input-minutes`).type("range").attr("min","0").attr("max","59").attr("step","1").on("input",(t=>{this.currentTime.setMinutes(this.minutesInput.valueAsNumber),this.updateDisplayedTime(),this.timeChanged()})).toDOM())))),this.slot}updateDisplayedTime(){const t=e.i18n.getCurrentLocale(),i=this.currentTime.toLocaleString("en"==t?void 0:t,{hour:"numeric",minute:"numeric"});this.timeText.innerText=i}}class tt extends J{render(){const t=C("div",document.body).addClass(`${this.cssPrefix}`).attr("tabIndex","0").setStyle("position","absolute").setStyle("top","-1000px").setStyle("left","-1000px").on("keydown",(t=>(27===t.keyCode?this.cancel():13===t.keyCode&&this.apply(this.getDateTime()),!1)));this.options.zIndex&&t.setStyle("z-index",`${this.options.zIndex}`),this.slot=t.toDOM(),super.render(),this.renderButtons(),this.globalMouseDownHandler=t=>{let e=window.event||t;return e.srcElement||e.target,!this.slot.contains(e.target)&&(document.removeEventListener("mousedown",this.globalMouseDownHandler,!0),this.cancel()),!0}}renderButtons(){const t=C("div",this.slot).addClass(`${this.cssPrefix}-buttons`).addChild("button",(t=>this.nowButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-now`).text(e.i18n.getText("ButtonNow")).on("click",(()=>(this.setDateTime(new Date),this.dateTimeChanged(),!1))).toDOM()));!this.options.showTimePicker&&this.options.oneClickDateSelection||t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-apply`).text(e.i18n.getText("ButtonApply")).on("click",(()=>(this.apply(this.getDateTime()),!1))).toDOM())),t.addChild("button",(t=>this.submitButton=t.addClass(`${this.cssPrefix}-button ${this.cssPrefix}-button-cancel`).text(e.i18n.getText("ButtonCancel")).on("click",(()=>(this.cancel(),!1))).toDOM()))}createCalendar(t){return this.calendarSlot=C("div",this.slot).addClass(`${this.cssPrefix}-cal`).toDOM(),new $(this.calendarSlot,t)}createTimePicker(t){return this.timePickerSlot=C("div",this.slot).addClass(`${this.cssPrefix}-tp`).toDOM(),new Z(this.timePickerSlot,t)}show(t){if(this.options.showDateTimeInput){this.options.beforeShow&&this.options.beforeShow();const e=p(t||document.body),i=p(t?t.parentElement||t:document.body);this.slot.style.top=i.y+"px",this.slot.style.left=e.x+"px"}else super.show(t),this.slot.focus();setTimeout((()=>{document.addEventListener("mousedown",this.globalMouseDownHandler,!0)}),1)}}var et;t.DialogFooterAlignment=void 0,(et=t.DialogFooterAlignment||(t.DialogFooterAlignment={}))[et.Left=1]="Left",et[et.Center=2]="Center",et[et.Right=3]="Right";const it="kdlg";class ot{openConfirm(t,e,i){const o={title:t,closable:!1,submitable:!0,cancelable:!0,body:`
    ${e}
    `};return i?(o.onSubmit=()=>{i(!0)},o.onCancel=()=>{i(!1)},void this.open(o)):new Promise((t=>{o.onSubmit=()=>{t(!0)},o.onCancel=()=>{t(!1)},this.open(o)}))}openPrompt(t,e,i,o){const r={title:t,submitable:!0,closable:!0,cancelable:!0,submitOnEnter:!0,body:`
    \n
    \n \n \n
    \n
    `,arrangeParents:!1,beforeOpen:()=>{const t=document.getElementById(`${it}-dialog-form-input`);i&&(t.value=i),t.focus()}},n=t=>{const e=document.getElementById(`${it}-dialog-form-input`),i=e.value;return i&&i.replace(/\s/g,"").length>0?(t(i),!0):(e.classList.add("eqjs-invalid"),!1)};return o?(r.onSubmit=()=>n(o),r.onCancel=()=>{o("")},void this.open(r)):new Promise((t=>{r.onSubmit=()=>n(t),r.onCancel=()=>{t("")},this.open(r)}))}open(t,e){const i=new rt(t,e),o=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),o&&o(t)},i.open(),this.track(i),i}createSet(t){return new st(t,this)}untrack(t){const e=ot.openDialogs.indexOf(t);e>=0&&ot.openDialogs.splice(e,1)}track(t){ot.openDialogs.push(t)}openProgress(t){const e=new nt(t),i=t.onDestroy;return t.onDestroy=t=>{this.untrack(t),i&&i(t)},e.open(),this.track(e),e}getAllDialogs(){return Array.from(ot.openDialogs)}closeAllDialogs(){for(const t of Array.from(ot.openDialogs))t.close()}}ot.openDialogs=[];class rt{constructor(i,o){this.options=i,this.submitHandler=t=>!(this.options.onSubmit&&!1===this.options.onSubmit(this,t)||(this.destroy(),0)),this.cancelHandler=()=>{this.options.onCancel&&this.options.onCancel(this),this.destroy()},this.keydownHandler=t=>13!=t.keyCode||!this.isActiveDialog()||(t.preventDefault(),t.stopPropagation(),!this.submitHandler())||(window.removeEventListener("keydown",this.keydownHandler,!1),!1),this.dialogId=e.utils.generateId("dlg"),this.data=o,this.slot=C("div",document.body).attr("tab-index","-1").data("dialog-id",this.dialogId).addClass(`${it}-modal`,"is-active").focus().addChild("div",(t=>t.addClass("kdlg-modal-background"))).addChild("div",(r=>this.windowElement=r.addClass(`${it}-modal-window`).addChild("header",(t=>{this.headerElement=t.addClass(`${it}-header`).addChild("p",(t=>t.addClass(`${it}-header-title`).addText(i.title))).toDOM(),!1!==i.closable&&t.addChild("button",(t=>t.addClass(`${it}-modal-close`).on("click",(()=>{this.cancelHandler()})).focus()))})).addChild("div",(t=>{t.addClass(`${it}-alert-container`),this.alertElement=t.toDOM()})).addChild("section",(t=>{if(this.bodyElement=t.addClass(`${it}-body`).toDOM(),"string"==typeof i.body){const r=e.liquid.renderLiquidTemplate(i.body,o);t.addHtml(r)}else t.addChildElement(i.body)})).addChild("footer",(o=>{let r=null;r=i.footerAlignment&&i.footerAlignment==t.DialogFooterAlignment.Center?"align-center":"align-right",this.footerElement=o.addClass(`${it}-footer`).toDOM(),o.addClass(r),!1!==i.submitable&&(o.addChild("button",(t=>{t.id(this.dialogId+"-btn-submit").addClass("kfrm-button","is-info").addText(i.submitButtonText||e.i18n.getText("ButtonOK")),i.recaptchaSiteKey?(t.data("sitekey",i.recaptchaSiteKey),t.addClass("g-recaptcha"),t.on("click",(t=>{grecaptcha?grecaptcha.ready((()=>{grecaptcha.execute(i.recaptchaSiteKey,{action:"submit"}).then((t=>{this.submitHandler(t)}))})):this.submitHandler()}))):t.on("click",(t=>{this.submitHandler()})),t.focus()})),!1!==i.cancelable&&o.addChild("button",(t=>t.id(this.dialogId+"-btn-cancel").addClass("kfrm-button").addText(i.cancelButtonText||e.i18n.getText("ButtonCancel")).on("click",(t=>{this.cancelHandler()})))))})).toDOM())).toDOM()}getData(){return this.data}getRootElement(){return this.slot}getSubmitButtonElement(){return document.getElementById(this.dialogId+"-btn-submit")}getCancelButtonElement(){return document.getElementById(this.dialogId+"-btn-cancel")}open(){this.options.beforeOpen&&this.options.beforeOpen(this),C(this.slot).show(),this.options.arrangeParents&&this.arrangeParents(!0);const t=this.slot.querySelector(`.${it}-modal-window`);this.options.height&&(t.style.height="string"==typeof this.options.height?this.options.height:`${this.options.height}px`),this.options.width&&(t.style.width="string"==typeof this.options.width?this.options.width:`${this.options.width}px`),this.options.submitOnEnter&&window.addEventListener("keydown",this.keydownHandler,!1),this.slot.querySelectorAll("input").forEach((t=>t.addEventListener("input",(()=>{this.clearAlert(),this.options.onInput&&this.options.onInput(this)})))),this.options.onShow&&this.options.onShow(this)}submit(){this.submitHandler()}cancel(){this.cancelHandler()}close(){this.destroy()}disableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!0))}enableButtons(){this.slot.querySelectorAll("button").forEach((t=>t.disabled=!1))}showAlert(t,e,i){let o=C("div").addClass(`${it}-alert ${e||""}`).addChild("span",(t=>t.addClass(`${it}-alert-closebtn`).text("×").on("click",(t=>{const e=t.target.parentElement;e.parentElement.removeChild(e)})))).addText(t).toDOM();!0===i&&this.clearAlert(),this.alertElement.appendChild(o)}clearAlert(){this.alertElement.innerHTML=""}destroy(){document.querySelectorAll(`[data-dialog-id="${this.dialogId}"]`).length<=0||(this.options.arrangeParents&&this.arrangeParents(!1),document.body.removeChild(this.slot),this.options.submitOnEnter&&window.removeEventListener("keydown",this.keydownHandler,!1),this.options.onDestroy&&this.options.onDestroy(this))}isActiveDialog(){const t=document.documentElement.querySelectorAll(".kdlg-modal");return t[t.length-1]===this.slot}arrangeParents(t){const e=document.documentElement.querySelectorAll(".kdlg-modal-window");for(let i=0;ii=e.text(t.content||"").toDOM())).addChild("div",(e=>{e.addClass(`${it}-progress-line`).addChild("div",(e=>{o=e.addClass("fill").toDOM(),t.determinated?e.setStyle("width","0%"):e.addClass("indeterminate")}))})).toDOM();super({title:t.title,body:r,beforeOpen:t.beforeOpen,onSubmit:t.onSubmit,width:t.width,height:t.height,submitable:!1,cancelable:!1,closable:!1,onDestroy:t.onDestroy},e),this.contentElement=i,this.progressElement=o}updateContent(t){this.contentElement.innerText=t}updateProgress(t){t=this.in01(t),this.progressElement.style.width=100*t+"%",1===t&&setTimeout((()=>{this.submit()}),500)}in01(t){return t>1?1:t<0?0:t}}class st{constructor(t,e){this.options=t,this.dialogService=e,this.currentDialog=null,this.currentIndex=0,this.options=t,this.dialogService=e}getCurrent(){return this.currentDialog}openNext(t){return this.open(this.currentIndex+1,t)}openPrev(t){return this.open(this.currentIndex-1,t)}open(t,e){if(t<0?this.currentIndex=0:t>=this.options.length?this.currentIndex=this.options.length-1:this.currentIndex=t,this.currentDialog)try{this.currentDialog.close()}catch(t){}const i=this.options[this.currentIndex];return this.currentDialog=this.dialogService.open(i,e),this.currentDialog}close(){this.currentDialog&&(this.currentDialog.close(),this.currentDialog=null)}}function at(){e.i18n.updateDefaultTexts({GridPageInfo:"{FirstPageRecordNum} - {LastPageRecordNum} of {Total} records",GridItemsPerPage:"items per page",ButtonOK:"OK",ButtonCancel:"Cancel",ButtonApply:"Apply",ButtonNow:"Now",LblTotal:"Total"})}var lt,dt;at(),t.PRE_SELECT=void 0,(dt=t.PRE_SELECT||(t.PRE_SELECT={}))[dt.THIS_WEEK=0]="THIS_WEEK",dt[dt.LAST_WEEK=1]="LAST_WEEK",dt[dt.THIS_MONTH=2]="THIS_MONTH",dt[dt.FIRST_MONTH=3]="FIRST_MONTH",dt[dt.LAST_MONTH=4]="LAST_MONTH",dt[dt.THIS_YEAR=5]="THIS_YEAR",dt[dt.QUARTER_1=6]="QUARTER_1",dt[dt.QUARTER_2=7]="QUARTER_2",dt[dt.QUARTER_3=8]="QUARTER_3",dt[dt.QUARTER_4=9]="QUARTER_4",t.JUMP_TO=void 0,(lt=t.JUMP_TO||(t.JUMP_TO={})).UNDEF="-1",lt.TODAY="1",lt.YESTERDAY="2",lt.TOMORROW="3",lt.WEEK_START="4",lt.WEEK_END="5",lt.MONTH_START="6",lt.MONTH_END="7",lt.YEAR_START="8",lt.YEAR_END="9";const ct=0;class ht extends rt{constructor(t){super({title:t.title||"Select a period",body:"",submitButtonText:t.submitButtonText||"OK",cancelButtonText:t.cancelButtonText||"Cancel",submitable:!0,closable:!0,cancelable:!0,beforeOpen:t=>{this.setupDialog()},onSubmit:e=>{"function"==typeof t.onSubmit&&t.onSubmit.apply(e,[this.result(this.from),this.result(this.to)])}}),this.yearRange=t.yearRange,this.weekStart=t.weekStart||ct,this.bodyElement.append(this.drawDialog()),this.calendar1.render(),this.calendar2.render(),this.from=this.alignDate(t.start?t.start:new Date),this.to=this.alignDate(t.finish&&this.alignDate(t.finish)>this.from?t.finish:new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+1)),this.represent()}alignDate(t){return t.setHours(0),t.setMinutes(0),t.setSeconds(0),t.setMilliseconds(0),t}drawDialog(){return C("div").addClass("tsp__container").addChild("div",(e=>{e.addClass("tsp__intervals").addChild("button",(e=>e.addClass("tsp__button").addText("This Week").on("click",(()=>{this.select(t.PRE_SELECT.THIS_WEEK)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Last Week").on("click",(()=>{this.select(t.PRE_SELECT.LAST_WEEK)})))).addChild("button",(e=>e.addClass("tsp__button").addText("This Month").on("click",(()=>{this.select(t.PRE_SELECT.THIS_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("First Month").on("click",(()=>{this.select(t.PRE_SELECT.FIRST_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Last Month").on("click",(()=>{this.select(t.PRE_SELECT.LAST_MONTH)})))).addChild("button",(e=>e.addClass("tsp__button").addText("This Year").on("click",(()=>{this.select(t.PRE_SELECT.THIS_YEAR)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 1").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_1)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 2").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_2)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 3").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_3)})))).addChild("button",(e=>e.addClass("tsp__button").addText("Quarter 4").on("click",(()=>{this.select(t.PRE_SELECT.QUARTER_4)}))))})).addChild("div",(e=>{e.addClass("tsp__form").addChild("div",(e=>{e.addClass("tsp__date").addChild("div",(e=>{e.addClass("tsp__label").addChild("label",(t=>{t.addText("Start")})).addChild("select",(e=>{e.addOption({value:t.JUMP_TO.UNDEF,title:"Jump To"}).addOption({value:t.JUMP_TO.TODAY,title:"Today"}).addOption({value:t.JUMP_TO.YESTERDAY,title:"Yesterday"}).addOption({value:t.JUMP_TO.TOMORROW,title:"Tomorrow"}).addOption({value:t.JUMP_TO.WEEK_START,title:"Week Start"}).addOption({value:t.JUMP_TO.WEEK_END,title:"Week End"}).addOption({value:t.JUMP_TO.MONTH_START,title:"Month Start"}).addOption({value:t.JUMP_TO.MONTH_END,title:"Month End"}).addOption({value:t.JUMP_TO.YEAR_START,title:"Year Start"}).addOption({value:t.JUMP_TO.YEAR_END,title:"Year End"}),e.on("change",(t=>{this.jump(1,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar1=new $(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.from=this.alignDate(t),this.calendar1.setDate(this.from),this.to{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))})).addChild("div",(e=>{e.addClass("tsp__date").addChild("div",(e=>{e.addClass("tsp__label").addChild("label",(t=>{t.addText("Finish")})).addChild("select",(e=>{e.addOption({value:t.JUMP_TO.UNDEF,title:"Jump To"}).addOption({value:t.JUMP_TO.TODAY,title:"Today"}).addOption({value:t.JUMP_TO.YESTERDAY,title:"Yesterday"}).addOption({value:t.JUMP_TO.TOMORROW,title:"Tomorrow"}).addOption({value:t.JUMP_TO.WEEK_START,title:"Week Start"}).addOption({value:t.JUMP_TO.WEEK_END,title:"Week End"}).addOption({value:t.JUMP_TO.MONTH_START,title:"Month Start"}).addOption({value:t.JUMP_TO.MONTH_END,title:"Month End"}).addOption({value:t.JUMP_TO.YEAR_START,title:"Year Start"}).addOption({value:t.JUMP_TO.YEAR_END,title:"Year End"}),e.on("change",(t=>{this.jump(2,t.target.value,t.target)}))}))})).addChild("div",(t=>{t.addClass("tsp__calendar"),this.calendar2=new $(t.toDOM(),{yearRange:this.yearRange,showDateTimeInput:!0,onDateChanged:t=>{this.alignDate(t)>=this.from?this.to=this.alignDate(t):this.calendar2.setDate(this.to),this.represent()},onDrawDay:(t,e)=>{this.alignDate(e)>=this.from&&this.alignDate(e)<=this.to?t.classList.add("day-in-range"):t.classList.remove("day-in-range")}})}))}))})).toDOM()}setupDialog(){}jump(e,i,o){let r,n=1===e?"from":"to";const s=new Date;switch(i){case t.JUMP_TO.TODAY:r=s;break;case t.JUMP_TO.YESTERDAY:r=new Date(s.getFullYear(),s.getMonth(),s.getDate()-1);break;case t.JUMP_TO.TOMORROW:r=new Date(s.getFullYear(),s.getMonth(),s.getDate()+1);break;case t.JUMP_TO.WEEK_START:r=new Date(s.setDate(s.getDate()-s.getDay()+this.weekStart));break;case t.JUMP_TO.WEEK_END:r=new Date(s.setDate(s.getDate()-s.getDay()+6+this.weekStart));break;case t.JUMP_TO.MONTH_START:r=new Date(s.getFullYear(),s.getMonth(),1);break;case t.JUMP_TO.MONTH_END:r=new Date(s.getFullYear(),s.getMonth()+1,0);break;case t.JUMP_TO.YEAR_START:r=new Date(s.getFullYear(),0,1);break;case t.JUMP_TO.YEAR_END:r=new Date(s.getFullYear(),12,0)}r=this.alignDate(r),o.value=t.JUMP_TO.UNDEF,"from"===n?(this.from=r,this.to=this.from&&(this[n]=r),this.represent()}represent(){this.calendar1.setDate(this.from),this.calendar2.setDate(this.to)}select(e){switch(e){case t.PRE_SELECT.THIS_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case t.PRE_SELECT.LAST_WEEK:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),t.getDate()-t.getDay()-7),this.to=new Date(this.from.getFullYear(),this.from.getMonth(),this.from.getDate()+6);break}case t.PRE_SELECT.THIS_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth(),1),this.to=new Date(t.getFullYear(),t.getMonth()+1,0);break}case t.PRE_SELECT.FIRST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),1,0);break}case t.PRE_SELECT.LAST_MONTH:{const t=new Date;this.from=new Date(t.getFullYear(),t.getMonth()-1,1),this.to=new Date(t.getFullYear(),t.getMonth(),0);break}case t.PRE_SELECT.THIS_YEAR:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),12,0);break}case t.PRE_SELECT.QUARTER_1:{const t=new Date;this.from=new Date(t.getFullYear(),0,1),this.to=new Date(t.getFullYear(),3,0);break}case t.PRE_SELECT.QUARTER_2:{const t=new Date;this.from=new Date(t.getFullYear(),3,1),this.to=new Date(t.getFullYear(),6,0);break}case t.PRE_SELECT.QUARTER_3:{const t=new Date;this.from=new Date(t.getFullYear(),6,1),this.to=new Date(t.getFullYear(),9,0);break}case t.PRE_SELECT.QUARTER_4:{const t=new Date;this.from=new Date(t.getFullYear(),9,1),this.to=new Date(t.getFullYear(),12,0);break}}this.represent()}result(t){const i=this.alignDate(new Date),o={Today:this.alignDate(new Date),Yesterday:this.alignDate(new Date(i.getFullYear(),i.getMonth(),i.getDate()-1)),Tomorrow:this.alignDate(new Date(i.getFullYear(),i.getMonth(),i.getDate()+1)),FirstDayOfMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth(),1)),LastDayOfMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth()+1,0)),FirstDayOfWeek:this.alignDate(new Date(i.setDate(i.getDate()-i.getDay()+this.weekStart))),FirstDayOfYear:this.alignDate(new Date(i.getFullYear(),0,1)),FirstDayOfNextWeek:this.alignDate(new Date(i.setDate(i.getDate()-i.getDay()+this.weekStart+7))),FirstDayOfNextMonth:this.alignDate(new Date(i.getFullYear(),i.getMonth()+1,1)),FirstDayOfNextYear:this.alignDate(new Date(i.getFullYear()+1,0,1))};for(let e in o)if(console.log(o[e],t),o[e].getTime()===t.getTime())return`\${{${e}}}`;return e.i18n.dateTimeToStr(t,e.i18n.getLocaleSettings().editDateFormat)}}const ut=t=>new ht(t).open(),pt=new ot;t.Calendar=Q,t.DFMT_REGEX=_,t.DateTimePicker=J,t.DefaultCalendar=$,t.DefaultDateTimePicker=tt,t.DefaultDialog=rt,t.DefaultDialogService=ot,t.DefaultDialogSet=st,t.DefaultProgressDialog=nt,t.DefaultTimePicker=Z,t.DomElementBuilder=w,t.DomInputElementBuilder=D,t.DomSelectElementBuilder=T,t.DomTextAreaElementBuilder=v,t.DragManager=R,t.EasyGrid=q,t.EqDragEvent=S,t.GridCellRendererStore=W,t.GridColumn=F,t.GridColumnList=B,t.TimePicker=X,t.TimeSpanPicker=ht,t.addCssClass=r,t.addElement=o,t.createBrowserEvent=d,t.dialogs=pt,t.domel=C,t.eqCssMobile=y,t.eqCssPrefix=k,t.eqDragManager=M,t.getDocSize=h,t.getElementAbsolutePos=p,t.getScrollPos=u,t.getViewportSize=c,t.getWinSize=g,t.hideElement=n,t.isVisible=l,t.mask=x,t.showElement=s,t.showTimeSpanPicker=ut,t.slideDown=f,t.slideUp=b,t.toggleVisibility=a,t.wrapInner=i}(e,n())}(0,o.exports);var s=o.exports,a={exports:{}};!function(t,e){ -/*! - * EasyData.JS CRUD v1.4.20 - * Copyright 2024 Korzh.com - * Licensed under MIT - */ -!function(t,e,i){class o{constructor(t,e,i,o=!1){this.loader=t,this.sourceTable=e,this.sourceId=i,this.isLookup=o,this.filterValue="",this.justServerSide=!1}getValue(){return this.filterValue}apply(t){return this.filterValue=t,this.filterValue?this.applyCore():this.clear()}clear(){return this.filterValue="",Promise.resolve(this.sourceTable)}applyCore(){if(this.sourceTable.getTotal()!=this.sourceTable.getCachedCount()||this.justServerSide){const t=[{class:"__substring",value:this.filterValue}];return this.loader.loadChunk({offset:0,limit:this.sourceTable.chunkSize,needTotal:!0,filters:t,sourceId:this.sourceId,lookup:this.isLookup}).then((i=>{const o=new e.EasyDataTable({chunkSize:this.sourceTable.chunkSize,loader:{loadChunk:e=>this.loader.loadChunk(Object.assign(Object.assign({},e),{filters:t,sourceId:this.sourceId,lookup:this.isLookup}))}});for(const t of this.sourceTable.columns.getItems())o.columns.add(t);o.setTotal(i.total);for(const t of i.table.getCachedRows())o.addRow(t);return o}))}return this.applyInMemoryFilter()}applyInMemoryFilter(){return new Promise(((t,i)=>{const o=new e.EasyDataTable({chunkSize:this.sourceTable.chunkSize,inMemory:!0});for(const t of this.sourceTable.columns.getItems())o.columns.add(t);const r=this.filterValue.split("||").map((t=>t.trim().toLowerCase())),n=this.sourceTable.columns.getItems().filter((t=>e.utils.isNumericType(t.type)||e.utils.getStringDataTypes().indexOf(t.type)>=0)),s=t=>{for(const e of n){const i=t.getValue(e.id);if(i){const t=i.toString().toLowerCase();for(const e of r)if(t.indexOf(e)>=0)return!0}}return!1};for(const t of this.sourceTable.getCachedRows())s(t)&&o.addRow(t);o.setTotal(o.getCachedCount()),t(o)}))}}const r="yyyy-MM-dd",n="HH:mm",s=t=>t==e.DataType.Date?r:t==e.DataType.Time?n:`${r}T${n}`,a=t=>{const i=e.i18n.getLocaleSettings();return t==e.DataType.Date?i.editDateFormat:t==e.DataType.Time?i.editTimeFormat:`${i.editDateFormat} ${i.editTimeFormat}`},l=t=>{const e=window.history.state;history.pushState(e,document.title,t),window.dispatchEvent(new Event("ed_set_location"))};class d{}class c extends d{constructor(){super(),this.name="DateTime"}validate(t,i){if(!e.utils.IsDefinedAndNotNull(i)||""==i)return{successed:!0};if(e.utils.getDateDataTypes().indexOf(t.dataType)>=0)try{const o=a(t.dataType);e.utils.strToDateTime(i,o)}catch(t){return{successed:!1,messages:[e.i18n.getText("DateTimeError")]}}return{successed:!0}}}class h{constructor(t){this.context=t,this.validators=[new c]}getHtml(){return this.html}setHtmlInt(t){this.html=t,this.errorsDiv=this.html.querySelector(".errors-block")}validate(){this.clearErrors();const t=Array.from(this.html.querySelectorAll("input, select"));let e=!0;for(const o of t){const t=this.context.getMetaData().getAttributeById(o.name);if("checkbox"===o.type)continue;const r=this.validateValue(t,o.value);if(!r.successed){e&&i.domel(this.errorsDiv).addChild("ul"),e=!1;for(const e of r.messages)this.errorsDiv.firstElementChild.innerHTML+=`
  • ${t.caption}: ${e}
  • `}this.markInputValid(o,r.successed)}return e}getData(){return new Promise(((t,e)=>{const i=[],o=Array.from(this.html.querySelectorAll("input, select, textarea"));let r={};for(const t of o){const e=t.name.substring(t.name.lastIndexOf(".")+1),o=this.context.getMetaData().getAttributeById(t.name);"checkbox"===t.type?r[e]=t.checked:"file"===t.type?i.push(this.fileToBase64(t.files[0]).then((t=>r[e]=t))):r[e]=this.mapValue(o.dataType,t.value)}Promise.all(i).then((()=>t(r))).catch((t=>e(t)))}))}fileToBase64(t){return new Promise(((e,i)=>{const o=new FileReader;o.readAsDataURL(t),o.onload=()=>{const t=o.result.toString();e(t.substring(t.indexOf(",")+1))},o.onerror=t=>i(t)}))}useValidator(...t){this.useValidators(t)}useValidators(t){this.validators=this.validators.concat(t)}mapValue(t,i){if(e.utils.getDateDataTypes().indexOf(t)>=0){if(t!==e.DataType.Time&&i&&i.length){const o=a(t),r=s(t),n=e.utils.strToDateTime(i,o);return e.i18n.dateTimeToStr(n,r)}return i&&i.length?i:null}return e.utils.isIntType(t)?parseInt(i):e.utils.isNumericType(t)?parseFloat(i):i}clearErrors(){this.errorsDiv.innerHTML="",this.html.querySelectorAll("input, select").forEach((t=>{t.classList.remove("is-valid"),t.classList.remove("is-invalid")}))}markInputValid(t,e){t.classList.add(e?"is-valid":"is-invalid")}validateValue(t,e){const i={successed:!0,messages:[]};for(const o of this.validators){const r=o.validate(t,e);r.successed||(i.successed=!1,i.messages=i.messages.concat(r.messages))}return i}}class u{constructor(t,o,r,n){this.slot=t,this.grid=o,this.filter=r,this.options={focus:!1,instantMode:!1,instantTimeout:1e3},this.options=e.utils.assignDeep(this.options,n||{});const s=this.grid.cellRendererStore.getDefaultRendererByType(i.CellRendererType.STRING);this.grid.cellRendererStore.setDefaultRenderer(i.CellRendererType.STRING,((t,e,i,o)=>this.highlightCellRenderer(s,t,e,i,o)));const a=this.grid.cellRendererStore.getDefaultRendererByType(i.CellRendererType.NUMBER);this.grid.cellRendererStore.setDefaultRenderer(i.CellRendererType.NUMBER,((t,e,i,o)=>this.highlightCellRenderer(a,t,e,i,o))),this.render()}render(){const t=i.browserUtils.IsIE()?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",o=i.browserUtils.IsIE()||i.browserUtils.IsEdge();i.domel(this.slot).addClass(t).addChild("div",(t=>{t.addClass("control").addChild("input",(t=>{this.filterInput=t.toDOM(),t.attr("placeholder",e.i18n.getText("SearchInputPlaceholder")).type("text"),t.on("keydown",this.inputKeydownHandler.bind(this)),this.options.instantMode&&t.on("keyup",this.inputKeyupHandler.bind(this))})),o||t.addClass("has-icons-right").addChild("span",(t=>{t.addClass("icon").addClass("is-right").addClass("is-clickable").html("🗙").on("click",this.clearButtonClickHander.bind(this))}))})),this.options.instantMode||i.domel(this.slot).addChild("button",(t=>t.addClass("kfrm-button").addText(e.i18n.getText("SearchBtn")).on("click",this.searchButtonClickHandler.bind(this)))),this.options.focus&&this.filterInput.focus()}inputKeydownHandler(t){13==t.keyCode&&this.applyFilter(!0)}inputKeyupHandler(){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout),this.applyFilterTimeout=setTimeout((()=>{this.applyFilter(!0)}),this.options.instantTimeout)}clearButtonClickHander(){this.filterInput.value="",this.filterInput.focus(),this.applyFilter(!0)}searchButtonClickHandler(){this.applyFilter(!0)}applyFilter(t){this.applyFilterTimeout&&clearTimeout(this.applyFilterTimeout);const e=this.filter.getValue();return!(t&&e==this.filterInput.value||(this.filter.apply(this.filterInput.value).then((t=>{this.grid.setData(t)})),0))}highlightCellRenderer(t,o,r,n,s){if((e.utils.isNumericType(r.type)||e.utils.getStringDataTypes().indexOf(r.type)>=0)&&o){o=r.dataColumn&&r.dataColumn.displayFormat&&i.DFMT_REGEX.test(r.dataColumn.displayFormat)?r.dataColumn.displayFormat.replace(i.DFMT_REGEX,((t,i)=>e.i18n.numberToStr(o,i))):o.toLocaleString();const t=this.highlightText(o.toString());if(t instanceof HTMLElement)return n.title=o,void n.appendChild(t)}t(o,r,n,s)}highlightText(t){const e=t.toLowerCase(),i=this.filter.getValue().toString();if(i&&i.length>0&&t&&t.length>0){const o=[],r=i.split("||").map((t=>t.trim().toLowerCase()));for(let i=0;i=0?(o.push({index:t,length:r[i].length}),n=t+s.length):n++}}}if(o.length>0){o.sort(((t,e)=>t.index>e.index?1:t.index==e.index2?0:-1));for(let t=0;t0&&(o[t].length+=i),o.splice(t+1,1)}else t++}const e=document.createElement("div");for(let i=0;it.id==o.lookupEntity))[0],a=this.context.getMetaData().getAttributeById(o.dataAttr);if(!a)return;r=r||!a.isEditable,n=this.params.values?this.params.values.getValue(a.id):void 0;const l=p?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal";let d;i.domel(t).addChild("div",(t=>{t.addClass(l).addChild("input",(t=>{d=t.toDOM(),t.attr("readonly",""),t.name(a.id),t.type(this.resolveInputType(a.dataType)),t.value(e.utils.IsDefinedAndNotNull(n)?n.toString():"")})),r||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",e.i18n.getText("NavigationBtnTitle")).addText("...").on("click",(r=>{const n=new e.EasyDataTable({loader:{loadChunk:t=>this.context.getDataLoader().loadChunk(Object.assign(Object.assign({},t),{id:s.id}))}});this.context.getDataLoader().loadChunk({offset:0,limit:1e3,needTotal:!0,sourceId:s.id}).then((r=>{for(const t of r.table.columns.getItems()){const e=s.attributes.filter((e=>e.id==t.id&&(e.isPrimaryKey||e.showInLookup)));e.length&&n.columns.add(t)}n.setTotal(r.total);for(const t of r.table.getCachedRows())n.addRow(t);const a=new i.DefaultDialogService;let l,c=null,h=null;const p=i.domel("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("kfrm-field").addChild("label",(t=>t.addText(e.i18n.getText("LookupSelectedItem")).toDOM())).addChild("div",(t=>h=t.addText("None").toDOM())))).addChild("div",(t=>l=t.toDOM())).addChild("div",(t=>t.addClass("kfrm-control").addChild("div",(t=>c=t.toDOM())))).toDOM();let m=d.value;const g=(t,i)=>t instanceof e.DataRow?t.getValue(i):t[i.substring(i.lastIndexOf(".")+1)],f=t=>{h.innerHTML=n.columns.getItems().map((e=>`${e.label}: ${g(t,e.id)}`)).join(", ")};if(m){const t=s.getFirstPrimaryAttr(),e=t.id.substring(t.id.lastIndexOf(".")+1);this.context.fetchRecord({[e]:m},s.id).then((t=>{t.entity&&f(t.entity)})).catch((t=>{console.error(t)}))}const b=new i.EasyGrid({slot:c,dataTable:n,fixHeightOnFirstRender:!0,paging:{pageSize:10},onActiveRowChanged:t=>{b.getData().getRow(t.rowIndex).then((t=>{m=t.getValue(o.lookupDataAttr),f(t)}))}});a.open({title:e.i18n.getText("LookupDlgCaption").replace("{entity}",s.caption),body:p,arrangeParents:!0,beforeOpen:()=>{const t=this.context.createFilter(s.id,b.getData(),!0);new u(l,b,t,{instantMode:!0,focus:!0})},onSubmit:()=>(d.value=m,!0),onDestroy:()=>{b.destroy(),t.toDOM().focus()}})}))}))))}))}setupDateTimeField(t,o,r,n,s){const l=p?"kfrm-fields-ie is-horizontal":"kfrm-fields is-horizontal",d=a(o.dataType);let c;const h=d.replace("yyyy","9999").replace("MM","99").replace("dd","99").replace("HH","99").replace("mm","99").replace("ss","99");i.domel(t).addChild("div",(t=>{t.addClass(l).addChild("input",(t=>{c=t.toDOM(),t.name(o.id),t.type(s?"hidden":this.resolveInputType(o.dataType)),n?t.attr("readonly",""):(t.mask(h),t.on("keypress",(t=>this.applySumbit(t))).on("input",(i=>{t.removeClass("is-invalid");try{e.utils.strToDateTime(c.value,d)}catch(e){t.addClass("is-invalid")}})).on("blur",(t=>{c.value===h.replace(/[9]/g,"_")&&(c.value="")}))),t.value(e.utils.IsDefinedAndNotNull(r)?e.i18n.dateTimeToStr(r,d):"")})),n||t.addChild("button",(t=>t.addClass("kfrm-button").attr("title",e.i18n.getText(o.dataType!==e.DataType.Time?"CalendarBtnTitle":"TimerBtnTitle")).addChild("i",(t=>t.addClass(o.dataType!==e.DataType.Time?"ed-calendar-icon":"ed-timer-icon"))).on("click",(t=>{let r;try{r=c.value.length?o.dataType!==e.DataType.Time?e.utils.strToDateTime(c.value,d):e.utils.strToTime(c.value):new Date((new Date).setSeconds(0))}catch(t){r=new Date((new Date).setSeconds(0))}const n={zIndex:9999999999,showCalendar:o.dataType!==e.DataType.Time,showTimePicker:o.dataType!==e.DataType.Date,onApply:t=>{t.setSeconds(0),t.setMilliseconds(0),c.value=e.i18n.dateTimeToStr(t,d)}},s=new i.DefaultDateTimePicker(n);s.setDateTime(r),s.show(t.target)})).toDOM()))}))}setupListField(t,e,o,r,n){i.domel(t).addChild("div",(t=>t.addClass("kfrm-select full-width").addChild("select",(t=>{if(n&&t.attr("readonly",""),t.attr("name",e.id),t.on("keypress",(t=>this.applySumbit(t))),r)for(let e=0;e{o&&t.attr("readonly",""),t.name(e.id).type(this.resolveInputType(e.dataType)),t.attr("accept",r)}))}setupTextField(t,o,r,n,s){i.domel(t).addChild("input",(t=>{n&&t.attr("readonly",""),t.type(s?"hidden":this.resolveInputType(o.dataType)),t.name(o.id).type(this.resolveInputType(o.dataType)),o.dataType==e.DataType.Bool?r&&t.attr("checked",""):t.on("keypress",(t=>this.applySumbit(t))).value(e.utils.IsDefinedAndNotNull(r)?r.toString():"")}))}setupTextArea(t,o,r,n){i.domel(t).addChild("textarea",(t=>{n&&t.attr("readonly",""),t.attr("name",o.id),t.setStyle("height","120px"),t.value(e.utils.IsDefinedAndNotNull(r)?r.toString():"")}))}addFormField(t,o){const r=this.params.values&&o.kind!==e.EntityAttrKind.Lookup?this.params.values.getValue(o.id):this.params.isEditForm?void 0:o.defaultValue,n=this.resolveEditor(o),s=this.params.isEditForm&&(o.isPrimaryKey||!o.isEditable),a=!o.isNullable;p&&(t=i.domel("div",t).addClass("kfrm-field-ie").toDOM()),i.domel(t).addChild("label",(t=>{t.attr("for",o.id),t.addHtml(`${o.caption} ${a?'*':""}: `),o.description&&t.addChild("div",(t=>t.attr("title",o.description).addClass("question-mark").setStyle("vertical-align","middle").setStyle("display","inline-block")))}));const l=o.isPrimaryKey;if(o.kind!==e.EntityAttrKind.Lookup)switch(n.tag){case e.EditorTag.DateTime:this.setupDateTimeField(t,o,r,s,l);break;case e.EditorTag.List:this.setupListField(t,o,r,n.values,s);break;case e.EditorTag.File:this.setupFileField(t,o,s,n.accept);break;case e.EditorTag.Edit:default:n.multiline?this.setupTextArea(t,o,r,s):this.setupTextField(t,o,r,s,l)}else this.setupLookupField(t,o,s,r)}resolveInputType(t){return t===e.DataType.Bool?"checkbox":t===e.DataType.Blob?"file":"text"}resolveEditor(t){let i=t.defaultEditor||new e.ValueEditor;return i.tag==e.EditorTag.Unknown&&(e.utils.getDateDataTypes().indexOf(t.dataType)>=0?i.tag=e.EditorTag.DateTime:i.tag=e.EditorTag.Edit),i}applySumbit(t){return 13===t.keyCode&&(this.sumbitCallback&&this.sumbitCallback(),!1)}onSubmit(t){return this.sumbitCallback=t,this}build(){let t;const e=i.domel("div").addClass("kfrm-form").addChild("div",(t=>t.addClass("errors-block").toDOM())).addChild("div",(e=>{e.addClass(p?"kfrm-fields-ie col-ie-1-4 label-align-right":"kfrm-fields col-a-1 label-align-right"),t=e})).toDOM();this.form.setHtmlInt(e);for(const e of this.context.getActiveEntity().attributes)(this.params.isEditForm||e.showOnCreate)&&(e.isPrimaryKey||!this.params.isEditForm||e.showOnEdit)&&this.addFormField(t.toDOM(),e);return this.form}}class g{constructor(t){this.slot=t,this.hide(),this.slot.classList.add("ed-progress-bar")}show(){this.slot.style.removeProperty("display")}hide(){this.slot.style.display="none"}}class f{constructor(t){this.context=t}loadChunk(t){const i=this.context.resolveEndpoint("FetchDataset",{sourceId:t.sourceId||this.context.getActiveEntity().id});return delete t.sourceId,this.context.startProcess(),this.context.getHttpClient().post(i,t).then((i=>{const o=new e.EasyDataTable({chunkSize:1e3}),r=i.resultSet;for(const t of r.cols)o.columns.add(t);for(const t of r.rows)o.addRow(t);let n=0;return i.meta&&i.meta.totalRecords&&(n=i.meta.totalRecords),{table:o,total:n,hasNext:!t.needTotal||t.offset+t.limit{this.context.endProcess()}))}}class b{constructor(t){this.endpoints=new Map,this.endpointVarsRegex=/\{.*?\}/g,this.options=t||{},this.http=new e.HttpClient,this.model=new e.MetaData,this.model.id=t.metaDataId||"__default",this.dataLoader=new f(this);const i=Object.assign({loader:this.dataLoader},t.dataTable);this.data=new e.EasyDataTable(i),this.setDefaultEndpoints(this.options.endpoint||"/api/easydata")}getActiveEntity(){return this.activeEntity}setActiveSource(t){this.activeEntity=this.model.getRootEntity().subEntities.filter((e=>e.id==t))[0]}getMetaData(){return this.model}getData(){return this.data}getDataLoader(){return this.dataLoader}createFilter(t,e,i){return new o(this.dataLoader,e||this.getData(),t||this.activeEntity.id,i)}loadMetaData(){const t=this.resolveEndpoint("GetMetaData");return this.startProcess(),this.http.get(t).then((t=>(t.model&&this.model.loadFromData(t.model),this.model))).catch((t=>(console.error(`Error: ${t.message}. Source: ${t.sourceError}`),null))).finally((()=>{this.endProcess()}))}getHttpClient(){return this.http}fetchDataset(){return this.data.clear(),this.dataLoader.loadChunk({offset:0,limit:this.data.chunkSize,needTotal:!0}).then((t=>{for(const e of t.table.columns.getItems())this.data.columns.add(e);this.data.setTotal(t.total);for(const e of t.table.getCachedRows())this.data.addRow(e);return this.data}))}fetchRecord(t,e){const i=this.resolveEndpoint("FetchRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.get(i,{queryParams:t}).finally((()=>this.endProcess()))}createRecord(t,e){const i=this.resolveEndpoint("CreateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}updateRecord(t,e){const i=this.resolveEndpoint("UpdateRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}deleteRecord(t,e){const i=this.resolveEndpoint("DeleteRecord",{sourceId:e||this.activeEntity.id});return this.startProcess(),this.http.post(i,t,{dataType:"json"}).finally((()=>this.endProcess()))}setEndpoint(t,e){this.endpoints.set(t,e)}setEnpointIfNotExist(t,e){this.endpoints.has(t)||this.endpoints.set(t,e)}resolveEndpoint(t,e){e=e||{};let i=this.endpoints.get(t);if(!i)throw t+" endpoint is not defined";let o=i.match(this.endpointVarsRegex);if(o)for(let t of o){let o=t.substring(1,t.length-1),r=e[o];if(!r)if("modelId"==o)r=this.model.getId();else{if("sourceId"!=o)throw`Parameter [${o}] is not defined`;r=this.activeEntity.id}i=i.replace(t,r)}return i}startProcess(){this.options.onProcessStart&&this.options.onProcessStart()}endProcess(){this.options.onProcessEnd&&this.options.onProcessEnd()}setDefaultEndpoints(t){this.setEnpointIfNotExist("GetMetaData",e.combinePath(t,"models/{modelId}")),this.setEnpointIfNotExist("FetchDataset",e.combinePath(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("FetchRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/fetch")),this.setEnpointIfNotExist("CreateRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/create")),this.setEnpointIfNotExist("UpdateRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/update")),this.setEnpointIfNotExist("DeleteRecord",e.combinePath(t,"models/{modelId}/sources/{sourceId}/delete"))}}class k extends d{constructor(){super(),this.name="Type"}validate(t,i){if(!e.utils.IsDefinedAndNotNull(i)||""==i)return{successed:!0};if(e.utils.isNumericType(t.dataType)){if(!e.utils.isNumeric(i))return{successed:!1,messages:[e.i18n.getText("NumberError")]};if(e.utils.isIntType(t.dataType)&&!Number.isInteger(Number.parseFloat(i)))return{successed:!1,messages:[e.i18n.getText("IntNumberError")]}}return{successed:!0}}}class y extends d{constructor(){super(),this.name="Required"}validate(t,i){return t.isNullable||e.utils.IsDefinedAndNotNull(i)&&""!==i?{successed:!0}:{successed:!1,messages:[e.i18n.getText("RequiredError")]}}}class x{constructor(t,o,r,n){this.slot=t,this.context=o,this.basePath=r,this.options={showFilterBox:!0,showBackToEntities:!0},this.defaultValidators=[new y,new k],this.options=e.utils.assignDeep(this.options,n||{}),this.dlg=new i.DefaultDialogService;const s=this.context.getActiveEntity();if(!s)throw"Can't find active entity for "+window.location.pathname;this.slot.innerHTML+=`

    ${s.captionPlural||s.caption}

    `,this.options.showBackToEntities&&i.domel(this.slot).addChild("a",(t=>t.attr("href","javascript:void(0)").text(`← ${e.i18n.getText("BackToEntities")}`).on("click",(t=>{t.preventDefault(),l(this.basePath)})))),this.renderGrid()}syncGridColumnHandler(t){if(t.dataColumn){const e=this.context.getMetaData().getAttributeById(t.dataColumn.id);e&&(t.isVisible=e.showOnView)}}renderGrid(){this.context.fetchDataset().then((t=>{const o=document.createElement("div");if(this.slot.appendChild(o),o.id="Grid",this.grid=new i.EasyGrid(e.utils.assignDeep({slot:o,dataTable:t,paging:{pageSize:15,allowPageSizeChange:!0,pageSizeItems:[15,30,50,100,200]},showPlusButton:this.context.getActiveEntity().isEditable,plusButtonTitle:e.i18n.getText("AddRecordBtnTitle"),showActiveRow:!1,onPlusButtonClick:this.addClickHandler.bind(this),onGetCellRenderer:this.manageCellRenderer.bind(this),onRowDbClick:this.rowDbClickHandler.bind(this),onSyncGridColumn:this.syncGridColumnHandler.bind(this)},this.options.grid||{})),this.options.showFilterBox){let t;const e=i.domel("div").addClass("kfrm-form").setStyle("margin","10px 0px").addChild("div",(e=>t=e.toDOM())).toDOM();this.slot.insertBefore(e,o);const r=this.context.createFilter();this.filterWidget=new u(t,this.grid,r)}}))}manageCellRenderer(t,o){if(t.isRowNum)return t.width=110,(t,o,r,n)=>{const s=i.domel("div",r).addClass("keg-cell-value");this.context.getActiveEntity().isEditable&&s.addChild("a",(t=>t.attr("href","javascript:void(0)").text(e.i18n.getText("EditBtn")).on("click",(t=>this.editClickHandler(t,parseInt(n.getAttribute("data-row-idx"))))))).addChild("span",(t=>t.text(" | "))).addChild("a",(t=>t.attr("href","javascript:void(0)").text(e.i18n.getText("DeleteBtn")).on("click",(t=>this.deleteClickHandler(t,parseInt(n.getAttribute("data-row-idx")))))))}}addClickHandler(){const t=this.context.getActiveEntity(),i=new m(this.context).onSubmit((()=>o.submit())).build();i.useValidators(this.defaultValidators);const o=this.dlg.open({title:e.i18n.getText("AddDlgCaption").replace("{entity}",t.caption),body:i.getHtml(),onSubmit:()=>{if(!i.validate())return!1;i.getData().then((t=>this.context.createRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}editClickHandler(t,e){this.grid.getData().getRow(e).then((t=>{t&&this.showEditForm(t)}))}showEditForm(t){const i=this.context.getActiveEntity(),o=new m(this.context,{isEditForm:!0,values:t}).onSubmit((()=>r.submit())).build();o.useValidators(this.defaultValidators);const r=this.dlg.open({title:e.i18n.getText("EditDlgCaption").replace("{entity}",i.caption),body:o.getHtml(),onSubmit:()=>{if(!o.validate())return!1;o.getData().then((t=>this.context.updateRecord(t))).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}})}rowDbClickHandler(t){this.context.getActiveEntity().isEditable&&this.showEditForm(t.row)}deleteClickHandler(t,i){this.grid.getData().getRow(i).then((t=>{if(t){const i=this.context.getActiveEntity(),o=i.getPrimaryAttrs(),r=o.map((e=>t.getValue(e.id))),n=o.reduce(((t,e,i)=>(t[e.id.substring(e.id.lastIndexOf(".")+1)]=r[i],t)),{});this.dlg.openConfirm(e.i18n.getText("DeleteDlgCaption").replace("{entity}",i.caption),e.i18n.getText("DeleteDlgMessage").replace("{recordId}",Object.keys(n).map((t=>`${t}:${n[t]}`)).join(";"))).then((t=>{t&&this.context.deleteRecord(n).then((()=>this.refreshData())).catch((t=>{this.processError(t)}))}))}}))}processError(t){this.dlg.open({title:"Ooops, something went wrong",body:t.message,closable:!0,cancelable:!1})}refreshData(){return this.context.fetchDataset().then((()=>{let t=!1;this.filterWidget&&(t=this.filterWidget.applyFilter(!1)),t||this.grid.refresh()}))}}class w{constructor(t,i,o){this.slot=t,this.context=i,this.basePath=o,this.metaData=this.context.getMetaData(),this.slot.innerHTML+=`

    ${e.i18n.getText("RootViewTitle")}

    `,this.renderEntitySelector()}renderEntitySelector(){const t=this.metaData.getRootEntity().subEntities;this.slot&&i.domel(this.slot).addChild("div",(i=>i.addClass("ed-root").addChild("div",(t=>t.addClass("ed-menu-description").addText(e.i18n.getText(this.metaData.isEmpty()?"ModelIsEmpty":"EntityMenuDesc")))).addChild("ul",(e=>{e.addClass("ed-entity-menu"),t.forEach((t=>{e.addChild("li",(e=>{e.addClass("ed-entity-item").on("click",(()=>{l(`${this.basePath}/${decodeURIComponent(t.id)}`)})).addChild("div",(e=>{e.addClass("ed-entity-item-caption").addText(t.captionPlural||t.caption)})),t.description&&e.addChild("div",(e=>{e.addClass("ed-entity-item-descr").addText(`${t.description}`)}))}))}))}))))}}class v{constructor(t){this.options={container:"#EasyDataContainer",basePath:"easydata"},this.onSetLocation=()=>{this.setActiveView()},this.attach=()=>{window.addEventListener("ed_set_location",this.onSetLocation),window.addEventListener("popstate",this.onSetLocation)},this.options=e.utils.assign(this.options,t||{}),this.options.rootEntity?(this.options.showBackToEntities=!1,this.basePath="/"):this.basePath=this.normalizeBasePath(this.options.basePath),this.setContainer(this.options.container);const i=document.createElement("div"),o=new g(i),r=this.container.parentElement;r.insertBefore(i,r.firstElementChild),this.context=new b({endpoint:this.options.endpoint,dataTable:this.options.dataTable,onProcessStart:()=>o.show(),onProcessEnd:()=>o.hide()})}normalizeBasePath(t){t=this.trimSlashes(t);const e=decodeURIComponent(window.location.pathname),i=e.toLocaleLowerCase().indexOf(t);return i>=0?e.substring(0,i+t.length):"/"}trimSlashes(t){return t.replace(/^\/|\/$/g,"")}setContainer(t){if(!t)throw"Container is undefined";if("string"==typeof t){if(t.length){if("."===t[0]){const e=document.getElementsByClassName(t.substring(1));e.length&&(this.container=e[0])}else"#"===t[0]&&(t=t.substring(1)),this.container=document.getElementById(t);if(!this.container)throw Error("Unrecognized `container` parameter: "+t+"\nIt must be an element ID, a class name (starting with .) or an HTMLElement object itself.")}}else this.container=t}getActiveSourceId(){if(this.options.rootEntity)return this.options.rootEntity;const t=decodeURIComponent(window.location.pathname),e=this.basePath.length+1;return e{this.setActiveView()})).catch((t=>console.error(t)))}setActiveView(){this.clear();const t=this.getActiveSourceId();t?(this.context.setActiveSource(t),window.EDView=new x(this.container,this.context,this.basePath,this.options)):window.EDView=new w(this.container,this.context,this.basePath)}clear(){this.container.innerHTML="",this.context.getData().clear()}detach(){window.removeEventListener("ed_set_location",this.onSetLocation),window.removeEventListener("popstate",this.onSetLocation)}}function D(){e.i18n.updateDefaultTexts({RequiredError:"Value is required.",NumberError:"Value should be a number",IntNumberError:"Value should be an integer number",DateTimeError:"Invalid date or time value",LookupSelectedItem:"Selected item: ",LookupDlgCaption:"Select {entity}",None:"None",NavigationBtnTitle:"Navigation values",CalendarBtnTitle:"Open calendar",TimerBtnTitle:"Open timer",AddBtnTitle:"Add",AddRecordBtnTitle:"Add record",EditBtn:"Edit",DeleteBtn:"Delete",SelectLink:"[ select ]",AddDlgCaption:"Create {entity}",EditDlgCaption:"Edit {entity}",DeleteDlgCaption:"Delete {entity}",DeleteDlgMessage:"Are you sure you want to remove this record: {{recordId}}?",EntityMenuDesc:"Click on an entity to view/edit its content",BackToEntities:"Back to entities",SearchBtn:"Search",SearchInputPlaceholder:"Search...",RootViewTitle:"Entities",ModelIsEmpty:"No entity was found."})}D(),t.DataContext=b,t.EasyDataServerLoader=f,t.EasyDataViewDispatcher=v,t.EntityDataView=x,t.EntityEditForm=h,t.EntityEditFormBuilder=m,t.ProgressBar=g,t.RequiredValidator=y,t.RootDataView=w,t.TextDataFilter=o,t.TextFilterWidget=u,t.TypeValidator=k,t.Validator=d}(e,n(),s)}(0,a.exports);var l=a.exports;return window.addEventListener("load",(function(){console.log(s.showTimeSpanPicker)})),globalThis.showPicker=function(){s.showTimeSpanPicker({title:"Select Period",submitButtonText:"Ok",cancelButtonText:"Cancel",onSubmit:function(t,e){return alert("\n You select interval with\n\n Start: ".concat(t,"\n\n Finish: ").concat(e,"\n "))}})},globalThis.showPickerWithPreset=function(){s.showTimeSpanPicker({start:new Date(2023,7,11),finish:new Date(2023,7,21),onSubmit:function(t,e){return alert("\n You select interval with\n\n Start: ".concat(t,"\n\n Finish: ").concat(e,"\n "))}})},t.runDispatcher=function(t){new l.EasyDataViewDispatcher(t).run()},t}({}); From 82f3828f28eea87862f2f448b6c0be1959ff1c53 Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 13:05:09 +0200 Subject: [PATCH 11/40] Add clean.bat --- clean.bat | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 clean.bat diff --git a/clean.bat b/clean.bat new file mode 100644 index 00000000..57c77451 --- /dev/null +++ b/clean.bat @@ -0,0 +1,6 @@ +call npm cache clean --force +call nx reset +call npx lerna clean +rmdir /S /Q node_modules +del package-lock.json +call npm update \ No newline at end of file From 836dee936501478cf9624c822c42d34d038cca96 Mon Sep 17 00:00:00 2001 From: olton Date: Wed, 3 Jan 2024 14:40:42 +0200 Subject: [PATCH 12/40] added bundle package --- easydata.js/packs/bundle/.npmignore | 1 + easydata.js/packs/bundle/README.md | 37 ++++++++++ easydata.js/packs/bundle/package.json | 39 +++++++++++ easydata.js/packs/bundle/rollup.config.mjs | 81 ++++++++++++++++++++++ easydata.js/packs/bundle/src/index.ts | 12 ++++ easydata.js/packs/bundle/tsconfig.json | 24 +++++++ 6 files changed, 194 insertions(+) create mode 100644 easydata.js/packs/bundle/.npmignore create mode 100644 easydata.js/packs/bundle/README.md create mode 100644 easydata.js/packs/bundle/package.json create mode 100644 easydata.js/packs/bundle/rollup.config.mjs create mode 100644 easydata.js/packs/bundle/src/index.ts create mode 100644 easydata.js/packs/bundle/tsconfig.json diff --git a/easydata.js/packs/bundle/.npmignore b/easydata.js/packs/bundle/.npmignore new file mode 100644 index 00000000..8ae34bff --- /dev/null +++ b/easydata.js/packs/bundle/.npmignore @@ -0,0 +1 @@ +lib \ No newline at end of file diff --git a/easydata.js/packs/bundle/README.md b/easydata.js/packs/bundle/README.md new file mode 100644 index 00000000..f196032a --- /dev/null +++ b/easydata.js/packs/bundle/README.md @@ -0,0 +1,37 @@ +# @easydata/bundle (part of EasyData library) + +## What is EasyData? + +EasyData is an open-source library that allows you to simplify data management tasks in your web applications. Here we are talking about usual CRUD (create, retrieve, update, delete) operations first of all. + +EasyData introduces a declarative approach to building a user interface for most data operations. +You simply describe your data: entities (tables), attributes (fields), relationships between them, data types, constraints, etc., and EasyData automatically, at run-time renders the necessary forms and dialogs to view, search and edit the data. + +## What is @easydata/bundle package? + +This package is a part EasyData.JS library. +It contains UI widgets and views for implementing UI for CRUD (create/read/update/delete) operations over your database. + +## How to start? + +@easydata NPM packages make up the client-side part of EasyData. It means that you need something on your server-side to utilize EasyData in your project. The possible options are: + +### 1. ASP.NET Core projects + +To start with ASP.NET Core backend you can simply clone [EasyData repository on GitHub](https://github.com/KorzhCom/EasyData/) and try one of the sample projects included in that repository. After that, you can follow [the instruction](https://github.com/KorzhCom/EasyData/blob/master/README.md) published there to apply EasyData to your own project. + +### 2. Any other backend platform. + +Sorry, but it's not possible yet :( + +Please [submit an issue on GitHub](https://github.com/KorzhCom/EasyData/issues) (or vote for an existing one) to encourage us to add the support for your platform of choice faster. + +## Documentation + + * [GitHub repo README] (https://github.com/KorzhCom/EasyData/blob/master/README.md) + * [An overview and some basic instructions](https://korzh.com/blog/crud-asp-net-core-with-easydata) + * [Sample projects](https://github.com/KorzhCom/EasyData/tree/master/samples) (for ASP.NET Core only for now) + +## License +This package (together with all other packages in @easydata) is distributed under MIT license. + diff --git a/easydata.js/packs/bundle/package.json b/easydata.js/packs/bundle/package.json new file mode 100644 index 00000000..ef259411 --- /dev/null +++ b/easydata.js/packs/bundle/package.json @@ -0,0 +1,39 @@ +{ + "name": "@easydata/bundle", + "version": "1.4.20", + "description": "EasyData.JS UI widgets and views for CRUD manipulations", + "types": "./dist/types/public_api.d.ts", + "main": "./dist/easydata.crud.js", + "scripts": { + "test": "vitest run", + "clear": "shx rm -rf dist/* docs/* lib/*", + "build": "npm run clear && rollup -c", + "watch": "rollup -c -w", + "docs": "typedoc src/public_api.ts --out ./docs" + }, + "author": "Korzh.com", + "homepage": "https://github.com/KorzhCom/EasyData", + "repository": { + "type": "git", + "url": "https://github.com/KorzhCom/EasyData.git" + }, + "keywords": [ + "database", + "crud", + "paging", + "data table", + "data filter" + ], + "bugs": "https://github.com/KorzhCom/EasyData/issues", + "license": "MIT", + "browserslist": [ + "defaults and supports es6-module" + ], + "dependencies": { + "@easydata/ui": "^1.4.20", + "@easydata/crud": "^1.4.20" + }, + "files": [ + "dist" + ] +} \ No newline at end of file diff --git a/easydata.js/packs/bundle/rollup.config.mjs b/easydata.js/packs/bundle/rollup.config.mjs new file mode 100644 index 00000000..d26be8b1 --- /dev/null +++ b/easydata.js/packs/bundle/rollup.config.mjs @@ -0,0 +1,81 @@ +import {nodeResolve} from '@rollup/plugin-node-resolve' +import commonjs from '@rollup/plugin-commonjs' +import terser from '@rollup/plugin-terser' +import progress from 'rollup-plugin-progress' +import typescript from '@rollup/plugin-typescript' +import typedoc from '@olton/rollup-plugin-typedoc' +import multi from '@rollup/plugin-multi-entry' +import * as path from "path"; +import { fileURLToPath } from 'url'; +import noEmit from 'rollup-plugin-no-emit' +import postcss from 'rollup-plugin-postcss' +import autoprefixer from "autoprefixer" +import pkg from './package.json' assert { type: 'json' }; + +const __filename = fileURLToPath(import.meta.url); +const __dirname = path.dirname(__filename); + +const production = !(process.env.ROLLUP_WATCH), + sourcemap = !production, + cache = false + +const banner = ` +/*! + * EasyData.JS Bundle v${pkg.version} + * Copyright ${new Date().getFullYear()} Korzh.com + * Licensed under MIT + */ +` + +export default [ + { + input: './src/index.ts', + cache, + watch: { + include: 'src/**', + clearScreen: false + }, + plugins: [ + progress({ clearLine: true, }), + typescript({ sourceMap: sourcemap, declaration: false, }), + nodeResolve({ browser: true, }), + commonjs(), + postcss({ + extract: false, + minimize: false, + use: ['less'], + sourceMap: sourcemap, + plugins: [ + autoprefixer(), + ] + }), + ], + context: "window", + output: [ + { + file: './dist/easydata.js', + format: 'umd', + sourcemap, + banner, + name: "easydata", + extend: true, + plugins: [ + ], + }, + { + file: './dist/easydata.min.js', + format: 'umd', + sourcemap, + banner, + name: "easydata", + extend: true, + plugins: [ + terser({ + keep_classnames: true, + keep_fnames: true, + }), + ], + }, + ] + }, +] \ No newline at end of file diff --git a/easydata.js/packs/bundle/src/index.ts b/easydata.js/packs/bundle/src/index.ts new file mode 100644 index 00000000..0e28de47 --- /dev/null +++ b/easydata.js/packs/bundle/src/index.ts @@ -0,0 +1,12 @@ +import * as ui from "@easydata/ui" +import * as crud from "@easydata/crud" + +import "@easydata/ui/dist/assets/css/easy-dialog.css" +import "@easydata/ui/dist/assets/css/easy-grid.css" +import "@easydata/ui/dist/assets/css/easy-forms.css" +import "@easydata/crud/dist/browser/ed-view.css" + +export { + ui, + crud +} \ No newline at end of file diff --git a/easydata.js/packs/bundle/tsconfig.json b/easydata.js/packs/bundle/tsconfig.json new file mode 100644 index 00000000..9ad2ef24 --- /dev/null +++ b/easydata.js/packs/bundle/tsconfig.json @@ -0,0 +1,24 @@ +{ + "compileOnSave": false, + "compilerOptions": { + "noImplicitAny": false, + "strictNullChecks" : false, + "strict": true, + "sourceMap": true, + "declaration": true, + "module": "es6", + "moduleResolution": "node", + "emitDecoratorMetadata": true, + "experimentalDecorators": true, + "allowSyntheticDefaultImports": true, + "target": "es5", + "typeRoots": ["node_modules/@types"], + "lib": ["ESNext", "dom"], + "baseUrl": ".", + "outDir": "./dist/types", + "noEmitOnError": true + }, + "include": [ + "./src/**/*.ts" + ] +} \ No newline at end of file From 11a18648555494beca8d6047e6935b3c104e8c5e Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 16:12:22 +0200 Subject: [PATCH 13/40] Add Core module to bundle --- easydata.js/packs/bundle/src/index.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/easydata.js/packs/bundle/src/index.ts b/easydata.js/packs/bundle/src/index.ts index 0e28de47..9d431e4b 100644 --- a/easydata.js/packs/bundle/src/index.ts +++ b/easydata.js/packs/bundle/src/index.ts @@ -1,4 +1,5 @@ -import * as ui from "@easydata/ui" +import * as core from "@easydata/core" +import * as ui from "@easydata/ui" import * as crud from "@easydata/crud" import "@easydata/ui/dist/assets/css/easy-dialog.css" @@ -7,6 +8,7 @@ import "@easydata/ui/dist/assets/css/easy-forms.css" import "@easydata/crud/dist/browser/ed-view.css" export { + core, ui, crud } \ No newline at end of file From b0f7b9945f20c90664c3aeedc23a7d6b8bca9847 Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 16:33:43 +0200 Subject: [PATCH 14/40] Move bundle to another folder --- easydata.js/{packs/bundle => bundles/crud}/.npmignore | 0 easydata.js/{packs/bundle => bundles/crud}/README.md | 0 easydata.js/{packs/bundle => bundles/crud}/package.json | 0 easydata.js/{packs/bundle => bundles/crud}/rollup.config.mjs | 0 easydata.js/{packs/bundle => bundles/crud}/src/index.ts | 0 easydata.js/{packs/bundle => bundles/crud}/tsconfig.json | 0 lerna.json | 1 + package.json | 1 + 8 files changed, 2 insertions(+) rename easydata.js/{packs/bundle => bundles/crud}/.npmignore (100%) rename easydata.js/{packs/bundle => bundles/crud}/README.md (100%) rename easydata.js/{packs/bundle => bundles/crud}/package.json (100%) rename easydata.js/{packs/bundle => bundles/crud}/rollup.config.mjs (100%) rename easydata.js/{packs/bundle => bundles/crud}/src/index.ts (100%) rename easydata.js/{packs/bundle => bundles/crud}/tsconfig.json (100%) diff --git a/easydata.js/packs/bundle/.npmignore b/easydata.js/bundles/crud/.npmignore similarity index 100% rename from easydata.js/packs/bundle/.npmignore rename to easydata.js/bundles/crud/.npmignore diff --git a/easydata.js/packs/bundle/README.md b/easydata.js/bundles/crud/README.md similarity index 100% rename from easydata.js/packs/bundle/README.md rename to easydata.js/bundles/crud/README.md diff --git a/easydata.js/packs/bundle/package.json b/easydata.js/bundles/crud/package.json similarity index 100% rename from easydata.js/packs/bundle/package.json rename to easydata.js/bundles/crud/package.json diff --git a/easydata.js/packs/bundle/rollup.config.mjs b/easydata.js/bundles/crud/rollup.config.mjs similarity index 100% rename from easydata.js/packs/bundle/rollup.config.mjs rename to easydata.js/bundles/crud/rollup.config.mjs diff --git a/easydata.js/packs/bundle/src/index.ts b/easydata.js/bundles/crud/src/index.ts similarity index 100% rename from easydata.js/packs/bundle/src/index.ts rename to easydata.js/bundles/crud/src/index.ts diff --git a/easydata.js/packs/bundle/tsconfig.json b/easydata.js/bundles/crud/tsconfig.json similarity index 100% rename from easydata.js/packs/bundle/tsconfig.json rename to easydata.js/bundles/crud/tsconfig.json diff --git a/lerna.json b/lerna.json index 968f9ddf..6cff659f 100644 --- a/lerna.json +++ b/lerna.json @@ -3,6 +3,7 @@ "version": "independent", "packages": [ "easydata.js/packs/*", + "easydata.js/bundles/*", "playground/*" ], "command": { diff --git a/package.json b/package.json index a1825e0c..3baec214 100644 --- a/package.json +++ b/package.json @@ -3,6 +3,7 @@ "private": true, "workspaces": [ "easydata.js/packs/*", + "easydata.js/bundles/*", "playground/*" ], "scripts": { From 356e88cbef42a64d394becdf73a8063abb7f2608 Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 16:36:19 +0200 Subject: [PATCH 15/40] Update bundle's package.json --- easydata.js/bundles/crud/package.json | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/easydata.js/bundles/crud/package.json b/easydata.js/bundles/crud/package.json index ef259411..f67011a1 100644 --- a/easydata.js/bundles/crud/package.json +++ b/easydata.js/bundles/crud/package.json @@ -1,15 +1,12 @@ { - "name": "@easydata/bundle", + "name": "@easydata/bundle-crud", "version": "1.4.20", - "description": "EasyData.JS UI widgets and views for CRUD manipulations", - "types": "./dist/types/public_api.d.ts", - "main": "./dist/easydata.crud.js", + "description": "EasyData.JS bundle", "scripts": { "test": "vitest run", "clear": "shx rm -rf dist/* docs/* lib/*", "build": "npm run clear && rollup -c", - "watch": "rollup -c -w", - "docs": "typedoc src/public_api.ts --out ./docs" + "watch": "rollup -c -w" }, "author": "Korzh.com", "homepage": "https://github.com/KorzhCom/EasyData", From 161331a868beac529ec3169fbec9c7f66ce57fd4 Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 16:43:21 +0200 Subject: [PATCH 16/40] Update package.json --- package.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/package.json b/package.json index 3baec214..f3c5ff89 100644 --- a/package.json +++ b/package.json @@ -13,10 +13,12 @@ "watch:core": "lerna run watch --scope=@easydata/core", "watch:crud": "lerna run watch --scope=@easydata/crud", "watch:ui": "lerna run watch --scope=@easydata/ui", + "watch:bundle": "lerna run watch --scope=@easydata/bundle-crud", "build": "lerna run build", "build:core": "lerna run build --scope=@easydata/core", "build:crud": "lerna run build --scope=@easydata/crud", "build:ui": "lerna run build --scope=@easydata/ui", + "build:bundle": "lerna run build --scope=@easydata/bundle-crud", "build:demo1": "lerna run build --scope=demo1", "build:demo2": "lerna run build --scope=demo2", "dev": "lerna run watch --parallel --scope=@easydata/*", From 55e34da7b6f2caae39ed64bb2dfb91e686ccf5f6 Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 16:43:45 +0200 Subject: [PATCH 17/40] Update version to 1.4.21 --- easydata.js/bundles/crud/package.json | 6 +++--- easydata.js/packs/core/package.json | 2 +- easydata.js/packs/crud/package.json | 6 +++--- easydata.js/packs/ui/package.json | 4 ++-- easydata.js/version.json | 6 +++--- 5 files changed, 12 insertions(+), 12 deletions(-) diff --git a/easydata.js/bundles/crud/package.json b/easydata.js/bundles/crud/package.json index f67011a1..79e659b0 100644 --- a/easydata.js/bundles/crud/package.json +++ b/easydata.js/bundles/crud/package.json @@ -1,6 +1,6 @@ { "name": "@easydata/bundle-crud", - "version": "1.4.20", + "version": "1.4.21", "description": "EasyData.JS bundle", "scripts": { "test": "vitest run", @@ -27,8 +27,8 @@ "defaults and supports es6-module" ], "dependencies": { - "@easydata/ui": "^1.4.20", - "@easydata/crud": "^1.4.20" + "@easydata/ui": "^1.4.21", + "@easydata/crud": "^1.4.21" }, "files": [ "dist" diff --git a/easydata.js/packs/core/package.json b/easydata.js/packs/core/package.json index 531b211d..0a9a239d 100644 --- a/easydata.js/packs/core/package.json +++ b/easydata.js/packs/core/package.json @@ -1,6 +1,6 @@ { "name": "@easydata/core", - "version": "1.4.20", + "version": "1.4.21", "description": "EasyData.JS core functions, classes, and data structures", "types": "./dist/types/public_api.d.ts", "main": "./dist/easydata.core.js", diff --git a/easydata.js/packs/crud/package.json b/easydata.js/packs/crud/package.json index ee30978f..b923c650 100644 --- a/easydata.js/packs/crud/package.json +++ b/easydata.js/packs/crud/package.json @@ -1,6 +1,6 @@ { "name": "@easydata/crud", - "version": "1.4.20", + "version": "1.4.21", "description": "EasyData.JS UI widgets and views for CRUD manipulations", "types": "./dist/types/public_api.d.ts", "main": "./dist/easydata.crud.js", @@ -30,8 +30,8 @@ "defaults and supports es6-module" ], "peerDependencies": { - "@easydata/core": "^1.4.20", - "@easydata/ui": "^1.4.20" + "@easydata/core": "^1.4.21", + "@easydata/ui": "^1.4.21" }, "files": [ "dist" diff --git a/easydata.js/packs/ui/package.json b/easydata.js/packs/ui/package.json index 653cbeb3..e354ab06 100644 --- a/easydata.js/packs/ui/package.json +++ b/easydata.js/packs/ui/package.json @@ -1,6 +1,6 @@ { "name": "@easydata/ui", - "version": "1.4.20", + "version": "1.4.21", "description": "EasyData.JS: DOM manipulation functions and UI widgets", "types": "./dist/types/public_api.d.ts", "main": "./dist/easydata.ui.js", @@ -34,7 +34,7 @@ "defaults" ], "peerDependencies": { - "@easydata/core": "^1.4.20" + "@easydata/core": "^1.4.21" }, "dependencies": { "@juggle/resize-observer": "^3.4.0" diff --git a/easydata.js/version.json b/easydata.js/version.json index 3c1a8961..d5fc2fe6 100644 --- a/easydata.js/version.json +++ b/easydata.js/version.json @@ -1,6 +1,6 @@ { - "version": "1.4.20", - "baseVersion": "1.4.20", - "assetVersion": "01_04_20", + "version": "1.4.21", + "baseVersion": "1.4.21", + "assetVersion": "01_04_21", "tag": "latest" } From 33146026823fd030fa05100756777e3882242890 Mon Sep 17 00:00:00 2001 From: Oleksandr Melnychenko Date: Wed, 3 Jan 2024 17:29:21 +0200 Subject: [PATCH 18/40] Change configs for correct bundle --- easydata.js/bundles/crud/rollup.config.mjs | 62 ++++++++++++++++++ .../crud/src/css-easydata.js | 4 +- easydata.js/bundles/crud/src/index.ts | 5 -- easydata.js/packs/crud/rollup.config.mjs | 63 +++---------------- easydata.js/packs/crud/src/api-easydata.js | 5 -- easydata.js/packs/crud/src/ed-view.js | 1 + 6 files changed, 74 insertions(+), 66 deletions(-) rename easydata.js/{packs => bundles}/crud/src/css-easydata.js (50%) delete mode 100644 easydata.js/packs/crud/src/api-easydata.js create mode 100644 easydata.js/packs/crud/src/ed-view.js diff --git a/easydata.js/bundles/crud/rollup.config.mjs b/easydata.js/bundles/crud/rollup.config.mjs index d26be8b1..b483844d 100644 --- a/easydata.js/bundles/crud/rollup.config.mjs +++ b/easydata.js/bundles/crud/rollup.config.mjs @@ -78,4 +78,66 @@ export default [ }, ] }, + { + input: './src/css-easydata.js', + plugins: [ + progress({ + clearLine: true, + }), + nodeResolve(), + postcss({ + extract: true, + minimize: true, + use: ['less'], + sourceMap: sourcemap, + plugins: [ + autoprefixer(), + ] + }), + noEmit({ + match(fileName, output) { + return 'css-easydata.js' === fileName + } + }), + ], + output: { + file: './dist/easydata.min.css', + banner, + }, + onwarn: message => { + if (/Generated an empty chunk/.test(message)) return; + console.error( message ) + } + }, + { + input: './src/css-easydata.js', + plugins: [ + progress({ + clearLine: true, + }), + nodeResolve(), + postcss({ + extract: true, + minimize: false, + use: ['less'], + sourceMap: false, + plugins: [ + autoprefixer(), + ] + }), + noEmit({ + match(fileName, output) { + return 'css-easydata.js' === fileName + } + }), + ], + output: { + file: './dist/easydata.css', + banner, + }, + onwarn: message => { + if (/Generated an empty chunk/.test(message)) return; + console.error( message ) + } + }, ] \ No newline at end of file diff --git a/easydata.js/packs/crud/src/css-easydata.js b/easydata.js/bundles/crud/src/css-easydata.js similarity index 50% rename from easydata.js/packs/crud/src/css-easydata.js rename to easydata.js/bundles/crud/src/css-easydata.js index 17f9f3c8..ec9dd61b 100644 --- a/easydata.js/packs/crud/src/css-easydata.js +++ b/easydata.js/bundles/crud/src/css-easydata.js @@ -1,4 +1,4 @@ -import '@easydata/ui/dist/assets/css/easy-grid.css' +import '@easydata/ui/dist/assets/css/easy-grid.css' import '@easydata/ui/dist/assets/css/easy-dialog.css' import '@easydata/ui/dist/assets/css/easy-forms.css' -import '../assets/css/ed-view.css' \ No newline at end of file +import '@easydata/crud/dist/assets/css/ed-view.css' \ No newline at end of file diff --git a/easydata.js/bundles/crud/src/index.ts b/easydata.js/bundles/crud/src/index.ts index 9d431e4b..8d2cd35b 100644 --- a/easydata.js/bundles/crud/src/index.ts +++ b/easydata.js/bundles/crud/src/index.ts @@ -2,11 +2,6 @@ import * as ui from "@easydata/ui" import * as crud from "@easydata/crud" -import "@easydata/ui/dist/assets/css/easy-dialog.css" -import "@easydata/ui/dist/assets/css/easy-grid.css" -import "@easydata/ui/dist/assets/css/easy-forms.css" -import "@easydata/crud/dist/browser/ed-view.css" - export { core, ui, diff --git a/easydata.js/packs/crud/rollup.config.mjs b/easydata.js/packs/crud/rollup.config.mjs index 2f3df570..1322ddeb 100644 --- a/easydata.js/packs/crud/rollup.config.mjs +++ b/easydata.js/packs/crud/rollup.config.mjs @@ -85,57 +85,10 @@ export default [ ] }, { - input: './src/api-easydata.js', + input: './src/ed-view.js', cache, plugins: [ progress({ clearLine: true, }), - nodeResolve(), - ], - external: [ - "@easydata/core", "@easydata/ui" - ], - context: "window", - output: [ - { - file: './dist/browser/easydata.js', - format: 'iife', - sourcemap, - banner, - name: "myEasyData", - extend: true, - plugins: [ - ], - globals: { - "@easydata/core": "easydata.core", - "@easydata/ui": "easydata.ui", - } - }, - { - file: './dist/browser/easydata.min.js', - format: 'iife', - sourcemap, - banner, - name: "myEasyData", - extend: true, - plugins: [ - terser({ - keep_classnames: true, - keep_fnames: true, - }) - ], - globals: { - "@easydata/core": "easydata.core", - "@easydata/ui": "easydata.ui", - } - }, - ] - }, - { - input: './src/css-easydata.js', - cache, - plugins: [ - progress({ clearLine: true, }), - nodeResolve(), postcss({ extract: true, minimize: false, @@ -147,14 +100,16 @@ export default [ }), noEmit({ match(fileName, output) { - return 'css-easydata.js' === fileName + return 'ed-view.js' === fileName } }), ], - output: [ - { - file: './dist/browser/ed-view.css', - }, - ] + output: { + dir: './dist/assets/css', + }, + onwarn: message => { + if (/Generated an empty chunk/.test(message)) return; + console.error( message ) + } }, ] \ No newline at end of file diff --git a/easydata.js/packs/crud/src/api-easydata.js b/easydata.js/packs/crud/src/api-easydata.js deleted file mode 100644 index 654aece6..00000000 --- a/easydata.js/packs/crud/src/api-easydata.js +++ /dev/null @@ -1,5 +0,0 @@ -import * as core from '@easydata/core' -import * as ui from '@easydata/ui' -import * as crud from '../dist/easydata.crud' - -export { core, ui, crud } \ No newline at end of file diff --git a/easydata.js/packs/crud/src/ed-view.js b/easydata.js/packs/crud/src/ed-view.js new file mode 100644 index 00000000..3a1be40d --- /dev/null +++ b/easydata.js/packs/crud/src/ed-view.js @@ -0,0 +1 @@ +import '../assets/css/ed-view.css' \ No newline at end of file From 22c94690fe67e332653d51048cfdc842a0dd11e4 Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 18:15:21 +0200 Subject: [PATCH 19/40] Update playground/demo03 --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index a0db612b..966b3c6a 100644 --- a/.gitignore +++ b/.gitignore @@ -387,3 +387,5 @@ dist2 docs2 .nx /playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js +/playground/EasyDataAspNetCoreTest03/wwwroot/css +/playground/EasyDataAspNetCoreTest03/wwwroot/js From fea191f01721ffbbd30a76dd54ec4616b8cffdf9 Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 18:40:31 +0200 Subject: [PATCH 20/40] Update .gitignore --- .gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 5cffe817..7b073819 100644 --- a/.gitignore +++ b/.gitignore @@ -385,4 +385,7 @@ playground/EasyDataAspNetCoreTest01/wwwroot/js/dashboard.js.map .idea dist2 docs2 -.nx \ No newline at end of file +.nx +/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js +/playground/EasyDataAspNetCoreTest03/wwwroot/css/easydata.min.css +/playground/EasyDataAspNetCoreTest03/wwwroot/js/easydata.min.js From 7e5a9e3aaee42f4b4a99fd0e826754a38d66b829 Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 18:48:17 +0200 Subject: [PATCH 21/40] Update playground demos --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 966b3c6a..a7cf51e0 100644 --- a/.gitignore +++ b/.gitignore @@ -389,3 +389,5 @@ docs2 /playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata.min.js /playground/EasyDataAspNetCoreTest03/wwwroot/css /playground/EasyDataAspNetCoreTest03/wwwroot/js +/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata-all.js +/playground/EasyDataAspNetCoreTest01/wwwroot/js/easydata-all.min.js From 0dc0e56005bb1fd092d839c8da341c3bc761e70d Mon Sep 17 00:00:00 2001 From: Sergiy Korzh Date: Wed, 3 Jan 2024 18:48:43 +0200 Subject: [PATCH 22/40] Update playground demos --- playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml | 2 +- playground/EasyDataAspNetCoreTest01/Pages/Index.cshtml | 2 +- playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml | 2 +- playground/EasyDataAspNetCoreTest01/rollup.config.mjs | 4 ++-- playground/EasyDataAspNetCoreTest01/ts/styles.js | 3 +-- playground/EasyDataAspNetCoreTest03/Pages/EasyData.cshtml | 7 ++++++- 6 files changed, 12 insertions(+), 8 deletions(-) diff --git a/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml b/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml index faf8143d..3408a72e 100644 --- a/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml +++ b/playground/EasyDataAspNetCoreTest01/Pages/Crud.cshtml @@ -10,7 +10,7 @@ @section Scripts { - + + } \ No newline at end of file diff --git a/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml b/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml index 51076916..3f226b69 100644 --- a/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml +++ b/playground/EasyDataAspNetCoreTest01/Pages/Orders.cshtml @@ -8,7 +8,7 @@ @section Scripts { @* *@ - + +