zavadil-ts-common 1.2.42 → 1.2.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,11 +1,8 @@
1
- export declare class CacheAsync<T> {
2
- private cache?;
3
- private supplier;
1
+ import { LazyAsync } from "./LazyAsync";
2
+ export declare class CacheAsync<T> extends LazyAsync<T> {
4
3
  private maxAgeMs?;
5
4
  private expires?;
6
5
  constructor(supplier: () => Promise<T>, maxAgeMs?: number);
7
6
  get(): Promise<T>;
8
7
  set(v: T, expires?: Date): void;
9
- hasCache(): boolean;
10
- getCache(): T | undefined;
11
8
  }
@@ -1,6 +1,6 @@
1
1
  export declare class LazyAsync<T> {
2
- private cache?;
3
- private supplier;
2
+ protected cache?: T;
3
+ protected supplier: () => Promise<T>;
4
4
  private promise?;
5
5
  constructor(supplier: () => Promise<T>);
6
6
  get(): Promise<T>;
package/dist/index.d.ts CHANGED
@@ -1,13 +1,20 @@
1
- declare class CacheAsync<T> {
2
- private cache?;
3
- private supplier;
1
+ declare class LazyAsync<T> {
2
+ protected cache?: T;
3
+ protected supplier: () => Promise<T>;
4
+ private promise?;
5
+ constructor(supplier: () => Promise<T>);
6
+ get(): Promise<T>;
7
+ reset(): void;
8
+ hasCache(): boolean;
9
+ getCache(): T | undefined;
10
+ }
11
+
12
+ declare class CacheAsync<T> extends LazyAsync<T> {
4
13
  private maxAgeMs?;
5
14
  private expires?;
6
15
  constructor(supplier: () => Promise<T>, maxAgeMs?: number);
7
16
  get(): Promise<T>;
8
17
  set(v: T, expires?: Date): void;
9
- hasCache(): boolean;
10
- getCache(): T | undefined;
11
18
  }
12
19
 
13
20
  type SortingField = {
@@ -91,17 +98,6 @@ declare class Lazy<T> {
91
98
  hasCache(): boolean;
92
99
  }
93
100
 
94
- declare class LazyAsync<T> {
95
- private cache?;
96
- private supplier;
97
- private promise?;
98
- constructor(supplier: () => Promise<T>);
99
- get(): Promise<T>;
100
- reset(): void;
101
- hasCache(): boolean;
102
- getCache(): T | undefined;
103
- }
104
-
105
101
  type RequestOptions = RequestInit & {
106
102
  headers: Headers;
107
103
  };
package/dist/index.esm.js CHANGED
@@ -1,2 +1,2 @@
1
- var t=function(){function t(t,e){this.supplier=t,this.maxAgeMs=e}return t.prototype.get=function(){var t=this;return void 0===this.cache||this.expires&&this.expires>new Date?this.supplier().then((function(e){return t.set(e),e})):Promise.resolve(this.cache)},t.prototype.set=function(t,e){this.cache=t,this.expires=e,this.maxAgeMs&&void 0===this.expires&&(this.expires=new Date((new Date).getTime()+this.maxAgeMs))},t.prototype.hasCache=function(){return void 0!==this.cache},t.prototype.getCache=function(){return this.cache},t}(),e=function(){function e(t,e){this.cache=new Map,this.maxSize=100,this.supplier=t,e&&(this.maxSize=e)}return e.prototype.obtainCache=function(e){var n=this,r=this.cache.get(e);return r||(r=new t((function(){return n.supplier(e)})),this.cache.set(e,r)),r},e.prototype.get=function(t){return this.obtainCache(t).get()},e.prototype.set=function(t,e,n){this.obtainCache(t).set(e,n)},e.prototype.reset=function(t){t?this.cache.delete(t):this.cache.clear()},e.prototype.getSize=function(){return this.cache.size},e.prototype.getMaxSize=function(){return this.maxSize},e.prototype.getStats=function(){return{cachedItems:this.getSize(),capacity:this.getMaxSize()}},e.prototype.hasCache=function(t){return this.cache.has(t)},e}(),n=function(){function t(t){this.supplier=t}return t.prototype.get=function(){return void 0===this.cache&&(this.cache=this.supplier()),this.cache},t.prototype.reset=function(){this.cache=void 0},t.prototype.hasCache=function(){return void 0!==this.cache},t}(),r=function(){function t(t){this.supplier=t}return t.prototype.get=function(){var t=this;return void 0!==this.cache?Promise.resolve(this.cache):(void 0===this.promise&&(this.promise=this.supplier().then((function(e){return t.cache=e,t.promise=void 0,Promise.resolve(e)})).catch((function(e){return t.promise=void 0,Promise.reject(e)}))),this.promise)},t.prototype.reset=function(){this.cache=void 0},t.prototype.hasCache=function(){return void 0!==this.cache},t.prototype.getCache=function(){return this.cache},t}(),o=function(t,e){return o=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},o(t,e)};function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=t}o(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}var s=function(){return s=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},s.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var u,a=function(){function t(){}return t.toString=function(t){var e,n;return"string"==typeof t?t:null!==(n=null===(e=null==t?void 0:t.toString)||void 0===e?void 0:e.call(t))&&void 0!==n?n:""},t.isEmpty=function(e){return"string"!=typeof e?t.isEmpty(t.toString(e)):0===e.length},t.notEmpty=function(e){return!t.isEmpty(e)},t.isBlank=function(e){return t.isEmpty(t.safeTrim(e))},t.notBlank=function(e){return!t.isBlank(e)},t.substr=function(t,e,n){return this.isEmpty(t)?"":t.substring(e,n)},t.replace=function(t,e,n){return this.isEmpty(t)||this.isEmpty(e)?"":t.replace(e,String(n))},t.containsLineBreaks=function(t){return null!=t&&0!==t.trim().length&&t.includes("\n")},t.trimLeadingSlashes=function(t){return this.isEmpty(t)?"":t.replace(/^\//g,"")},t.trimTrailingSlashes=function(t){return this.isEmpty(t)?"":t.replace(/\/$/g,"")},t.trimSlashes=function(t){return this.isEmpty(t)?"":t.replace(/^\/|\/$/g,"")},t.safeTruncate=function(e,n,r){return void 0===r&&(r=""),t.isEmpty(e)||!e?"":e.length<=n?String(e):e.substring(0,n-r.length)+r},t.ellipsis=function(e,n,r){return void 0===r&&(r="..."),t.safeTruncate(e,n,r)},t.safeTrim=function(e){return t.isEmpty(e)||!e?"":e.trim()},t.safeLowercase=function(e){return t.isEmpty(e)||!e?"":e.toLowerCase()},t.safeUppercase=function(e){return t.isEmpty(e)||!e?"":e.toUpperCase()},t.toBigInt=function(t){return this.isEmpty(t)?null:BigInt(t)},t.getNonEmpty=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.find((function(e){return t.notEmpty(e)}))||""},t.getNonBlank=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.find((function(e){return t.notBlank(e)}))||""},t.emptyToNull=function(e){return t.isEmpty(e)?null:String(e)},t.blankToNull=function(e){return t.isBlank(e)?null:String(e)},t}(),c=function(){function t(){}return t.isEmpty=function(t){return null==t},t.notEmpty=function(e){return!t.isEmpty(e)},t.clone=function(t){if(null===t)throw new Error("Null cannot be cloned!");if("object"!=typeof t)throw new Error("Not an object, cannot be cloned!");return s({},t)},t.getNestedValue=function(t,e){if(!t||a.isBlank(e))return"";for(var n=t,r=0,o=e.split(".");r<o.length;r++){var i=o[r];if(!n||"object"!=typeof n||!(i in n))return"";n=n[i]}return a.toString(n)},t}(),h=function(){function t(){}return t.isEmpty=function(t){return c.isEmpty(t)||0===t.length},t.notEmpty=function(e){return!t.isEmpty(e)},t.remove=function(e,n){return t.isEmpty(e)?[]:null==e?void 0:e.filter((function(t){return t!==n}))},t}(),p=function(){function t(){}return t.sleep=function(t){return new Promise((function(e){return setTimeout(e,t)}))},t}(),f=function(){function t(){}return t.formatByteSize=function(t){var e=Number(t);if(null===e||Number.isNaN(e))return"";if(0===e)return"0";var n=Math.floor(Math.log(e)/Math.log(1024));return 1*+(e/Math.pow(1024,n)).toFixed(2)+" "+["B","kB","MB","GB","TB"][n]},t}(),l={page:0,size:10},g=function(){function t(){}return t.sortingFieldToString=function(t){if(!t)return"";var e=[];return e.push(t.name),e.push(t.desc?"desc":""),e.push(t.nullsLast?"nl":""),e.join("-")},t.sortingFieldFromString=function(t){var e=t.split("-");return{name:e[0],desc:e.length>1&&"desc"===a.safeLowercase(e[1]),nullsLast:e.length>2&&"nl"===a.safeLowercase(e[2])}},t.sortingRequestToString=function(e){return e.map((function(e){return t.sortingFieldToString(e)})).join("+")},t.sortingRequestFromString=function(e){return e?e.split("+").map((function(e){return t.sortingFieldFromString(e)})):[]},t.pagingRequestToQueryParams=function(e){if(e){var n={page:e.page,size:e.size};return e.search&&(n.search=e.search),e.sorting&&(n.sorting=t.sortingRequestToString(e.sorting)),n}},t.pagingRequestToString=function(e){if(!e)return"";var n=[];return n.push(String(e.page)),n.push(String(e.size)),n.push(a.safeTrim(e.search)),n.push(e.sorting?t.sortingRequestToString(e.sorting):""),n.join(":")},t.pagingRequestFromString=function(e){if(!e||a.isEmpty(e))return s({},l);var n=e.split(":");return n.length<4?s({},l):{page:Number(n[0]),size:Number(n[1]),search:String(n[2]),sorting:a.isEmpty(n[3])?void 0:t.sortingRequestFromString(n[3])}},t}(),d=function(){function t(){}return t.formatNumber=function(t,e){return void 0===e&&(e=2),String(t).padStart(e,"0")},t.parseDate=function(t){if(t)return"string"==typeof t?new Date(t):t},t.formatDateForHumans=function(e,n){if(void 0===n&&(n=!1),!(e=t.parseDate(e)))return"";var r=e.getFullYear(),o=t.formatNumber(e.getMonth()+1),i=t.formatNumber(e.getDate()),s="".concat(r,"-").concat(o,"-").concat(i);if(!n)return s;var u=t.formatNumber(e.getHours()),a=t.formatNumber(e.getMinutes()),c=t.formatNumber(e.getSeconds());return"".concat(s," ").concat(u,":").concat(a,":").concat(c)},t.formatDateTimeForHumans=function(e){return t.formatDateForHumans(e,!0)},t.formatDateForInput=function(e){var n=t.parseDate(e);if(void 0===n)return"";var r=n.getFullYear(),o=t.formatNumber(n.getMonth()+1),i=t.formatNumber(n.getDate());return"".concat(r,"-").concat(o,"-").concat(i)},t.getDurationMs=function(e,n){if(e=t.parseDate(e),n=t.parseDate(n),c.isEmpty(e)||c.isEmpty(n))return null;try{return n.getTime()-e.getTime()}catch(t){return null}},t.getSinceDurationMs=function(e){return t.getDurationMs(e,new Date)},t.formatDuration=function(t){if(!t)return"";var e=Math.floor(t/1e3);t-=1e3*e;var n=Math.floor(e/60);e-=60*n;var r=Math.floor(n/60);n-=60*r;var o=Math.floor(r/24);r-=24*o;var i=[];return o>0&&i.push("".concat(o,"d")),r>0&&i.push("".concat(r,"h")),n>0&&i.push("".concat(n,"m")),e>0&&0===o&&0===r&&i.push("".concat(e,"s")),t>0&&0===o&&0===r&&0===n&&i.push("".concat(t,"ms")),i.join(" ")},t}(),y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.parseNumber=function(t){if(!t)return null;var e=Number(t);return Number.isNaN(e)?null:e},e.round=function(t,e){e||(e=0);var n=Math.pow(10,e);return Math.round(t*n)/n},e.portionToPercent=function(t,n){if(null==t)return"";var r=e.round(100*t,n);return"".concat(r,"%")},e}(c),v=function(){function t(){}return t.dateParser=function(e,n){return"string"==typeof n&&t.reISO.exec(n)?new Date(n):n},t.parseWithDates=function(e){if(!a.isBlank(e))return JSON.parse(a.getNonEmpty(e),t.dateParser)},t.parse=function(e){return t.parseWithDates(e)},t.reISO=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/,t}(),m=function(){function t(e){a.isBlank(e)?this.baseUrl=t.baseHostUrl():(e.endsWith("/")||(e+="/"),this.baseUrl=e.startsWith("http")?new URL(e):new URL(e,t.baseHostUrl()))}return t.baseHostUrl=function(){return new URL("".concat(window.location.protocol,"//").concat(window.location.host,"/"))},t.pagingRequestToQueryParams=function(t){return g.pagingRequestToQueryParams(t)},t.paramsToQueryString=function(t){if(!t)return"";var e=new URLSearchParams(t),n=new URLSearchParams;e.forEach((function(t,e){""!==t&&void 0!==t&&"undefined"!==t&&n.set(e,t)}));var r=n.toString();return a.isEmpty(r)?"":"?".concat(r)},t.prototype.getHeaders=function(t){var e=new Headers;return e.set("Content-Type","application/json"),Promise.resolve(e)},t.prototype.getBaseUrl=function(){return this.baseUrl},t.prototype.getUrl=function(t,e){var n=new URL(a.trimLeadingSlashes(t),this.baseUrl);return e&&Object.keys(e).forEach((function(t){var r=e[t];""!==r&&void 0!==r&&"undefined"!==r&&n.searchParams.set(t,r)})),n},t.prototype.getRequestOptions=function(t,e,n){return void 0===e&&(e="GET"),void 0===n&&(n=null),this.getHeaders(t).then((function(t){return{method:e,headers:t,body:null===n?null:n instanceof FormData?n:JSON.stringify(n)}}))},t.prototype.processRequest=function(t,e,n){return fetch(this.getUrl(t,e),n).then((function(t){if(!t.ok){var e={cause:t.status};return"application/json"===t.headers.get("Content-Type")?t.json().then((function(n){if(n.message)throw new Error(n.message,e);if(n.error)throw new Error(n.error,e);throw new Error(t.statusText,e)}),(function(){throw new Error(t.statusText,e)})):t.text().then((function(n){throw a.isEmpty(n)?new Error(t.statusText,e):new Error(n,e)}),(function(){throw new Error(t.statusText,e)}))}return t}))},t.prototype.processRequestJson=function(t,e,n){return this.processRequest(t,e,n).then((function(t){return t.text().then(v.parseWithDates)}))},t.prototype.getJson=function(t,e){var n=this;return this.getRequestOptions(t).then((function(r){return n.processRequestJson(t,e,r)}))},t.prototype.postJson=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"POST",e).then((function(e){return n.processRequestJson(t,null,e)}))},t.prototype.postForm=function(t,e){var n=this;return this.getRequestOptions(t,"POST",e).then((function(e){return e.headers.delete("Content-Type"),n.processRequest(t,null,e)}))},t.prototype.postFormJson=function(t,e){var n=this;return this.getRequestOptions(t,"POST",e).then((function(e){return e.headers.delete("Content-Type"),n.processRequestJson(t,null,e)}))},t.prototype.putJson=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"PUT",e).then((function(e){return n.processRequestJson(t,null,e)}))},t.prototype.get=function(t,e){var n=this;return this.getRequestOptions(t).then((function(r){return n.processRequest(t,e,r)}))},t.prototype.del=function(t){var e=this;return this.getRequestOptions(t,"DELETE").then((function(n){return e.processRequest(t,null,n)}))},t.prototype.post=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"POST",e).then((function(e){return n.processRequest(t,null,e)}))},t.prototype.put=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"PUT",e).then((function(e){return n.processRequest(t,null,e)}))},t}(),T=function(){function t(t,e){this.client=t,this.name=e}return t.prototype.loadSingle=function(t){return this.client.getJson("".concat(this.name,"/").concat(t))},t.prototype.loadPage=function(t){return this.client.getJson(this.name,m.pagingRequestToQueryParams(t))},t.prototype.save=function(t){return t.id?this.client.putJson("".concat(this.name,"/").concat(t.id),t):this.client.postJson(this.name,t)},t.prototype.delete=function(t){return this.client.del("".concat(this.name,"/").concat(t))},t}(),k=function(t){function n(n,r,o){var i=t.call(this,n,r)||this;return i.cache=new e((function(e){return t.prototype.loadSingle.call(i,e)}),o),i}return i(n,t),n.prototype.loadSingle=function(t){return this.cache.get(t)},n.prototype.save=function(e){var n=this;return t.prototype.save.call(this,e).then((function(t){return t.id&&n.cache.set(t.id,t),t}))},n.prototype.delete=function(e){var n=this;return t.prototype.delete.call(this,e).then((function(){return n.cache.reset(e)}))},n.prototype.reset=function(t){this.cache.reset(t)},n.prototype.getStats=function(){return this.cache.getStats()},n}(T),S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i(e,t),e.prototype.loadSingle=function(t){throw new Error("Use loadSingleStub() instead!")},e.prototype.loadSingleStub=function(t){return this.client.getJson("".concat(this.name,"/").concat(t))},e.prototype.save=function(t){throw new Error("Use saveStub() instead!")},e.prototype.saveStub=function(t){return t.id?this.client.putJson("".concat(this.name,"/").concat(t.id),t):this.client.postJson(this.name,t)},e}(T),w=function(t){function e(e,n){var o=t.call(this,e,n)||this;return o.cache=new r((function(){return o.loadAllInternal()})),o}return i(e,t),e.prototype.loadAllInternal=function(){return this.client.getJson("".concat(this.name,"/all"))},e.prototype.loadAll=function(){return this.cache.get()},e.prototype.loadSingle=function(t){var e=this;return this.loadAll().then((function(n){var r=n.find((function(e){return e.id===t}));if(void 0===t)throw new Error("".concat(e.name," id ").concat(t," not found!"));return r}))},e.prototype.save=function(e){var n=this;return t.prototype.save.call(this,e).then((function(t){return n.cache.reset(),t}))},e.prototype.delete=function(e){var n=this;return t.prototype.delete.call(this,e).then((function(){return n.cache.reset()}))},e.prototype.reset=function(){this.cache.reset()},e.prototype.getStats=function(){var t,e=null===(t=this.cache.getCache())||void 0===t?void 0:t.length;return{cachedItems:e||0,capacity:e||0}},e}(T),I=function(){function t(){this.handlers=new Map}return t.prototype.addEventListener=function(t,e){this.handlers.has(t)||this.handlers.set(t,[]),this.handlers.get(t).push(e)},t.prototype.removeEventListener=function(t,e){var n=this.handlers.get(t);n&&n.splice(n.indexOf(e),1)},t.prototype.triggerEvent=function(t,e){this.handlers.has(t)&&this.handlers.get(t).forEach((function(t){return t(e)}))},t}();!function(t){t.info="info",t.warning="warning",t.error="danger"}(u||(u={}));var E=function(){function t(t){void 0===t&&(t=10),this.maxAlerts=t,this.em=new I,this.alerts=[]}return t.prototype.addOnChangeHandler=function(t){this.em.addEventListener("change",t)},t.prototype.removeOnChangeHandler=function(t){this.em.removeEventListener("change",t)},t.prototype.triggerChange=function(){this.em.triggerEvent("change")},t.prototype.reset=function(){this.alerts=[],this.triggerChange()},t.prototype.remove=function(t){this.alerts.splice(this.alerts.indexOf(t),1),this.triggerChange()},t.prototype.add=function(t){for(this.alerts.push(t);this.alerts.length>this.maxAlerts;)this.alerts.shift();this.triggerChange()},t.prototype.custom=function(t,e){this.add({time:new Date,type:t,message:e})},t.prototype.err=function(t){this.custom(u.error,"string"==typeof t?t:t.toString())},t.prototype.warn=function(t){this.custom(u.warning,t)},t.prototype.info=function(t){this.custom(u.info,t)},t.prototype.getSummary=function(){var t=new Map;Object.values(u).forEach((function(e,n){t.set(e,0)}));for(var e=0;e<this.alerts.length;e++){var n=this.alerts[e],r=t.get(n.type)||0;t.set(n.type,r+1)}return t},t}(),b=function(){function t(t,e){void 0===e&&(e=!1);var n=this;this.isCancelled={value:!1},this.throwWhenCancelled=e,this.promise=new Promise((function(e,r){t.then((function(t){if(!n.isCancelled.value)return e(t)})).catch((function(t){!n.throwWhenCancelled&&n.isCancelled.value||r(t)}))}))}return t.prototype.cancel=function(){this.isCancelled.value=!0},t}(),x=function(t){function e(e){return t.call(this,"".concat(a.trimSlashes(e),"/api/oauth"))||this}return i(e,t),e.prototype.jwks=function(){return this.getJson("jwks.json")},e.prototype.verifyIdToken=function(t){return this.getJson("id-tokens/verify/".concat(t))},e.prototype.requestIdTokenFromLogin=function(t){return this.postJson("id-tokens/from-login",t)},e.prototype.refreshIdToken=function(t){return this.postJson("id-tokens/refresh",t)},e.prototype.requestAccessToken=function(t){return this.postJson("access-tokens/from-id-token",t)},e}(m),P=function(){function t(){}return t.isValidToken=function(e){return null!=e&&a.notEmpty(e.token)&&!t.isTokenExpired(e)},t.isTokenExpired=function(t){return null!=t&&(void 0!==t.expires&&null!==t.expires&&t.expires<new Date)},t.isTokenReadyForRefresh=function(e){return null!=e&&(!t.isTokenExpired(e)&&(void 0!==e.expires&&null!==e.expires&&new Date((e.expires.getTime()+e.issuedAt.getTime())/2)<new Date))},t}(),R=function(){function t(t,e,n){this.freshIdTokenProvider=n,this.audience=e,this.oAuthServer=new x(t),this.accessTokens=new Map}return t.prototype.hasValidIdToken=function(){return P.isValidToken(this.idToken)},t.prototype.hasValidAccessToken=function(t){return P.isValidToken(this.accessTokens.get(t))},t.prototype.reset=function(){this.idToken=void 0,this.accessTokens.clear()},t.prototype.getIdTokenInternal=function(){return void 0!==this.idToken&&this.hasValidIdToken()?Promise.resolve(this.idToken):this.freshIdTokenProvider.getIdToken()},t.prototype.getIdToken=function(){var t=this;return this.getIdTokenInternal().then((function(e){return P.isValidToken(e)?P.isTokenReadyForRefresh(e)?t.oAuthServer.refreshIdToken({idToken:e.token}).then((function(e){return t.setIdToken(e),e})):(t.setIdToken(e),Promise.resolve(e)):Promise.reject("Received invalid ID token!")}))},t.prototype.getIdTokenRaw=function(){return this.getIdToken().then((function(t){return t.token}))},t.prototype.setIdToken=function(t){this.idToken=t},t.prototype.verifyIdToken=function(t){return this.oAuthServer.verifyIdToken(t)},t.prototype.login=function(t,e){var n=this;return this.reset(),this.oAuthServer.requestIdTokenFromLogin({login:t,password:e,targetAudience:this.audience}).then((function(t){return n.setIdToken(t)}))},t.prototype.getAccessTokenInternal=function(t){var e=this;return this.getIdTokenRaw().then((function(n){return e.oAuthServer.requestAccessToken({idToken:n,targetAudience:e.audience,privilege:t}).then((function(n){return P.isValidToken(n)?(e.accessTokens.set(t,n),n):Promise.reject("Received access token is not valid!")}))}))},t.prototype.getAccessToken=function(t){var e=this.accessTokens.get(t);return void 0!==e&&P.isValidToken(e)?(P.isTokenReadyForRefresh(e)&&this.getAccessTokenInternal(t),Promise.resolve(e.token)):this.getAccessTokenInternal(t).then((function(t){return t.token}))},t}(),M=function(){function t(t){this.value=t}return t.prototype.getSubjectType=function(){return a.isEmpty(this.value)?null:this.value.split(":")[0]},t.prototype.getSubjectContent=function(){if(a.isEmpty(this.value))return null;var t=this.value.split("//");return t.length>1?t[1]:null},t.prototype.toString=function(){return this.value},t}(),N=function(){function t(){}return t.prototype.redirectTo=function(t){return this.redirecting=t,document.location.href=t,Promise.reject("Redirecting to ".concat(t))},t.prototype.isRedirecting=function(){return a.notBlank(this.redirecting)},t.prototype.redirectingTo=function(){return a.getNonEmpty(this.redirecting)},t}(),q=function(){function t(){}return t.deleteParamFromUrl=function(t,e){return new URL(t).searchParams.delete(e),a.trimTrailingSlashes(t.toString())},t.extractParamFromUrl=function(t,e){return new URLSearchParams(new URL(t).search).get(e)},t.paramExistsInUrl=function(e,n){return a.notBlank(t.extractParamFromUrl(e,n))},t}(),D=function(t){function e(e,n){var r=t.call(this)||this;return r.client=e,r.tokenQueryName=n||"token",r}return i(e,t),e.prototype.redirectToLogin=function(){var t=this;return this.client.getServerInfo().then((function(e){var n=q.deleteParamFromUrl(document.location.toString(),t.tokenQueryName),r="".concat(e.oauthServerUrl,"/login?app_name=").concat(e.targetAudience,"&redirect_url=").concat(n);return t.redirectTo(r)})).catch((function(t){return console.error("Redirection failed: OAuth info not fetched:",t),Promise.reject(t)}))},e.prototype.getIdToken=function(){return this.redirectToLogin()},e}(N),A=function(){function t(t,e){this.client=t,this.tokenQueryName=e||"token"}return t.prototype.getIdTokenFromUrl=function(){return q.extractParamFromUrl(document.location.toString(),this.tokenQueryName)},t.prototype.getIdToken=function(){var t=this.getIdTokenFromUrl();return null===t||a.isBlank(t)?Promise.reject("No token in URL!"):this.client.getTokenManager().then((function(e){return e.verifyIdToken(t)}))},t}(),L=function(){function t(t){this.key=t||""}return t.prototype.saveIdTokenToLocalStorage=function(t){var e=t?JSON.stringify(t):null;null!==e?localStorage.setItem(this.key,e):localStorage.removeItem(this.key)},t.prototype.getIdTokenFromLocalStorage=function(){return v.parse(localStorage.getItem(this.key))},t.prototype.getIdToken=function(){var t=this.getIdTokenFromLocalStorage();return t&&P.isValidToken(t)?Promise.resolve(t):Promise.reject("No valid token found in storage!")},t}(),U=function(){function t(t,e,n){this.login=new D(t,n),this.url=new A(t,n),this.storage=new L(e)}return t.prototype.getIdToken=function(){var t=this;return this.url.getIdToken().catch((function(e){return console.log("No token in url, loading from storage",e),t.storage.getIdToken().catch((function(e){return console.log("No token in storage, redirecting to login page",e),t.login.getIdToken()}))})).then((function(e){return t.storage.saveIdTokenToLocalStorage(e),e}))},t}(),O=function(t){function e(e,n,o){void 0===o&&(o="*");var i=t.call(this,e)||this;return i.freshIdTokenProvider=n||new U(i),i.defaultPrivilege=o,i.insecureClient=new m(e),i.serverInfo=new r((function(){return i.getServerInfoInternal()})),i.tokenManager=new r((function(){return i.getTokenManagerInternal()})),i}return i(e,t),e.prototype.getIdToken=function(){return this.getTokenManager().then((function(t){return t.getIdToken()}))},e.prototype.initialize=function(){return this.getIdToken()},e.prototype.logout=function(){var t=this;return this.getTokenManager().then((function(t){return t.reset()})).then((function(){return t.initialize()}))},e.prototype.getPrivilege=function(t){return this.defaultPrivilege},e.prototype.getServerInfoInternal=function(){return this.insecureClient.getJson("status/oauth/info")},e.prototype.getServerInfo=function(){return this.serverInfo.get()},e.prototype.getTokenManagerInternal=function(){var t=this;return this.getServerInfo().then((function(e){return new R(e.oauthServerUrl,e.targetAudience,t.freshIdTokenProvider)}))},e.prototype.getTokenManager=function(){return this.tokenManager.get()},e.prototype.login=function(t,e){return this.getTokenManager().then((function(n){return n.login(t,e)}))},e.prototype.setIdToken=function(t){return this.getTokenManager().then((function(e){return e.setIdToken(t)}))},e.prototype.getHeaders=function(e){var n=this;return this.getTokenManager().then((function(t){return t.getAccessToken(n.getPrivilege(e))})).then((function(r){return t.prototype.getHeaders.call(n,e).then((function(t){return t.set("Authorization","Bearer ".concat(r)),t}))}))},e}(m),C=function(){function t(t,e){this.x=t,this.y=e}return t.prototype.distanceTo=function(t){return Math.sqrt(Math.pow(this.x-t.x,2)+Math.pow(this.y-t.y,2))},t.prototype.equalsTo=function(t){return!!t&&(this.x===t.x&&this.y===t.y)},t.prototype.size=function(){return this.distanceTo(new t(0,0))},t.prototype.inSize=function(e){var n=this.size();if(0!==n){var r=e/n;return new t(this.x*r,this.y*r)}return this},t.prototype.round=function(){return new t(Math.round(this.x),Math.round(this.y))},t.prototype.add=function(e){return new t(this.x+e.x,this.y+e.y)},t.prototype.multiply=function(e){return new t(this.x*e,this.y*e)},t.prototype.subtract=function(e){return new t(this.x-e.x,this.y-e.y)},t.prototype.sub=function(t){return this.subtract(t)},t.prototype.toArray=function(){return[this.x,this.y]},t.fromArray=function(e){if("object"==typeof e&&2===e.length)return new t(e[0],e[1])},t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.getAngleToYAxis=function(t){var e=t.subtract(this),n=e.y<0,r=e.x/e.size(),o=Math.asin(r);return(n?Math.PI-o:o)||0},t.prototype.getNeighborPositions=function(e,n){void 0===e&&(e=1),void 0===n&&(n=!1);for(var r=[],o=this.x+e,i=this.x-e;i<=o;i++)for(var s=this.y+e,u=this.y-e;u<=s;u++){var a=new t(i,u);!n&&this.equalsTo(a)||r.push(a)}return r},t.prototype.getClosest=function(t){if(!t||0===t.length)return null;if(1===t.length)return t[0];for(var e=t[0],n=this.distanceTo(e),r=1,o=t.length;r<o;r++){var i=this.distanceTo(t[r]);i<n&&(e=t[r],n=i)}return e},t.prototype.toString=function(t){return void 0===t&&(t=2),"[".concat(y.round(this.x,t),",").concat(y.round(this.y,t),"]")},t}(),F={"--self-name":"Čeština",Anonymous:"Anonym",Administrator:"Administrátor",Back:"Zpět",File:"Soubor",Language:"Jazyk",Image:"Obrázek",Status:"Stav",State:"Stav",System:"Systém",Date:"Datum",Page:"Stránka","Page size":"Velikost stránky","Total items":"Celkem záznamů","Log out":"Odhlásit",Move:"Přesunout",Delete:"Smazat",Close:"Zavřít",Edit:"Upravit",Save:"Uložit",Refresh:"Obnovit",Select:"Vybrat","More...":"Více...",New:[{tags:["feminine"],value:"Nová"},{value:"Nový"}],Name:[{tags:["neutral"],value:"Název"},{value:"Jméno"}]},j={"--self-name":"English"},z=function(){function t(t){this.data=t}return t.prototype.translate=function(t,e){var n=this.data[t];if(void 0===n||"string"==typeof n)return n;var r=n.find((function(t){return void 0===t.tags||0===t.tags.length}));if((void 0===e||void 0===e.tags||0===e.tags.length)&&void 0!==r)return r.value;var o=n.filter((function(t){return void 0!==t.tags&&0!==t.tags.length&&(e&&e.tags&&e.tags.every((function(e){return t.tags&&t.tags.includes(e)})))}));return o.length>0?o[0].value:r?r.value:void 0},t}(),J=function(t){function e(){return t.call(this,F)||this}return i(e,t),e}(z),B=function(t){function e(){return t.call(this,j)||this}return i(e,t),e}(z),H=function(){function t(t,e){this.primary=t,this.fallback=e}return t.prototype.translate=function(t,e){var n=this.primary.translate(t,e);return void 0===n?this.fallback.translate(t,e):n},t}(),V=function(){function t(t){this.dictionaries=new Map,this.setLanguage(t)}return t.prototype.addDictionary=function(t,e){var n=this.dictionaries.get(t);n?this.dictionaries.set(t,new H(e,n)):this.dictionaries.set(t,e)},t.prototype.hasDictionary=function(t){return!!t&&this.dictionaries.has(t)},t.prototype.getLanguage=function(){return this.language},t.prototype.getLanguages=function(){return Array.from(this.dictionaries.keys())},t.prototype.setLanguage=function(t){this.language=t&&this.hasDictionary(t)?t:this.hasDictionary(navigator.language)?navigator.language:void 0},t.prototype.translate=function(t,e,n){if(!(n=n||this.language))return t;var r=this.dictionaries.get(n);if(!r)return t;var o=r.translate(t,e);return void 0===o?t:o},t}(),_=function(t){function e(e){var n=t.call(this)||this;return n.addDictionary("cs",new J),n.addDictionary("en",new B),n.setLanguage(e),n}return i(e,t),e}(V);export{h as ArrayUtil,p as AsyncUtil,_ as BasicLocalization,f as ByteUtil,t as CacheAsync,b as CancellablePromise,J as CzechBasicDictionary,d as DateUtil,H as DictionaryWithFallback,B as EnglishBasicDictionary,k as EntityCachedClient,T as EntityClient,S as EntityClientWithStub,I as EventManager,e as HashCacheAsync,v as JsonUtil,n as Lazy,r as LazyAsync,V as Localization,w as LookupClient,z as MemoryDictionary,y as NumberUtil,x as OAuthRestClient,M as OAuthSubject,R as OAuthTokenManager,c as ObjectUtil,g as PagingUtil,m as RestClient,O as RestClientWithOAuth,a as StringUtil,u as UserAlertType,E as UserAlerts,C as Vector2};
1
+ var t=function(e,n){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])},t(e,n)};function e(e,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function r(){this.constructor=e}t(e,n),e.prototype=null===n?Object.create(n):(r.prototype=n.prototype,new r)}var n=function(){return n=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var r,o=function(){function t(t){this.supplier=t}return t.prototype.get=function(){var t=this;return void 0!==this.cache?Promise.resolve(this.cache):(void 0===this.promise&&(this.promise=this.supplier().then((function(e){return t.cache=e,t.promise=void 0,Promise.resolve(e)})).catch((function(e){return t.promise=void 0,Promise.reject(e)}))),this.promise)},t.prototype.reset=function(){this.cache=void 0},t.prototype.hasCache=function(){return void 0!==this.cache},t.prototype.getCache=function(){return this.cache},t}(),i=function(t){function n(e,n){var r=t.call(this,e)||this;return r.maxAgeMs=n,r}return e(n,t),n.prototype.get=function(){return this.expires&&this.expires>new Date&&this.reset(),t.prototype.get.call(this)},n.prototype.set=function(t,e){this.cache=t,this.expires=e,this.maxAgeMs&&void 0===this.expires&&(this.expires=new Date((new Date).getTime()+this.maxAgeMs))},n}(o),s=function(){function t(t,e){this.cache=new Map,this.maxSize=100,this.supplier=t,e&&(this.maxSize=e)}return t.prototype.obtainCache=function(t){var e=this,n=this.cache.get(t);return n||(n=new i((function(){return e.supplier(t)})),this.cache.set(t,n)),n},t.prototype.get=function(t){return this.obtainCache(t).get()},t.prototype.set=function(t,e,n){this.obtainCache(t).set(e,n)},t.prototype.reset=function(t){t?this.cache.delete(t):this.cache.clear()},t.prototype.getSize=function(){return this.cache.size},t.prototype.getMaxSize=function(){return this.maxSize},t.prototype.getStats=function(){return{cachedItems:this.getSize(),capacity:this.getMaxSize()}},t.prototype.hasCache=function(t){return this.cache.has(t)},t}(),u=function(){function t(t){this.supplier=t}return t.prototype.get=function(){return void 0===this.cache&&(this.cache=this.supplier()),this.cache},t.prototype.reset=function(){this.cache=void 0},t.prototype.hasCache=function(){return void 0!==this.cache},t}(),a=function(){function t(){}return t.toString=function(t){var e,n;return"string"==typeof t?t:null!==(n=null===(e=null==t?void 0:t.toString)||void 0===e?void 0:e.call(t))&&void 0!==n?n:""},t.isEmpty=function(e){return"string"!=typeof e?t.isEmpty(t.toString(e)):0===e.length},t.notEmpty=function(e){return!t.isEmpty(e)},t.isBlank=function(e){return t.isEmpty(t.safeTrim(e))},t.notBlank=function(e){return!t.isBlank(e)},t.substr=function(t,e,n){return this.isEmpty(t)?"":t.substring(e,n)},t.replace=function(t,e,n){return this.isEmpty(t)||this.isEmpty(e)?"":t.replace(e,String(n))},t.containsLineBreaks=function(t){return null!=t&&0!==t.trim().length&&t.includes("\n")},t.trimLeadingSlashes=function(t){return this.isEmpty(t)?"":t.replace(/^\//g,"")},t.trimTrailingSlashes=function(t){return this.isEmpty(t)?"":t.replace(/\/$/g,"")},t.trimSlashes=function(t){return this.isEmpty(t)?"":t.replace(/^\/|\/$/g,"")},t.safeTruncate=function(e,n,r){return void 0===r&&(r=""),t.isEmpty(e)||!e?"":e.length<=n?String(e):e.substring(0,n-r.length)+r},t.ellipsis=function(e,n,r){return void 0===r&&(r="..."),t.safeTruncate(e,n,r)},t.safeTrim=function(e){return t.isEmpty(e)||!e?"":e.trim()},t.safeLowercase=function(e){return t.isEmpty(e)||!e?"":e.toLowerCase()},t.safeUppercase=function(e){return t.isEmpty(e)||!e?"":e.toUpperCase()},t.toBigInt=function(t){return this.isEmpty(t)?null:BigInt(t)},t.getNonEmpty=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.find((function(e){return t.notEmpty(e)}))||""},t.getNonBlank=function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return e.find((function(e){return t.notBlank(e)}))||""},t.emptyToNull=function(e){return t.isEmpty(e)?null:String(e)},t.blankToNull=function(e){return t.isBlank(e)?null:String(e)},t}(),c=function(){function t(){}return t.isEmpty=function(t){return null==t},t.notEmpty=function(e){return!t.isEmpty(e)},t.clone=function(t){if(null===t)throw new Error("Null cannot be cloned!");if("object"!=typeof t)throw new Error("Not an object, cannot be cloned!");return n({},t)},t.getNestedValue=function(t,e){if(!t||a.isBlank(e))return"";for(var n=t,r=0,o=e.split(".");r<o.length;r++){var i=o[r];if(!n||"object"!=typeof n||!(i in n))return"";n=n[i]}return a.toString(n)},t}(),h=function(){function t(){}return t.isEmpty=function(t){return c.isEmpty(t)||0===t.length},t.notEmpty=function(e){return!t.isEmpty(e)},t.remove=function(e,n){return t.isEmpty(e)?[]:null==e?void 0:e.filter((function(t){return t!==n}))},t}(),p=function(){function t(){}return t.sleep=function(t){return new Promise((function(e){return setTimeout(e,t)}))},t}(),f=function(){function t(){}return t.formatByteSize=function(t){var e=Number(t);if(null===e||Number.isNaN(e))return"";if(0===e)return"0";var n=Math.floor(Math.log(e)/Math.log(1024));return 1*+(e/Math.pow(1024,n)).toFixed(2)+" "+["B","kB","MB","GB","TB"][n]},t}(),l={page:0,size:10},g=function(){function t(){}return t.sortingFieldToString=function(t){if(!t)return"";var e=[];return e.push(t.name),e.push(t.desc?"desc":""),e.push(t.nullsLast?"nl":""),e.join("-")},t.sortingFieldFromString=function(t){var e=t.split("-");return{name:e[0],desc:e.length>1&&"desc"===a.safeLowercase(e[1]),nullsLast:e.length>2&&"nl"===a.safeLowercase(e[2])}},t.sortingRequestToString=function(e){return e.map((function(e){return t.sortingFieldToString(e)})).join("+")},t.sortingRequestFromString=function(e){return e?e.split("+").map((function(e){return t.sortingFieldFromString(e)})):[]},t.pagingRequestToQueryParams=function(e){if(e){var n={page:e.page,size:e.size};return e.search&&(n.search=e.search),e.sorting&&(n.sorting=t.sortingRequestToString(e.sorting)),n}},t.pagingRequestToString=function(e){if(!e)return"";var n=[];return n.push(String(e.page)),n.push(String(e.size)),n.push(a.safeTrim(e.search)),n.push(e.sorting?t.sortingRequestToString(e.sorting):""),n.join(":")},t.pagingRequestFromString=function(e){if(!e||a.isEmpty(e))return n({},l);var r=e.split(":");return r.length<4?n({},l):{page:Number(r[0]),size:Number(r[1]),search:String(r[2]),sorting:a.isEmpty(r[3])?void 0:t.sortingRequestFromString(r[3])}},t}(),d=function(){function t(){}return t.formatNumber=function(t,e){return void 0===e&&(e=2),String(t).padStart(e,"0")},t.parseDate=function(t){if(t)return"string"==typeof t?new Date(t):t},t.formatDateForHumans=function(e,n){if(void 0===n&&(n=!1),!(e=t.parseDate(e)))return"";var r=e.getFullYear(),o=t.formatNumber(e.getMonth()+1),i=t.formatNumber(e.getDate()),s="".concat(r,"-").concat(o,"-").concat(i);if(!n)return s;var u=t.formatNumber(e.getHours()),a=t.formatNumber(e.getMinutes()),c=t.formatNumber(e.getSeconds());return"".concat(s," ").concat(u,":").concat(a,":").concat(c)},t.formatDateTimeForHumans=function(e){return t.formatDateForHumans(e,!0)},t.formatDateForInput=function(e){var n=t.parseDate(e);if(void 0===n)return"";var r=n.getFullYear(),o=t.formatNumber(n.getMonth()+1),i=t.formatNumber(n.getDate());return"".concat(r,"-").concat(o,"-").concat(i)},t.getDurationMs=function(e,n){if(e=t.parseDate(e),n=t.parseDate(n),c.isEmpty(e)||c.isEmpty(n))return null;try{return n.getTime()-e.getTime()}catch(t){return null}},t.getSinceDurationMs=function(e){return t.getDurationMs(e,new Date)},t.formatDuration=function(t){if(!t)return"";var e=Math.floor(t/1e3);t-=1e3*e;var n=Math.floor(e/60);e-=60*n;var r=Math.floor(n/60);n-=60*r;var o=Math.floor(r/24);r-=24*o;var i=[];return o>0&&i.push("".concat(o,"d")),r>0&&i.push("".concat(r,"h")),n>0&&i.push("".concat(n,"m")),e>0&&0===o&&0===r&&i.push("".concat(e,"s")),t>0&&0===o&&0===r&&0===n&&i.push("".concat(t,"ms")),i.join(" ")},t}(),y=function(t){function n(){return null!==t&&t.apply(this,arguments)||this}return e(n,t),n.parseNumber=function(t){if(!t)return null;var e=Number(t);return Number.isNaN(e)?null:e},n.round=function(t,e){e||(e=0);var n=Math.pow(10,e);return Math.round(t*n)/n},n.portionToPercent=function(t,e){if(null==t)return"";var r=n.round(100*t,e);return"".concat(r,"%")},n}(c),v=function(){function t(){}return t.dateParser=function(e,n){return"string"==typeof n&&t.reISO.exec(n)?new Date(n):n},t.parseWithDates=function(e){if(!a.isBlank(e))return JSON.parse(a.getNonEmpty(e),t.dateParser)},t.parse=function(e){return t.parseWithDates(e)},t.reISO=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*))(?:Z|(\+|-)([\d|:]*))?$/,t}(),m=function(){function t(e){a.isBlank(e)?this.baseUrl=t.baseHostUrl():(e.endsWith("/")||(e+="/"),this.baseUrl=e.startsWith("http")?new URL(e):new URL(e,t.baseHostUrl()))}return t.baseHostUrl=function(){return new URL("".concat(window.location.protocol,"//").concat(window.location.host,"/"))},t.pagingRequestToQueryParams=function(t){return g.pagingRequestToQueryParams(t)},t.paramsToQueryString=function(t){if(!t)return"";var e=new URLSearchParams(t),n=new URLSearchParams;e.forEach((function(t,e){""!==t&&void 0!==t&&"undefined"!==t&&n.set(e,t)}));var r=n.toString();return a.isEmpty(r)?"":"?".concat(r)},t.prototype.getHeaders=function(t){var e=new Headers;return e.set("Content-Type","application/json"),Promise.resolve(e)},t.prototype.getBaseUrl=function(){return this.baseUrl},t.prototype.getUrl=function(t,e){var n=new URL(a.trimLeadingSlashes(t),this.baseUrl);return e&&Object.keys(e).forEach((function(t){var r=e[t];""!==r&&void 0!==r&&"undefined"!==r&&n.searchParams.set(t,r)})),n},t.prototype.getRequestOptions=function(t,e,n){return void 0===e&&(e="GET"),void 0===n&&(n=null),this.getHeaders(t).then((function(t){return{method:e,headers:t,body:null===n?null:n instanceof FormData?n:JSON.stringify(n)}}))},t.prototype.processRequest=function(t,e,n){return fetch(this.getUrl(t,e),n).then((function(t){if(!t.ok){var e={cause:t.status};return"application/json"===t.headers.get("Content-Type")?t.json().then((function(n){if(n.message)throw new Error(n.message,e);if(n.error)throw new Error(n.error,e);throw new Error(t.statusText,e)}),(function(){throw new Error(t.statusText,e)})):t.text().then((function(n){throw a.isEmpty(n)?new Error(t.statusText,e):new Error(n,e)}),(function(){throw new Error(t.statusText,e)}))}return t}))},t.prototype.processRequestJson=function(t,e,n){return this.processRequest(t,e,n).then((function(t){return t.text().then(v.parseWithDates)}))},t.prototype.getJson=function(t,e){var n=this;return this.getRequestOptions(t).then((function(r){return n.processRequestJson(t,e,r)}))},t.prototype.postJson=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"POST",e).then((function(e){return n.processRequestJson(t,null,e)}))},t.prototype.postForm=function(t,e){var n=this;return this.getRequestOptions(t,"POST",e).then((function(e){return e.headers.delete("Content-Type"),n.processRequest(t,null,e)}))},t.prototype.postFormJson=function(t,e){var n=this;return this.getRequestOptions(t,"POST",e).then((function(e){return e.headers.delete("Content-Type"),n.processRequestJson(t,null,e)}))},t.prototype.putJson=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"PUT",e).then((function(e){return n.processRequestJson(t,null,e)}))},t.prototype.get=function(t,e){var n=this;return this.getRequestOptions(t).then((function(r){return n.processRequest(t,e,r)}))},t.prototype.del=function(t){var e=this;return this.getRequestOptions(t,"DELETE").then((function(n){return e.processRequest(t,null,n)}))},t.prototype.post=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"POST",e).then((function(e){return n.processRequest(t,null,e)}))},t.prototype.put=function(t,e){var n=this;return void 0===e&&(e=null),this.getRequestOptions(t,"PUT",e).then((function(e){return n.processRequest(t,null,e)}))},t}(),T=function(){function t(t,e){this.client=t,this.name=e}return t.prototype.loadSingle=function(t){return this.client.getJson("".concat(this.name,"/").concat(t))},t.prototype.loadPage=function(t){return this.client.getJson(this.name,m.pagingRequestToQueryParams(t))},t.prototype.save=function(t){return t.id?this.client.putJson("".concat(this.name,"/").concat(t.id),t):this.client.postJson(this.name,t)},t.prototype.delete=function(t){return this.client.del("".concat(this.name,"/").concat(t))},t}(),k=function(t){function n(e,n,r){var o=t.call(this,e,n)||this;return o.cache=new s((function(e){return t.prototype.loadSingle.call(o,e)}),r),o}return e(n,t),n.prototype.loadSingle=function(t){return this.cache.get(t)},n.prototype.save=function(e){var n=this;return t.prototype.save.call(this,e).then((function(t){return t.id&&n.cache.set(t.id,t),t}))},n.prototype.delete=function(e){var n=this;return t.prototype.delete.call(this,e).then((function(){return n.cache.reset(e)}))},n.prototype.reset=function(t){this.cache.reset(t)},n.prototype.getStats=function(){return this.cache.getStats()},n}(T),S=function(t){function n(){return null!==t&&t.apply(this,arguments)||this}return e(n,t),n.prototype.loadSingle=function(t){throw new Error("Use loadSingleStub() instead!")},n.prototype.loadSingleStub=function(t){return this.client.getJson("".concat(this.name,"/").concat(t))},n.prototype.save=function(t){throw new Error("Use saveStub() instead!")},n.prototype.saveStub=function(t){return t.id?this.client.putJson("".concat(this.name,"/").concat(t.id),t):this.client.postJson(this.name,t)},n}(T),w=function(t){function n(e,n){var r=t.call(this,e,n)||this;return r.cache=new o((function(){return r.loadAllInternal()})),r}return e(n,t),n.prototype.loadAllInternal=function(){return this.client.getJson("".concat(this.name,"/all"))},n.prototype.loadAll=function(){return this.cache.get()},n.prototype.loadSingle=function(t){var e=this;return this.loadAll().then((function(n){var r=n.find((function(e){return e.id===t}));if(void 0===t)throw new Error("".concat(e.name," id ").concat(t," not found!"));return r}))},n.prototype.save=function(e){var n=this;return t.prototype.save.call(this,e).then((function(t){return n.cache.reset(),t}))},n.prototype.delete=function(e){var n=this;return t.prototype.delete.call(this,e).then((function(){return n.cache.reset()}))},n.prototype.reset=function(){this.cache.reset()},n.prototype.getStats=function(){var t,e=null===(t=this.cache.getCache())||void 0===t?void 0:t.length;return{cachedItems:e||0,capacity:e||0}},n}(T),I=function(){function t(){this.handlers=new Map}return t.prototype.addEventListener=function(t,e){this.handlers.has(t)||this.handlers.set(t,[]),this.handlers.get(t).push(e)},t.prototype.removeEventListener=function(t,e){var n=this.handlers.get(t);n&&n.splice(n.indexOf(e),1)},t.prototype.triggerEvent=function(t,e){this.handlers.has(t)&&this.handlers.get(t).forEach((function(t){return t(e)}))},t}();!function(t){t.info="info",t.warning="warning",t.error="danger"}(r||(r={}));var E=function(){function t(t){void 0===t&&(t=10),this.maxAlerts=t,this.em=new I,this.alerts=[]}return t.prototype.addOnChangeHandler=function(t){this.em.addEventListener("change",t)},t.prototype.removeOnChangeHandler=function(t){this.em.removeEventListener("change",t)},t.prototype.triggerChange=function(){this.em.triggerEvent("change")},t.prototype.reset=function(){this.alerts=[],this.triggerChange()},t.prototype.remove=function(t){this.alerts.splice(this.alerts.indexOf(t),1),this.triggerChange()},t.prototype.add=function(t){for(this.alerts.push(t);this.alerts.length>this.maxAlerts;)this.alerts.shift();this.triggerChange()},t.prototype.custom=function(t,e){this.add({time:new Date,type:t,message:e})},t.prototype.err=function(t){this.custom(r.error,"string"==typeof t?t:t.toString())},t.prototype.warn=function(t){this.custom(r.warning,t)},t.prototype.info=function(t){this.custom(r.info,t)},t.prototype.getSummary=function(){var t=new Map;Object.values(r).forEach((function(e,n){t.set(e,0)}));for(var e=0;e<this.alerts.length;e++){var n=this.alerts[e],o=t.get(n.type)||0;t.set(n.type,o+1)}return t},t}(),b=function(){function t(t,e){void 0===e&&(e=!1);var n=this;this.isCancelled={value:!1},this.throwWhenCancelled=e,this.promise=new Promise((function(e,r){t.then((function(t){if(!n.isCancelled.value)return e(t)})).catch((function(t){!n.throwWhenCancelled&&n.isCancelled.value||r(t)}))}))}return t.prototype.cancel=function(){this.isCancelled.value=!0},t}(),x=function(t){function n(e){return t.call(this,"".concat(a.trimSlashes(e),"/api/oauth"))||this}return e(n,t),n.prototype.jwks=function(){return this.getJson("jwks.json")},n.prototype.verifyIdToken=function(t){return this.getJson("id-tokens/verify/".concat(t))},n.prototype.requestIdTokenFromLogin=function(t){return this.postJson("id-tokens/from-login",t)},n.prototype.refreshIdToken=function(t){return this.postJson("id-tokens/refresh",t)},n.prototype.requestAccessToken=function(t){return this.postJson("access-tokens/from-id-token",t)},n}(m),R=function(){function t(){}return t.isValidToken=function(e){return null!=e&&a.notEmpty(e.token)&&!t.isTokenExpired(e)},t.isTokenExpired=function(t){return null!=t&&(void 0!==t.expires&&null!==t.expires&&t.expires<new Date)},t.isTokenReadyForRefresh=function(e){return null!=e&&(!t.isTokenExpired(e)&&(void 0!==e.expires&&null!==e.expires&&new Date((e.expires.getTime()+e.issuedAt.getTime())/2)<new Date))},t}(),P=function(){function t(t,e,n){this.freshIdTokenProvider=n,this.audience=e,this.oAuthServer=new x(t),this.accessTokens=new Map}return t.prototype.hasValidIdToken=function(){return R.isValidToken(this.idToken)},t.prototype.hasValidAccessToken=function(t){return R.isValidToken(this.accessTokens.get(t))},t.prototype.reset=function(){this.idToken=void 0,this.accessTokens.clear()},t.prototype.getIdTokenInternal=function(){return void 0!==this.idToken&&this.hasValidIdToken()?Promise.resolve(this.idToken):this.freshIdTokenProvider.getIdToken()},t.prototype.getIdToken=function(){var t=this;return this.getIdTokenInternal().then((function(e){return R.isValidToken(e)?R.isTokenReadyForRefresh(e)?t.oAuthServer.refreshIdToken({idToken:e.token}).then((function(e){return t.setIdToken(e),e})):(t.setIdToken(e),Promise.resolve(e)):Promise.reject("Received invalid ID token!")}))},t.prototype.getIdTokenRaw=function(){return this.getIdToken().then((function(t){return t.token}))},t.prototype.setIdToken=function(t){this.idToken=t},t.prototype.verifyIdToken=function(t){return this.oAuthServer.verifyIdToken(t)},t.prototype.login=function(t,e){var n=this;return this.reset(),this.oAuthServer.requestIdTokenFromLogin({login:t,password:e,targetAudience:this.audience}).then((function(t){return n.setIdToken(t)}))},t.prototype.getAccessTokenInternal=function(t){var e=this;return this.getIdTokenRaw().then((function(n){return e.oAuthServer.requestAccessToken({idToken:n,targetAudience:e.audience,privilege:t}).then((function(n){return R.isValidToken(n)?(e.accessTokens.set(t,n),n):Promise.reject("Received access token is not valid!")}))}))},t.prototype.getAccessToken=function(t){var e=this.accessTokens.get(t);return void 0!==e&&R.isValidToken(e)?(R.isTokenReadyForRefresh(e)&&this.getAccessTokenInternal(t),Promise.resolve(e.token)):this.getAccessTokenInternal(t).then((function(t){return t.token}))},t}(),M=function(){function t(t){this.value=t}return t.prototype.getSubjectType=function(){return a.isEmpty(this.value)?null:this.value.split(":")[0]},t.prototype.getSubjectContent=function(){if(a.isEmpty(this.value))return null;var t=this.value.split("//");return t.length>1?t[1]:null},t.prototype.toString=function(){return this.value},t}(),N=function(){function t(){}return t.prototype.redirectTo=function(t){return this.redirecting=t,document.location.href=t,Promise.reject("Redirecting to ".concat(t))},t.prototype.isRedirecting=function(){return a.notBlank(this.redirecting)},t.prototype.redirectingTo=function(){return a.getNonEmpty(this.redirecting)},t}(),q=function(){function t(){}return t.deleteParamFromUrl=function(t,e){return new URL(t).searchParams.delete(e),a.trimTrailingSlashes(t.toString())},t.extractParamFromUrl=function(t,e){return new URLSearchParams(new URL(t).search).get(e)},t.paramExistsInUrl=function(e,n){return a.notBlank(t.extractParamFromUrl(e,n))},t}(),D=function(t){function n(e,n){var r=t.call(this)||this;return r.client=e,r.tokenQueryName=n||"token",r}return e(n,t),n.prototype.redirectToLogin=function(){var t=this;return this.client.getServerInfo().then((function(e){var n=q.deleteParamFromUrl(document.location.toString(),t.tokenQueryName),r="".concat(e.oauthServerUrl,"/login?app_name=").concat(e.targetAudience,"&redirect_url=").concat(n);return t.redirectTo(r)})).catch((function(t){return console.error("Redirection failed: OAuth info not fetched:",t),Promise.reject(t)}))},n.prototype.getIdToken=function(){return this.redirectToLogin()},n}(N),A=function(){function t(t,e){this.client=t,this.tokenQueryName=e||"token"}return t.prototype.getIdTokenFromUrl=function(){return q.extractParamFromUrl(document.location.toString(),this.tokenQueryName)},t.prototype.getIdToken=function(){var t=this.getIdTokenFromUrl();return null===t||a.isBlank(t)?Promise.reject("No token in URL!"):this.client.getTokenManager().then((function(e){return e.verifyIdToken(t)}))},t}(),L=function(){function t(t){this.key=t||""}return t.prototype.saveIdTokenToLocalStorage=function(t){var e=t?JSON.stringify(t):null;null!==e?localStorage.setItem(this.key,e):localStorage.removeItem(this.key)},t.prototype.getIdTokenFromLocalStorage=function(){return v.parse(localStorage.getItem(this.key))},t.prototype.getIdToken=function(){var t=this.getIdTokenFromLocalStorage();return t&&R.isValidToken(t)?Promise.resolve(t):Promise.reject("No valid token found in storage!")},t}(),U=function(){function t(t,e,n){this.login=new D(t,n),this.url=new A(t,n),this.storage=new L(e)}return t.prototype.getIdToken=function(){var t=this;return this.url.getIdToken().catch((function(e){return console.log("No token in url, loading from storage",e),t.storage.getIdToken().catch((function(e){return console.log("No token in storage, redirecting to login page",e),t.login.getIdToken()}))})).then((function(e){return t.storage.saveIdTokenToLocalStorage(e),e}))},t}(),O=function(t){function n(e,n,r){void 0===r&&(r="*");var i=t.call(this,e)||this;return i.freshIdTokenProvider=n||new U(i),i.defaultPrivilege=r,i.insecureClient=new m(e),i.serverInfo=new o((function(){return i.getServerInfoInternal()})),i.tokenManager=new o((function(){return i.getTokenManagerInternal()})),i}return e(n,t),n.prototype.getIdToken=function(){return this.getTokenManager().then((function(t){return t.getIdToken()}))},n.prototype.initialize=function(){return this.getIdToken()},n.prototype.logout=function(){var t=this;return this.getTokenManager().then((function(t){return t.reset()})).then((function(){return t.initialize()}))},n.prototype.getPrivilege=function(t){return this.defaultPrivilege},n.prototype.getServerInfoInternal=function(){return this.insecureClient.getJson("status/oauth/info")},n.prototype.getServerInfo=function(){return this.serverInfo.get()},n.prototype.getTokenManagerInternal=function(){var t=this;return this.getServerInfo().then((function(e){return new P(e.oauthServerUrl,e.targetAudience,t.freshIdTokenProvider)}))},n.prototype.getTokenManager=function(){return this.tokenManager.get()},n.prototype.login=function(t,e){return this.getTokenManager().then((function(n){return n.login(t,e)}))},n.prototype.setIdToken=function(t){return this.getTokenManager().then((function(e){return e.setIdToken(t)}))},n.prototype.getHeaders=function(e){var n=this;return this.getTokenManager().then((function(t){return t.getAccessToken(n.getPrivilege(e))})).then((function(r){return t.prototype.getHeaders.call(n,e).then((function(t){return t.set("Authorization","Bearer ".concat(r)),t}))}))},n}(m),F=function(){function t(t,e){this.x=t,this.y=e}return t.prototype.distanceTo=function(t){return Math.sqrt(Math.pow(this.x-t.x,2)+Math.pow(this.y-t.y,2))},t.prototype.equalsTo=function(t){return!!t&&(this.x===t.x&&this.y===t.y)},t.prototype.size=function(){return this.distanceTo(new t(0,0))},t.prototype.inSize=function(e){var n=this.size();if(0!==n){var r=e/n;return new t(this.x*r,this.y*r)}return this},t.prototype.round=function(){return new t(Math.round(this.x),Math.round(this.y))},t.prototype.add=function(e){return new t(this.x+e.x,this.y+e.y)},t.prototype.multiply=function(e){return new t(this.x*e,this.y*e)},t.prototype.subtract=function(e){return new t(this.x-e.x,this.y-e.y)},t.prototype.sub=function(t){return this.subtract(t)},t.prototype.toArray=function(){return[this.x,this.y]},t.fromArray=function(e){if("object"==typeof e&&2===e.length)return new t(e[0],e[1])},t.prototype.clone=function(){return new t(this.x,this.y)},t.prototype.getAngleToYAxis=function(t){var e=t.subtract(this),n=e.y<0,r=e.x/e.size(),o=Math.asin(r);return(n?Math.PI-o:o)||0},t.prototype.getNeighborPositions=function(e,n){void 0===e&&(e=1),void 0===n&&(n=!1);for(var r=[],o=this.x+e,i=this.x-e;i<=o;i++)for(var s=this.y+e,u=this.y-e;u<=s;u++){var a=new t(i,u);!n&&this.equalsTo(a)||r.push(a)}return r},t.prototype.getClosest=function(t){if(!t||0===t.length)return null;if(1===t.length)return t[0];for(var e=t[0],n=this.distanceTo(e),r=1,o=t.length;r<o;r++){var i=this.distanceTo(t[r]);i<n&&(e=t[r],n=i)}return e},t.prototype.toString=function(t){return void 0===t&&(t=2),"[".concat(y.round(this.x,t),",").concat(y.round(this.y,t),"]")},t}(),C={"--self-name":"Čeština",Anonymous:"Anonym",Administrator:"Administrátor",Back:"Zpět",File:"Soubor",Language:"Jazyk",Image:"Obrázek",Status:"Stav",State:"Stav",System:"Systém",Date:"Datum",Page:"Stránka","Page size":"Velikost stránky","Total items":"Celkem záznamů","Log out":"Odhlásit",Move:"Přesunout",Delete:"Smazat",Close:"Zavřít",Edit:"Upravit",Save:"Uložit",Refresh:"Obnovit",Select:"Vybrat","More...":"Více...",New:[{tags:["feminine"],value:"Nová"},{value:"Nový"}],Name:[{tags:["neutral"],value:"Název"},{value:"Jméno"}]},j={"--self-name":"English"},z=function(){function t(t){this.data=t}return t.prototype.translate=function(t,e){var n=this.data[t];if(void 0===n||"string"==typeof n)return n;var r=n.find((function(t){return void 0===t.tags||0===t.tags.length}));if((void 0===e||void 0===e.tags||0===e.tags.length)&&void 0!==r)return r.value;var o=n.filter((function(t){return void 0!==t.tags&&0!==t.tags.length&&(e&&e.tags&&e.tags.every((function(e){return t.tags&&t.tags.includes(e)})))}));return o.length>0?o[0].value:r?r.value:void 0},t}(),J=function(t){function n(){return t.call(this,C)||this}return e(n,t),n}(z),B=function(t){function n(){return t.call(this,j)||this}return e(n,t),n}(z),H=function(){function t(t,e){this.primary=t,this.fallback=e}return t.prototype.translate=function(t,e){var n=this.primary.translate(t,e);return void 0===n?this.fallback.translate(t,e):n},t}(),V=function(){function t(t){this.dictionaries=new Map,this.setLanguage(t)}return t.prototype.addDictionary=function(t,e){var n=this.dictionaries.get(t);n?this.dictionaries.set(t,new H(e,n)):this.dictionaries.set(t,e)},t.prototype.hasDictionary=function(t){return!!t&&this.dictionaries.has(t)},t.prototype.getLanguage=function(){return this.language},t.prototype.getLanguages=function(){return Array.from(this.dictionaries.keys())},t.prototype.setLanguage=function(t){this.language=t&&this.hasDictionary(t)?t:this.hasDictionary(navigator.language)?navigator.language:void 0},t.prototype.translate=function(t,e,n){if(!(n=n||this.language))return t;var r=this.dictionaries.get(n);if(!r)return t;var o=r.translate(t,e);return void 0===o?t:o},t}(),_=function(t){function n(e){var n=t.call(this)||this;return n.addDictionary("cs",new J),n.addDictionary("en",new B),n.setLanguage(e),n}return e(n,t),n}(V);export{h as ArrayUtil,p as AsyncUtil,_ as BasicLocalization,f as ByteUtil,i as CacheAsync,b as CancellablePromise,J as CzechBasicDictionary,d as DateUtil,H as DictionaryWithFallback,B as EnglishBasicDictionary,k as EntityCachedClient,T as EntityClient,S as EntityClientWithStub,I as EventManager,s as HashCacheAsync,v as JsonUtil,u as Lazy,o as LazyAsync,V as Localization,w as LookupClient,z as MemoryDictionary,y as NumberUtil,x as OAuthRestClient,M as OAuthSubject,P as OAuthTokenManager,c as ObjectUtil,g as PagingUtil,m as RestClient,O as RestClientWithOAuth,a as StringUtil,r as UserAlertType,E as UserAlerts,F as Vector2};
2
2
  //# sourceMappingURL=index.esm.js.map