@social-mail/social-mail-client 1.0.63 → 1.0.64

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.
Files changed (38) hide show
  1. package/dist/admin/AdminAppIndex.pack.js +121 -5
  2. package/dist/admin/AdminAppIndex.pack.js.map +1 -1
  3. package/dist/admin/AdminAppIndex.pack.min.js +3 -3
  4. package/dist/admin/AdminAppIndex.pack.min.js.map +1 -1
  5. package/dist/tsconfig.tsbuildinfo +1 -1
  6. package/dist/web/AppIndex.pack.js +125 -5
  7. package/dist/web/AppIndex.pack.js.map +1 -1
  8. package/dist/web/AppIndex.pack.min.js +4 -4
  9. package/dist/web/AppIndex.pack.min.js.map +1 -1
  10. package/dist/web/drawer/AppDrawer.js +4 -0
  11. package/dist/web/drawer/AppDrawer.js.map +1 -1
  12. package/dist/web/page/mails/MailsPage.js +2 -1
  13. package/dist/web/page/mails/MailsPage.js.map +1 -1
  14. package/node_modules/@web-atoms/entity/dist/models/Queue.d.ts +9 -0
  15. package/node_modules/@web-atoms/entity/dist/models/Queue.d.ts.map +1 -0
  16. package/node_modules/@web-atoms/entity/dist/models/Queue.js +44 -0
  17. package/node_modules/@web-atoms/entity/dist/models/Queue.js.map +1 -0
  18. package/node_modules/@web-atoms/entity/dist/models/TaskManager.d.ts +8 -0
  19. package/node_modules/@web-atoms/entity/dist/models/TaskManager.d.ts.map +1 -0
  20. package/node_modules/@web-atoms/entity/dist/models/TaskManager.js +58 -0
  21. package/node_modules/@web-atoms/entity/dist/models/TaskManager.js.map +1 -0
  22. package/node_modules/@web-atoms/entity/dist/services/HttpSession.d.ts +7 -1
  23. package/node_modules/@web-atoms/entity/dist/services/HttpSession.d.ts.map +1 -1
  24. package/node_modules/@web-atoms/entity/dist/services/HttpSession.js +10 -3
  25. package/node_modules/@web-atoms/entity/dist/services/HttpSession.js.map +1 -1
  26. package/node_modules/@web-atoms/entity/dist/tests/task-manager/TaskManagerTests.d.ts +9 -0
  27. package/node_modules/@web-atoms/entity/dist/tests/task-manager/TaskManagerTests.d.ts.map +1 -0
  28. package/node_modules/@web-atoms/entity/dist/tests/task-manager/TaskManagerTests.js +59 -0
  29. package/node_modules/@web-atoms/entity/dist/tests/task-manager/TaskManagerTests.js.map +1 -0
  30. package/node_modules/@web-atoms/entity/dist/tsconfig.tsbuildinfo +1 -1
  31. package/node_modules/@web-atoms/entity/package.json +1 -1
  32. package/node_modules/@web-atoms/entity/src/models/Queue.ts +34 -0
  33. package/node_modules/@web-atoms/entity/src/models/TaskManager.ts +53 -0
  34. package/node_modules/@web-atoms/entity/src/services/HttpSession.ts +14 -2
  35. package/node_modules/@web-atoms/entity/src/tests/task-manager/TaskManagerTests.ts +49 -0
  36. package/package.json +2 -2
  37. package/src/web/drawer/AppDrawer.tsx +5 -0
  38. package/src/web/page/mails/MailsPage.tsx +1 -1
@@ -1,4 +1,4 @@
1
- var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};function setupTSLib(){var __extends;var __assign;var __rest;var __decorate;var __param;var __metadata;var __awaiter;var __generator;var __exportStar;var __values;var __read;var __spread;var __spreadArrays;var __spreadArray;var __await;var __asyncGenerator;var __asyncDelegator;var __asyncValues;var __makeTemplateObject;var __importStar;var __importDefault;var __classPrivateFieldGet;var __classPrivateFieldSet;var __classPrivateFieldIn;var __createBinding;var extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(Object.prototype.hasOwnProperty.call(b,p))d[p]=b[p]};__extends=function(d,b){if(typeof b!=="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)};__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))t[p]=s[p]}return t};__rest=function(s,e){var t={};for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0)t[p]=s[p];if(s!=null&&typeof Object.getOwnPropertySymbols==="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++){if(e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i]))t[p[i]]=s[p[i]]}return t};__decorate=function(decorators,target,key,desc){var c=arguments.length,r=c<3?target:desc===null?desc=Object.getOwnPropertyDescriptor(target,key):desc,d;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(decorators,target,key,desc);else for(var i=decorators.length-1;i>=0;i--)if(d=decorators[i])r=(c<3?d(r):c>3?d(target,key,r):d(target,key))||r;return c>3&&r&&Object.defineProperty(target,key,r),r};__param=function(paramIndex,decorator){return function(target,key){decorator(target,key,paramIndex)}};__metadata=function(metadataKey,metadataValue){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(metadataKey,metadataValue)};__awaiter=function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};__generator=function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};__exportStar=function(m,o){for(var p in m)if(p!=="default"&&!Object.prototype.hasOwnProperty.call(o,p))__createBinding(o,m,p)};__createBinding=Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]};__values=function(o){var s=typeof Symbol==="function"&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&typeof o.length==="number")return{next:function(){if(o&&i>=o.length)o=void 0;return{value:o&&o[i++],done:!o}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};__read=function(o,n){var m=typeof Symbol==="function"&&o[Symbol.iterator];if(!m)return o;var i=m.call(o),r,ar=[],e;try{while((n===void 0||n-- >0)&&!(r=i.next()).done)ar.push(r.value)}catch(error){e={error}}finally{try{if(r&&!r.done&&(m=i["return"]))m.call(i)}finally{if(e)throw e.error}}return ar};__spread=function(){for(var ar=[],i=0;i<arguments.length;i++)ar=ar.concat(__read(arguments[i]));return ar};__spreadArrays=function(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;for(var r=Array(s),k=0,i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r};__spreadArray=function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;i++){if(ar||!(i in from)){if(!ar)ar=Array.prototype.slice.call(from,0,i);ar[i]=from[i]}}return to.concat(ar||Array.prototype.slice.call(from))};__await=function(v){return this instanceof __await?(this.v=v,this):new __await(v)};__asyncGenerator=function(thisArg,_arguments,generator){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var g=generator.apply(thisArg,_arguments||[]),i,q=[];return i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i;function verb(n){if(g[n])i[n]=function(v){return new Promise((function(a,b){q.push([n,v,a,b])>1||resume(n,v)}))}}function resume(n,v){try{step(g[n](v))}catch(e){settle(q[0][3],e)}}function step(r){r.value instanceof __await?Promise.resolve(r.value.v).then(fulfill,reject):settle(q[0][2],r)}function fulfill(value){resume("next",value)}function reject(value){resume("throw",value)}function settle(f,v){if(f(v),q.shift(),q.length)resume(q[0][0],q[0][1])}};__asyncDelegator=function(o){var i,p;return i={},verb("next"),verb("throw",(function(e){throw e})),verb("return"),i[Symbol.iterator]=function(){return this},i;function verb(n,f){i[n]=o[n]?function(v){return(p=!p)?{value:__await(o[n](v)),done:false}:f?f(v):v}:f}};__asyncValues=function(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var m=o[Symbol.asyncIterator],i;return m?m.call(o):(o=typeof __values==="function"?__values(o):o[Symbol.iterator](),i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i);function verb(n){i[n]=o[n]&&function(v){return new Promise((function(resolve,reject){v=o[n](v),settle(resolve,reject,v.done,v.value)}))}}function settle(resolve,reject,d,v){Promise.resolve(v).then((function(v){resolve({value:v,done:d})}),reject)}};__makeTemplateObject=function(cooked,raw){if(Object.defineProperty){Object.defineProperty(cooked,"raw",{value:raw})}else{cooked.raw=raw}return cooked};var __setModuleDefault=Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v};__importStar=function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};__importDefault=function(mod){return mod&&mod.__esModule?mod:{default:mod}};__classPrivateFieldGet=function(receiver,state,kind,f){if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a getter");if(typeof state==="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot read private member from an object whose class did not declare it");return kind==="m"?f:kind==="a"?f.call(receiver):f?f.value:state.get(receiver)};__classPrivateFieldSet=function(receiver,state,value,kind,f){if(kind==="m")throw new TypeError("Private method is not writable");if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a setter");if(typeof state==="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot write private member to an object whose class did not declare it");return kind==="a"?f.call(receiver,value):f?f.value=value:state.set(receiver,value),value};__classPrivateFieldIn=function(state,receiver){if(receiver===null||typeof receiver!=="object"&&typeof receiver!=="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof state==="function"?receiver===state:state.has(receiver)};return{__extends,__assign,__rest,__decorate,__param,__metadata,__awaiter,__generator,__exportStar,__values,__read,__spread,__spreadArrays,__spreadArray,__await,__asyncGenerator,__asyncDelegator,__asyncValues,__makeTemplateObject,__importStar,__importDefault,__classPrivateFieldGet,__classPrivateFieldSet,__classPrivateFieldIn,__createBinding}}var Reflect;(function(Reflect){(function(factory){const root=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:Function("return this;")();let exporter=makeExporter(Reflect);if(typeof root.Reflect==="undefined"){root.Reflect=Reflect}else{exporter=makeExporter(root.Reflect,exporter)}factory(exporter);function makeExporter(target,previous){return(key,value)=>{if(typeof target[key]!=="function"){Object.defineProperty(target,key,{configurable:true,writable:true,value})}if(previous)previous(key,value)}}})((function(exporter){const hasOwn=Object.prototype.hasOwnProperty;const supportsSymbol=typeof Symbol==="function";const toPrimitiveSymbol=supportsSymbol&&typeof Symbol.toPrimitive!=="undefined"?Symbol.toPrimitive:"@@toPrimitive";const iteratorSymbol=supportsSymbol&&typeof Symbol.iterator!=="undefined"?Symbol.iterator:"@@iterator";const supportsCreate=typeof Object.create==="function";const supportsProto={__proto__:[]}instanceof Array;const downLevel=!supportsCreate&&!supportsProto;const HashMap={create:supportsCreate?()=>MakeDictionary(Object.create(null)):supportsProto?()=>MakeDictionary({__proto__:null}):()=>MakeDictionary({}),has:downLevel?(map,key)=>hasOwn.call(map,key):(map,key)=>key in map,get:downLevel?(map,key)=>hasOwn.call(map,key)?map[key]:undefined:(map,key)=>map[key]};const functionPrototype=Object.getPrototypeOf(Function);const usePolyfill=typeof process==="object"&&process.env&&process.env["REFLECT_METADATA_USE_MAP_POLYFILL"]==="true";const _Map=!usePolyfill&&typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:CreateMapPolyfill();const _Set=!usePolyfill&&typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:CreateSetPolyfill();const _WeakMap=!usePolyfill&&typeof WeakMap==="function"?WeakMap:CreateWeakMapPolyfill();const Metadata=new _WeakMap;function decorate(decorators,target,propertyKey,attributes){if(!IsUndefined(propertyKey)){if(!IsArray(decorators))throw new TypeError;if(!IsObject(target))throw new TypeError;if(!IsObject(attributes)&&!IsUndefined(attributes)&&!IsNull(attributes))throw new TypeError;if(IsNull(attributes))attributes=undefined;propertyKey=ToPropertyKey(propertyKey);return DecorateProperty(decorators,target,propertyKey,attributes)}else{if(!IsArray(decorators))throw new TypeError;if(!IsConstructor(target))throw new TypeError;return DecorateConstructor(decorators,target)}}exporter("decorate",decorate);function metadata(metadataKey,metadataValue){function decorator(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey)&&!IsPropertyKey(propertyKey))throw new TypeError;OrdinaryDefineOwnMetadata(metadataKey,metadataValue,target,propertyKey)}return decorator}exporter("metadata",metadata);function defineMetadata(metadataKey,metadataValue,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryDefineOwnMetadata(metadataKey,metadataValue,target,propertyKey)}exporter("defineMetadata",defineMetadata);function hasMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryHasMetadata(metadataKey,target,propertyKey)}exporter("hasMetadata",hasMetadata);function hasOwnMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryHasOwnMetadata(metadataKey,target,propertyKey)}exporter("hasOwnMetadata",hasOwnMetadata);function getMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryGetMetadata(metadataKey,target,propertyKey)}exporter("getMetadata",getMetadata);function getOwnMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryGetOwnMetadata(metadataKey,target,propertyKey)}exporter("getOwnMetadata",getOwnMetadata);function getMetadataKeys(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryMetadataKeys(target,propertyKey)}exporter("getMetadataKeys",getMetadataKeys);function getOwnMetadataKeys(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryOwnMetadataKeys(target,propertyKey)}exporter("getOwnMetadataKeys",getOwnMetadataKeys);function deleteMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);const metadataMap=GetOrCreateMetadataMap(target,propertyKey,false);if(IsUndefined(metadataMap))return false;if(!metadataMap.delete(metadataKey))return false;if(metadataMap.size>0)return true;const targetMetadata=Metadata.get(target);targetMetadata.delete(propertyKey);if(targetMetadata.size>0)return true;Metadata.delete(target);return true}exporter("deleteMetadata",deleteMetadata);function DecorateConstructor(decorators,target){for(let i=decorators.length-1;i>=0;--i){const decorator=decorators[i];const decorated=decorator(target);if(!IsUndefined(decorated)&&!IsNull(decorated)){if(!IsConstructor(decorated))throw new TypeError;target=decorated}}return target}function DecorateProperty(decorators,target,propertyKey,descriptor){for(let i=decorators.length-1;i>=0;--i){const decorator=decorators[i];const decorated=decorator(target,propertyKey,descriptor);if(!IsUndefined(decorated)&&!IsNull(decorated)){if(!IsObject(decorated))throw new TypeError;descriptor=decorated}}return descriptor}function GetOrCreateMetadataMap(O,P,Create){let targetMetadata=Metadata.get(O);if(IsUndefined(targetMetadata)){if(!Create)return undefined;targetMetadata=new _Map;Metadata.set(O,targetMetadata)}let metadataMap=targetMetadata.get(P);if(IsUndefined(metadataMap)){if(!Create)return undefined;metadataMap=new _Map;targetMetadata.set(P,metadataMap)}return metadataMap}function OrdinaryHasMetadata(MetadataKey,O,P){const hasOwn=OrdinaryHasOwnMetadata(MetadataKey,O,P);if(hasOwn)return true;const parent=OrdinaryGetPrototypeOf(O);if(!IsNull(parent))return OrdinaryHasMetadata(MetadataKey,parent,P);return false}function OrdinaryHasOwnMetadata(MetadataKey,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return false;return ToBoolean(metadataMap.has(MetadataKey))}function OrdinaryGetMetadata(MetadataKey,O,P){const hasOwn=OrdinaryHasOwnMetadata(MetadataKey,O,P);if(hasOwn)return OrdinaryGetOwnMetadata(MetadataKey,O,P);const parent=OrdinaryGetPrototypeOf(O);if(!IsNull(parent))return OrdinaryGetMetadata(MetadataKey,parent,P);return undefined}function OrdinaryGetOwnMetadata(MetadataKey,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return undefined;return metadataMap.get(MetadataKey)}function OrdinaryDefineOwnMetadata(MetadataKey,MetadataValue,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,true);metadataMap.set(MetadataKey,MetadataValue)}function OrdinaryMetadataKeys(O,P){const ownKeys=OrdinaryOwnMetadataKeys(O,P);const parent=OrdinaryGetPrototypeOf(O);if(parent===null)return ownKeys;const parentKeys=OrdinaryMetadataKeys(parent,P);if(parentKeys.length<=0)return ownKeys;if(ownKeys.length<=0)return parentKeys;const set=new _Set;const keys=[];for(const key of ownKeys){const hasKey=set.has(key);if(!hasKey){set.add(key);keys.push(key)}}for(const key of parentKeys){const hasKey=set.has(key);if(!hasKey){set.add(key);keys.push(key)}}return keys}function OrdinaryOwnMetadataKeys(O,P){const keys=[];const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return keys;const keysObj=metadataMap.keys();const iterator=GetIterator(keysObj);let k=0;while(true){const next=IteratorStep(iterator);if(!next){keys.length=k;return keys}const nextValue=IteratorValue(next);try{keys[k]=nextValue}catch(e){try{IteratorClose(iterator)}finally{throw e}}k++}}function Type(x){if(x===null)return 1;switch(typeof x){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return x===null?1:6;default:return 6}}function IsUndefined(x){return x===undefined}function IsNull(x){return x===null}function IsSymbol(x){return typeof x==="symbol"}function IsObject(x){return typeof x==="object"?x!==null:typeof x==="function"}function ToPrimitive(input,PreferredType){switch(Type(input)){case 0:return input;case 1:return input;case 2:return input;case 3:return input;case 4:return input;case 5:return input}const hint=PreferredType===3?"string":PreferredType===5?"number":"default";const exoticToPrim=GetMethod(input,toPrimitiveSymbol);if(exoticToPrim!==undefined){const result=exoticToPrim.call(input,hint);if(IsObject(result))throw new TypeError;return result}return OrdinaryToPrimitive(input,hint==="default"?"number":hint)}function OrdinaryToPrimitive(O,hint){if(hint==="string"){const toString=O.toString;if(IsCallable(toString)){const result=toString.call(O);if(!IsObject(result))return result}const valueOf=O.valueOf;if(IsCallable(valueOf)){const result=valueOf.call(O);if(!IsObject(result))return result}}else{const valueOf=O.valueOf;if(IsCallable(valueOf)){const result=valueOf.call(O);if(!IsObject(result))return result}const toString=O.toString;if(IsCallable(toString)){const result=toString.call(O);if(!IsObject(result))return result}}throw new TypeError}function ToBoolean(argument){return!!argument}function ToString(argument){return""+argument}function ToPropertyKey(argument){const key=ToPrimitive(argument,3);if(IsSymbol(key))return key;return ToString(key)}function IsArray(argument){return Array.isArray?Array.isArray(argument):argument instanceof Object?argument instanceof Array:Object.prototype.toString.call(argument)==="[object Array]"}function IsCallable(argument){return typeof argument==="function"}function IsConstructor(argument){return typeof argument==="function"}function IsPropertyKey(argument){switch(Type(argument)){case 3:return true;case 4:return true;default:return false}}function GetMethod(V,P){const func=V[P];if(func===undefined||func===null)return undefined;if(!IsCallable(func))throw new TypeError;return func}function GetIterator(obj){const method=GetMethod(obj,iteratorSymbol);if(!IsCallable(method))throw new TypeError;const iterator=method.call(obj);if(!IsObject(iterator))throw new TypeError;return iterator}function IteratorValue(iterResult){return iterResult.value}function IteratorStep(iterator){const result=iterator.next();return result.done?false:result}function IteratorClose(iterator){const f=iterator["return"];if(f)f.call(iterator)}function OrdinaryGetPrototypeOf(O){const proto=Object.getPrototypeOf(O);if(typeof O!=="function"||O===functionPrototype)return proto;if(proto!==functionPrototype)return proto;const prototype=O.prototype;const prototypeProto=prototype&&Object.getPrototypeOf(prototype);if(prototypeProto==null||prototypeProto===Object.prototype)return proto;const constructor=prototypeProto.constructor;if(typeof constructor!=="function")return proto;if(constructor===O)return proto;return constructor}function CreateMapPolyfill(){const cacheSentinel={};const arraySentinel=[];class MapIterator{constructor(keys,values,selector){this._index=0;this._keys=keys;this._values=values;this._selector=selector}"@@iterator"(){return this}[iteratorSymbol](){return this}next(){const index=this._index;if(index>=0&&index<this._keys.length){const result=this._selector(this._keys[index],this._values[index]);if(index+1>=this._keys.length){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}else{this._index++}return{value:result,done:false}}return{value:undefined,done:true}}throw(error){if(this._index>=0){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}throw error}return(value){if(this._index>=0){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}return{value,done:true}}}return class Map{constructor(){this._keys=[];this._values=[];this._cacheKey=cacheSentinel;this._cacheIndex=-2}get size(){return this._keys.length}has(key){return this._find(key,false)>=0}get(key){const index=this._find(key,false);return index>=0?this._values[index]:undefined}set(key,value){const index=this._find(key,true);this._values[index]=value;return this}delete(key){const index=this._find(key,false);if(index>=0){const size=this._keys.length;for(let i=index+1;i<size;i++){this._keys[i-1]=this._keys[i];this._values[i-1]=this._values[i]}this._keys.length--;this._values.length--;if(key===this._cacheKey){this._cacheKey=cacheSentinel;this._cacheIndex=-2}return true}return false}clear(){this._keys.length=0;this._values.length=0;this._cacheKey=cacheSentinel;this._cacheIndex=-2}keys(){return new MapIterator(this._keys,this._values,getKey)}values(){return new MapIterator(this._keys,this._values,getValue)}entries(){return new MapIterator(this._keys,this._values,getEntry)}"@@iterator"(){return this.entries()}[iteratorSymbol](){return this.entries()}_find(key,insert){if(this._cacheKey!==key){this._cacheIndex=this._keys.indexOf(this._cacheKey=key)}if(this._cacheIndex<0&&insert){this._cacheIndex=this._keys.length;this._keys.push(key);this._values.push(undefined)}return this._cacheIndex}};function getKey(key,_){return key}function getValue(_,value){return value}function getEntry(key,value){return[key,value]}}function CreateSetPolyfill(){return class Set{constructor(){this._map=new _Map}get size(){return this._map.size}has(value){return this._map.has(value)}add(value){return this._map.set(value,value),this}delete(value){return this._map.delete(value)}clear(){this._map.clear()}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}"@@iterator"(){return this.keys()}[iteratorSymbol](){return this.keys()}}}function CreateWeakMapPolyfill(){const UUID_SIZE=16;const keys=HashMap.create();const rootKey=CreateUniqueKey();return class WeakMap{constructor(){this._key=CreateUniqueKey()}has(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?HashMap.has(table,this._key):false}get(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?HashMap.get(table,this._key):undefined}set(target,value){const table=GetOrCreateWeakMapTable(target,true);table[this._key]=value;return this}delete(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?delete table[this._key]:false}clear(){this._key=CreateUniqueKey()}};function CreateUniqueKey(){let key;do{key="@@WeakMap@@"+CreateUUID()}while(HashMap.has(keys,key));keys[key]=true;return key}function GetOrCreateWeakMapTable(target,create){if(!hasOwn.call(target,rootKey)){if(!create)return undefined;Object.defineProperty(target,rootKey,{value:HashMap.create()})}return target[rootKey]}function FillRandomBytes(buffer,size){for(let i=0;i<size;++i)buffer[i]=Math.random()*255|0;return buffer}function GenRandomBytes(size){if(typeof Uint8Array==="function"){if(typeof crypto!=="undefined")return crypto.getRandomValues(new Uint8Array(size));if(typeof msCrypto!=="undefined")return msCrypto.getRandomValues(new Uint8Array(size));return FillRandomBytes(new Uint8Array(size),size)}return FillRandomBytes(new Array(size),size)}function CreateUUID(){const data=GenRandomBytes(UUID_SIZE);data[6]=data[6]&79|64;data[8]=data[8]&191|128;let result="";for(let offset=0;offset<UUID_SIZE;++offset){const byte=data[offset];if(offset===4||offset===6||offset===8)result+="-";if(byte<16)result+="0";result+=byte.toString(16).toLowerCase()}return result}}function MakeDictionary(obj){obj.__=undefined;delete obj.__;return obj}}))})(Reflect||(Reflect={}));if(!Array.prototype.find){Array.prototype.find=function(predicate,thisArg){for(let i=0;i<this.length;i++){const item=this[i];if(predicate(item,i,this)){return item}}}}if(!Array.prototype.findIndex){Array.prototype.findIndex=function(predicate,thisArg){for(let i=0;i<this.length;i++){const item=this[i];if(predicate(item,i,this)){return i}}return-1}}if(!Array.prototype.map){Array.prototype.map=function(callbackfn,thisArg){const a=[];for(let i=0;i<this.length;i++){const r=callbackfn(this[i],i,this);if(r!==undefined){a.push(r)}}return a}}if(!String.prototype.startsWith){String.prototype.startsWith=function(searchString,endPosition){const index=this.indexOf(searchString,endPosition);return index===0}}if(!String.prototype.endsWith){String.prototype.endsWith=function(searchString,endPosition){const index=this.lastIndexOf(searchString,endPosition);if(index===-1){return false}const l=this.length-index;return l===searchString.length}}if(!Number.parseInt){Number.parseInt=function(n){return Math.floor(parseFloat(n))}}if(!Number.parseFloat){Number.parseFloat=function(n){return parseFloat(n)}}if(typeof Element!=="undefined"){if(!("remove"in Element.prototype)){Element.prototype["remove"]=function(){if(this.parentNode){this.parentNode.removeChild(this)}}}}class Module{get url(){const u=AmdLoader.instance.resolveSource(this.name);Object.defineProperty(this,"url",{value:u,enumerable:true});return u}get meta(){return{url:this.url,resolve:this.require.resolve}}get filename(){return this.name}constructor(name,folder){this.name=name;this.folder=folder;this.emptyExports={};this.isLoaded=false;this.isResolved=false;this.dependencies=[];this.rID=null;const index=name.lastIndexOf("/");if(index===-1){this.folder=""}else{this.folder=name.substring(0,index)}this.exports=this.emptyExports}import(name){const resolvedName=this.require.resolve(name);return AmdLoader.instance.import(resolvedName)}addDependency(d){this.dependencies.push(d);if(UMD.debug){if(d.isDependentOn(this)){console.warn(`${d.name} already depends on ${this.name}`)}}}getExports(){if(this.factory){try{const factory=this.factory;this.factory=null;delete this.factory;AmdLoader.instance.currentStack.push(this);const result=factory(this.require,this.exports);if(result){if(typeof result==="object"||typeof result==="function"){this.exports=result;if(typeof result.default==="undefined"){result.default=result}}else if(!this.exports.default){this.exports.default=result}}AmdLoader.instance.currentStack.pop();delete this.factory;const def=this.exports.default;if(typeof def==="function"||typeof def==="object"){def[UMD.nameSymbol]=this.name}}catch(e){const em=e.stack?`${e}\n${e.stack}`:e;const s=[];console.error(e);for(const iterator of AmdLoader.instance.currentStack){s.push(iterator.name);console.error(iterator.name)}const ne=new Error(`Failed loading module ${this.name} with error ${em}\nDependents: ${s.join("\n\t")}`);console.error(ne);throw ne}}return this.exports}isDependentOn(m,visited){visited!==null&&visited!==void 0?visited:visited=new Set;visited.add(this);for(const iterator of this.dependencies){if(iterator===m){return true}if(visited.has(iterator)){continue}if(iterator.isDependentOn(m,visited)){return true}}return false}}Module.nextID=1;var _a;if(typeof require!=="undefined"){md=require("module").Module}const promiseDone=Promise.resolve(0);class AmdLoader{constructor(){this.root=null;this.defaultUrl=null;this.currentStack=[];this.nodeModules=[];this.modules=new Map;this.pathMap=new Map;this.mockTypes=[]}register(packages,modules){for(const iterator of packages){if(!this.pathMap.has(iterator)){this.map(iterator,"/")}}for(const iterator of modules){this.get(iterator)}}setupRoot(root,url){if(url.endsWith("/")){url=url.substring(0,url.length-1)}for(const key of this.pathMap.keys()){const moduleUrl=key===root?url:`${url}/node_modules/${key}`;this.map(key,moduleUrl)}this.defaultUrl=`${url}/node_modules/`}registerModule(name,moduleExports){const m=this.get(name);m.package.url="/";m.exports=Object.assign({__esModule:true},moduleExports);m.loader=promiseDone;m.resolver=()=>Promise.resolve(m.exports);m.isLoaded=true;m.isResolved=true}setup(name){const jsModule=this.get(name);const define=this.define;jsModule.loader=promiseDone;AmdLoader.current=jsModule;if(define){define()}if(jsModule.exportVar){jsModule.exports=AmdLoader.globalVar[jsModule.exportVar]}jsModule.isLoaded=true}replace(type,name,mock){if(mock&&!this.enableMock){return}const peek=this.currentStack.length?this.currentStack[this.currentStack.length-1]:undefined;name=this.resolveRelativePath(name,peek.name);const rt=new MockType(peek,type,name,mock);rt.replacedModule=this.get(rt.moduleName);rt.replacedModule.postExports=()=>{rt.replaced=rt.replacedModule.getExports()[rt.exportName]};(peek.dynamicImports=peek.dynamicImports||[]).push(rt);this.mockTypes.push(rt)}resolveType(type){const t=this.mockTypes.find((tx=>tx.type===type));return t?t.replaced:type}map(packageName,packageUrl,type="amd",exportVar){let existing=this.pathMap.get(packageName);if(existing){existing.url=packageUrl;existing.exportVar=exportVar;existing.type=type;return existing}existing={name:packageName,url:packageUrl,type,exportVar,version:""};if(packageName==="reflect-metadata"){type="global"}this.pathMap.set(packageName,existing);return existing}resolveSource(name,defExt=".js"){try{if(/^((\/)|((http|https)\:\/\/))/i.test(name)){return name}let path=null;for(const key of this.pathMap.keys()){const packageName=key;if(name.startsWith(packageName)){path=this.pathMap.get(key).url;if(name.length!==packageName.length){if(name[packageName.length]!=="/"){continue}name=name.substr(packageName.length+1)}else{return path}if(path.endsWith("/")){path=path.substr(0,path.length-1)}path=path+"/"+name;const i=name.lastIndexOf("/");const fileName=name.substr(i+1);if(fileName.indexOf(".")===-1){path=path+defExt}return path}}return name}catch(e){console.error(`Failed to resolve ${name} with error ${JSON.stringify(e)}`);console.error(e)}}resolveRelativePath(name,currentPackage){if(name.charAt(0)!=="."){return name}const tokens=name.split("/");const currentTokens=currentPackage.split("/");currentTokens.pop();while(tokens.length){const first=tokens[0];if(first===".."){currentTokens.pop();tokens.splice(0,1);continue}if(first==="."){tokens.splice(0,1)}break}return`${currentTokens.join("/")}/${tokens.join("/")}`}getPackageVersion(name){let[scope,packageName]=name.split("/",3);let version="";if(scope[0]!=="@"){packageName=scope;scope=""}else{scope+="/"}const versionTokens=packageName.split("@");if(versionTokens.length>1){version=versionTokens[1];name=name.replace("@"+version,"")}packageName=scope+packageName;return{packageName,version,name}}get(name1){let module=this.modules.get(name1);if(!module){const{packageName,version,name}=this.getPackageVersion(name1);module=new Module(name);this.modules.set(name1,module);let pp=this.pathMap.get(packageName);if(!pp){pp={type:"amd",name:packageName,version,url:this.defaultUrl?this.defaultUrl+packageName:undefined};this.pathMap.set(packageName,pp)}module.package=pp;module.require=(n,resolve,reject)=>{let isAsync=false;if(typeof n!=="string"){n=n[0];isAsync=true}const an=this.resolveRelativePath(n,module.name);const resolvedModule=this.get(an);if(isAsync){return this.import(resolvedModule).then(resolve,reject)}const m=resolvedModule.getExports();return m};module.require.resolve=n=>this.resolveRelativePath(n,module.name);this.modules.set(name,module)}return module}import(name){const module=typeof name==="object"?name:this.get(name);if(module.importPromise){return module.importPromise}const m=this.importNodeModule(module);if(m){return m}if(module.isResolved){module.importPromise=Promise.resolve(module.getExports());return module.importPromise}module.importPromise=this.importAsync(module);return module.importPromise}importNodeModule(module){if(typeof require!=="undefined"){const name=module.url;const moduleCode=require("fs").readFileSync(require.resolve(name),"utf8").trim();if(!/^System\.Register/.test(moduleCode)){return Promise.resolve(require(name))}}}importAsync(module){return __awaiter(this,void 0,void 0,(function*(){yield this.load(module);if(module.resolver){return yield module.resolver()}return yield this.resolve(module)}))}resolve(module){return __awaiter(this,void 0,void 0,(function*(){const ds=[];if(UMD.debug){const waiting=module.waiting=[];for(const iterator of module.dependencies){if(iterator.isResolved||iterator.importPromise&&iterator.isDependentOn(module)){continue}waiting.push(iterator);ds.push(this.import(iterator))}}else{for(const iterator of module.dependencies){if(iterator.isResolved||iterator.importPromise&&iterator.isDependentOn(module)){continue}ds.push(this.import(iterator))}}yield Promise.all(ds);const exports=module.getExports();module.isResolved=true;if(module.postExports){module.postExports()}if(module.dynamicImports){for(const iterator of module.dynamicImports){if(iterator.replacedModule.importPromise){continue}yield this.import(iterator.replacedModule)}}return exports}))}load(module){if(module.loader){return module.loader}if(AmdLoader.isJson.test(module.url)){const mUrl=module.url.startsWith(module.package.url)?module.url:module.package.url+module.url;module.loader=new Promise(((resolve,reject)=>{try{AmdLoader.httpTextLoader(mUrl,(r=>{try{module.exports=JSON.parse(r);module.emptyExports=module.exports;module.isLoaded=true;resolve()}catch(e){reject(e)}}),reject)}catch(e1){reject(e1)}}));return module.loader}if(AmdLoader.isMedia.test(module.url)){const m={get url(){const mUrl=!module.url.startsWith(module.package.url)?module.package.url+module.url:module.url;Object.defineProperty(m,"url",{value:mUrl,enumerable:true});return mUrl},toString(){return this.url}};const e={__esModule:true,default:m};module.exports=e;module.emptyExports=e;module.loader=promiseDone;module.isLoaded=true;return module.loader}module.loader=new Promise(((resolve,reject)=>{AmdLoader.moduleLoader(module.name,module.url,(()=>{try{AmdLoader.current=module;if(AmdLoader.instance.define){AmdLoader.instance.define();AmdLoader.instance.define=null}if(module.exportVar){module.exports=AmdLoader.globalVar[module.exportVar]}if(AmdLoader.moduleProgress){AmdLoader.moduleProgress(module.name,this.modules,"loading")}module.isLoaded=true;resolve()}catch(e){console.error(e);reject(e)}}),(error=>{reject(error)}))}));return module.loader}}AmdLoader.isMedia=/\.(jpg|jpeg|gif|png|mp4|mp3|css|html|svg)$/i;AmdLoader.isJson=/\.json$/i;AmdLoader.globalVar={};AmdLoader.instance=new AmdLoader;AmdLoader.current=null;const a=AmdLoader.instance;a.map("global","/","global");a.registerModule("global/document",{default:document});a.registerModule("global/window",{default:typeof window!=="undefined"?window:global});a.map("reflect-metadata","/","global");a.registerModule("reflect-metadata",Reflect);AmdLoader.moduleLoader=(name,url,success,error)=>{const script=document.createElement("script");script.type="text/javascript";script.src=url;const s=script;script.onload=s.onreadystatechange=()=>{if(s.readyState&&s.readyState!=="complete"&&s.readyState!=="loaded"){return}script.onload=s.onreadystatechange=null;success()};script.onerror=e=>{error(e)};document.body.appendChild(script)};AmdLoader.httpTextLoader=(url,success,error)=>{const xhr=new XMLHttpRequest;xhr.onreadystatechange=e=>{if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){success(xhr.responseText)}else{error(xhr.responseText)}}};xhr.open("GET",url);xhr.send()};var amdConfig;amdConfig!==null&&amdConfig!==void 0?amdConfig:amdConfig={};(_a=amdConfig.moduleProgress)!==null&&_a!==void 0?_a:amdConfig.moduleProgress=(()=>{if(!document){return(name,p)=>{console.log(`${name} ${p}%`)}}return(name,n,status)=>{}})();AmdLoader.moduleProgress=amdConfig.moduleProgress;var define=(requiresOrFactory,factory,nested)=>{const loader=AmdLoader.instance;function bindFactory(module,requireList,fx){if(module.factory){return}module.dependencies=[];let requires=requireList;requires=requireList;const args=[];for(const s of requires){if(s==="require"){args.push(module.require);continue}if(s==="exports"){args.push(module.emptyExports);continue}if(/^global/.test(s)){args.push(loader.get(s).exports)}const name=loader.resolveRelativePath(s,module.name);const child=loader.get(name);module.addDependency(child)}module.factory=()=>fx.apply(module,args)}if(nested){const name=requiresOrFactory;const rList=factory;const f=nested;const module=AmdLoader.instance.get(name);bindFactory(module,rList,f);return}AmdLoader.instance.define=()=>{const current=AmdLoader.current;if(!current){return}if(current.factory){return}if(typeof requiresOrFactory==="function"){bindFactory(current,[],requiresOrFactory)}else{bindFactory(current,requiresOrFactory,factory)}}};define.amd={};class MockType{constructor(module,type,name,mock,moduleName,exportName){this.module=module;this.type=type;this.name=name;this.mock=mock;this.moduleName=moduleName;this.exportName=exportName;this.name=name=name.replace("{lang}",UMD.lang).replace("{platform}",UMD.viewPrefix);if(name.indexOf("$")!==-1){const tokens=name.split("$");this.moduleName=tokens[0];this.exportName=tokens[1]||tokens[0].split("/").pop()}else{this.moduleName=name;this.exportName="default"}}}const merge=(target,source)=>{for(const key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}};const enumerable=true,configurable=true;class System{static resolve(id){return AmdLoader.instance.resolveSource(id)}static import(name){return AmdLoader.instance.import(name)}static register(nameOrImports,importsOrSetup,setup){const instance=AmdLoader.instance;instance.define=()=>{const name=typeof nameOrImports==="string"?nameOrImports:AmdLoader.current.name;let imports=importsOrSetup;if(arguments.length===2){imports=nameOrImports;setup=importsOrSetup}const module=instance.get(name);module.dependencies.push(...imports.map((x=>instance.get(module.require.resolve(x)))));module.isLoaded=true;const postResolve=new Promise(((resolve,reject)=>{module.factory=()=>{const r=setup(((key,value)=>{if(typeof key==="object"){merge(module.exports,key);return module.exports}module.exports[key]=value;return value}),module);var list=module.dependencies;const{setters}=r;for(let index=0;index<list.length;index++){const element=list[index];setters[index](element.getExports())}const rp=r.execute();if(rp===null||rp===void 0?void 0:rp.then){rp.then(resolve,reject)}else{resolve()}return module.exports}}));module.resolver=()=>__awaiter(this,void 0,void 0,(function*(){yield AmdLoader.instance.resolve(module);yield postResolve;return module.exports}))}}}class UMDClass{constructor(){this.debug=false;this.viewPrefix="web";this.defaultApp="@web-atoms/core/dist/web/WebApp";this.lang="en-US";this.nameSymbol=typeof Symbol!=="undefined"?Symbol():"_$_nameSymbol"}get mock(){return AmdLoader.instance.enableMock}set mock(v){AmdLoader.instance.enableMock=v}resolvePath(n){return AmdLoader.instance.resolveSource(n,null)}resolveViewPath(path){return path.replace("{platform}",this.viewPrefix)}resolveType(type){return AmdLoader.instance.resolveType(type)}map(name,path,type="amd",exportVar){AmdLoader.instance.map(name,path,type,exportVar)}setupRoot(name,url){AmdLoader.instance.setupRoot(name,url)}mockType(type,name){AmdLoader.instance.replace(type,name,true)}inject(type,name){AmdLoader.instance.replace(type,name,false)}resolveViewClassAsync(path){return __awaiter(this,void 0,void 0,(function*(){path=this.resolveViewPath(path);const e=yield AmdLoader.instance.import(path);return e.default}))}import(path){return AmdLoader.instance.import(path)}load(path,designMode){return __awaiter(this,void 0,void 0,(function*(){this.mock=designMode;const t=yield AmdLoader.instance.import("@web-atoms/core/dist/core/types");const a=yield AmdLoader.instance.import("@web-atoms/core/dist/Atom");a.Atom.designMode=designMode;const al=yield AmdLoader.instance.import("@web-atoms/core/dist/core/AtomList");return yield AmdLoader.instance.import(path)}))}hostView(id,path,designMode){return __awaiter(this,void 0,void 0,(function*(){try{this.mock=designMode;AmdLoader.instance.get(path);const m=yield this.load(this.defaultApp,designMode);const app=new m.default;app.onReady((()=>__awaiter(this,void 0,void 0,(function*(){try{const viewClass=yield AmdLoader.instance.import(path);const view=new viewClass.default(app);const element=document.getElementById(id);element.appendChild(view.element)}catch(e){console.error(e)}}))))}catch(e){console.error(e)}}))}loadView(path,designMode,appPath){return __awaiter(this,void 0,void 0,(function*(){try{this.mock=designMode;appPath=appPath||this.defaultApp;AmdLoader.instance.get(path);const m=yield this.load(appPath,designMode);const app=new m.default;return yield new Promise(((resolve,reject)=>{app.onReady((()=>__awaiter(this,void 0,void 0,(function*(){try{const viewClass=yield AmdLoader.instance.import(path);const view=new viewClass.default(app);app.root=view;resolve(view)}catch(e){console.error(e);reject(e)}}))))}))}catch(er){console.error(er);throw er}}))}}const UMD=new UMDClass;(u=>{const globalNS=typeof window!=="undefined"?window:global;globalNS.UMD=u;globalNS.AmdLoader=AmdLoader;globalNS.System=System;AmdLoader.instance.registerModule("tslib",setupTSLib())})(UMD);AmdLoader.instance.register(["@social-mail/social-mail-client","@web-atoms/core","reflect-metadata","@web-atoms/web-controls","@web-atoms/date-time","@web-atoms/entity","@web-atoms/email-dom","@web-atoms/data-styles"],["@social-mail/social-mail-client/dist/web/AppIndex","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/ExpressionParser","@web-atoms/core/dist/core/types","reflect-metadata","@web-atoms/core/dist/core/AtomMap","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/AtomLoader","@web-atoms/core/dist/services/JsonService","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/di/RegisterSingleton","@web-atoms/core/dist/di/Register","@web-atoms/core/dist/di/ServiceCollection","@web-atoms/core/dist/di/TypeKey","@web-atoms/date-time/dist/DateTime","@web-atoms/date-time/dist/TimeSpan","@web-atoms/core/dist/services/ReferenceService","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/core/AtomUri","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/core/Command","@web-atoms/core/dist/core/EventScope","@web-atoms/core/dist/core/Route","@web-atoms/core/dist/core/InheritedProperty","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/sleep","@web-atoms/core/dist/services/NavigationService","@web-atoms/core/dist/core/AtomComponent","@web-atoms/core/dist/App","@web-atoms/core/dist/core/AtomDispatcher","@web-atoms/core/dist/di/ServiceProvider","@web-atoms/core/dist/core/TransientDisposable","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/services/BusyIndicatorService","@web-atoms/core/dist/core/AtomBridge","@web-atoms/core/dist/core/AtomDisposableList","@web-atoms/core/dist/core/AtomWatcher","@web-atoms/core/dist/core/PropertyMap","@web-atoms/core/dist/core/FormattedString","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/WebImage","@web-atoms/core/dist/web/styles/AtomStyle","@web-atoms/core/dist/web/styles/AtomStyleSheet","@web-atoms/core/dist/web/services/PopupService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/services/PopupWindow","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/desktop-app/DesktopApp","@social-mail/social-mail-client/dist/web/commands/AppCommands","@social-mail/social-mail-client/dist/web/page/home/HomePage","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxListPage","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/WatchProperty","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/styles/inline-popup-style","@web-atoms/web-controls/dist/basic/MergeNode","@web-atoms/web-controls/dist/basic/ItemPath","@web-atoms/web-controls/dist/basic/styles/ui-display-none-style","@web-atoms/web-controls/dist/basic/styles/popup-style","@web-atoms/web-controls/dist/basic/styles/suggestion-popup","@web-atoms/web-controls/dist/basic/styles/repeater-style","@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater","@social-mail/social-mail-client/dist/common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/di/DITransient","@social-mail/social-mail-client/dist/services/EntityService","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/entity/dist/models/Cloner","@web-atoms/entity/dist/models/cloneSource","@web-atoms/entity/dist/models/IEntityModel","@web-atoms/entity/dist/services/HttpSession","@web-atoms/core/dist/services/http/JsonError","@web-atoms/entity/dist/services/mergeProperties","@web-atoms/entity/dist/services/Query","@web-atoms/entity/dist/services/StringHelper","@web-atoms/entity/dist/services/resolve","@social-mail/social-mail-client/dist/services/BusyProgress","@social-mail/social-mail-client/dist/model/model","@social-mail/social-mail-client/dist/common/Sql","@social-mail/social-mail-client/dist/common/SocialMailApp","@web-atoms/core/dist/view-model/Action","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxEditorPage","@web-atoms/web-controls/dist/basic/Form","@social-mail/social-mail-client/dist/common/controls/form/RequiredFormField","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/styles/form-field-style","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/basic/styles/password-box-style","@web-atoms/web-controls/dist/basic/ComboBox","@social-mail/social-mail-client/dist/common/controls/buttons/IconButton","@social-mail/social-mail-client/dist/admin/pages/users/ChooseUserPage","@social-mail/social-mail-client/dist/admin/pages/users/services/AdminUserService","@social-mail/social-mail-client/dist/common/NumberFormats","@social-mail/social-mail-client/dist/common/commands/CommonCommands","@social-mail/social-mail-client/dist/web/page/mails/MailsPage","@social-mail/social-mail-client/dist/web/page/mails/service/MailService","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@social-mail/social-mail-client/dist/web/page/mails/ConversationPage","@social-mail/social-mail-client/dist/web/page/mails/service/ConversationService","@web-atoms/email-dom/dist/DomToString","@web-atoms/email-dom/dist/dom/StyleHelper","@web-atoms/email-dom/dist/style/mergeStyle","@social-mail/social-mail-client/dist/common/events/CommonEvents","@social-mail/social-mail-client/dist/web/page/mails/ComposeMailPage","@social-mail/social-mail-client/dist/common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/InlineHtmlEditor","@web-atoms/data-styles/data-styles","@web-atoms/web-controls/dist/html-editor/commands/AddImage","@web-atoms/web-controls/dist/html-editor/commands/CommandButton","@web-atoms/web-controls/dist/html-editor/commands/HtmlCommands","@web-atoms/web-controls/dist/html-editor/commands/Toolbar","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Command","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/styles/popup-button-style","@web-atoms/web-controls/dist/html-editor/commands/HorizontalRule","@web-atoms/web-controls/dist/html-editor/commands/Separator","@web-atoms/web-controls/dist/html-editor/commands/Headings","@web-atoms/web-controls/dist/html-editor/commands/ChangeColor","@web-atoms/web-controls/dist/html-editor/commands/ChangeFont","@web-atoms/web-controls/dist/html-editor/commands/ChangeFontSize","@web-atoms/web-controls/dist/html-editor/commands/NumberedList","@web-atoms/web-controls/dist/html-editor/commands/UnorderedList","@web-atoms/web-controls/dist/html-editor/commands/IndentLess","@web-atoms/web-controls/dist/html-editor/commands/IndentMore","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/core/dist/web/controls/AtomToggleButtonBar","@web-atoms/core/dist/web/styles/AtomToggleButtonBarStyle","@web-atoms/core/dist/web/styles/AtomListBoxStyle","@web-atoms/core/dist/web/controls/AtomListBox","@web-atoms/core/dist/web/controls/AtomItemsControl","@web-atoms/core/dist/core/AtomEnumerator","@web-atoms/core/dist/core/AtomList","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/RemoveFormat","@web-atoms/web-controls/dist/html-editor/commands/Source","@web-atoms/web-controls/dist/basic/UploadEvent","@social-mail/social-mail-client/dist/services/files/LocalFileService","@web-atoms/web-controls/dist/basic/TitleEditor","@web-atoms/web-controls/dist/basic/styles/title-editor-style","@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailRecipientChips","@web-atoms/web-controls/dist/basic/AtomChips","@web-atoms/web-controls/dist/basic/Chip","@web-atoms/web-controls/dist/basic/styles/chip-style","@web-atoms/web-controls/dist/basic/styles/chips-style","@web-atoms/web-controls/dist/basic/styles/item-suggestion-style","@social-mail/social-mail-client/dist/services/email-addresses/EmailAddressService","@social-mail/social-mail-client/dist/common/cache/CacheTTL","@social-mail/social-mail-client/dist/services/socket/sockets","@web-atoms/web-controls/dist/basic/LimitedText","@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage","@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage","@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage","@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/basic/Expander","@web-atoms/web-controls/dist/basic/styles/expander-style","@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage","@web-atoms/web-controls/dist/basic/Checkbox","@web-atoms/web-controls/dist/basic/styles/checkbox-style","@social-mail/social-mail-client/dist/web/page/files/FolderPage","@social-mail/social-mail-client/dist/common/controls/tree/TreeView","@social-mail/social-mail-client/dist/common/controls/drag-drop/FilesDragDrop","@social-mail/social-mail-client/dist/web/page/files/shares/EditSharesPage","@social-mail/social-mail-client/dist/services/files/FileShareService","@social-mail/social-mail-client/dist/web/page/files/shares/AddSharePage","@web-atoms/web-controls/dist/basic/Switch","@web-atoms/web-controls/dist/basic/styles/switch-style","@social-mail/social-mail-client/dist/common/controls/drop-downs/user/UserDropDown","@web-atoms/web-controls/dist/basic/DropDown","@web-atoms/web-controls/dist/basic/styles/drop-down-style","@web-atoms/web-controls/dist/basic/DateField","@web-atoms/web-controls/dist/basic/Calendar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/web-controls/dist/basic/styles/calendar-style","@web-atoms/web-controls/dist/basic/TimeEditor","@web-atoms/web-controls/dist/basic/styles/time-editor-style","@web-atoms/web-controls/dist/basic/styles/date-field-style","@social-mail/social-mail-client/dist/common/date/DateFormats","@social-mail/social-mail-client/dist/web/page/templates/EditTemplatePage","@social-mail/social-mail-client/dist/services/mime-service/MimeNode","@social-mail/social-mail-client/dist/common/QueryIterator","@social-mail/social-mail-client/dist/services/mime-service/AttachmentFile","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentType","@social-mail/social-mail-client/dist/services/mime-service/parsePairs","@social-mail/social-mail-client/dist/services/mime-service/tokenizer","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentDisposition","@social-mail/social-mail-client/dist/services/mime-service/encoder/word-encoding","@social-mail/social-mail-client/dist/services/mime-service/encoder/RawBuffer","@social-mail/social-mail-client/dist/services/mime-service/encoder/base64-to-blob","@social-mail/social-mail-client/dist/services/mime-service/encoder/quoted-printable","@social-mail/social-mail-client/dist/services/mime-service/MimeMessage","@social-mail/social-mail-client/dist/services/mime-service/stream/LineStream","@social-mail/social-mail-client/dist/services/mime-service/stream/TextWriter","@social-mail/social-mail-client/dist/style/GlobalStyle","@social-mail/social-mail-client/dist/style/OverrideAppStyle","@social-mail/social-mail-client/dist/services/UserService","@social-mail/social-mail-client/dist/common/pages/user/LoginPage","@social-mail/social-mail-client/dist/common/controls/password/PasswordStrength","@social-mail/social-mail-client/dist/common/validators/Validators","@social-mail/social-mail-client/dist/web/drawer/AppDrawer","@social-mail/social-mail-client/dist/common/controls/menu/MenuItem","@social-mail/social-mail-client/dist/common/controls/ModuleInfo","@web-atoms/core/dist/web/WebApp","@web-atoms/core/dist/core/AtomOnce","@web-atoms/core/dist/web/services/WebBusyIndicatorService","@web-atoms/core/dist/web/styles/StyleBuilder","@web-atoms/core/dist/web/services/WindowService","@web-atoms/core/dist/Atom","@web-atoms/core/dist/core/FormattedError","@web-atoms/core/dist/view-model/AtomWindowViewModel","@web-atoms/core/dist/view-model/AtomViewModel","@web-atoms/core/dist/view-model/baseTypes","@web-atoms/core/dist/web/controls/AtomAlertWindow","@web-atoms/core/dist/web/styles/AtomAlertWindowStyle","@web-atoms/core/dist/web/styles/AtomWindowStyle","@web-atoms/core/src/web/images/close-button-hover.svg","@web-atoms/core/dist/web/controls/AtomWindow","@web-atoms/core/dist/web/controls/AtomTemplate","@web-atoms/core/dist/web/controls/AtomNotification","@web-atoms/core/dist/web/styles/AtomNotificationStyle","@web-atoms/core/dist/web/styles/AtomPopupStyle","@web-atoms/core/dist/web/services/NotificationPopup","@web-atoms/core/dist/web/styles/AtomTheme"]);System.register([],(function(_export,_context){"use strict";function InjectProperty(target,key){Object.defineProperty(target,key,{get:function(){const plist=Reflect.getMetadata("design:type",target,key);const result=this.app.resolve(plist);Object.defineProperty(this,key,{get:()=>result});return result},configurable:true})}_export("default",InjectProperty);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/InjectProperty");System.register([],(function(_export,_context){"use strict";var viewModelParseWatchCache,viewModelParseWatchCache2;function trimRegEx(t,r){const m=r.exec(t);if(m&&m.length){return[true,t.substring(m[0].length).trim(),m[0]]}return[false,t,""]}function extractTill(text,search,returnOriginal=false){const index=text.indexOf(search);if(index<=0){return returnOriginal?text:""}return text.substring(0,index)}function parsePath(f,parseThis){let str=f.toString().trim();str=str.split("\n").filter((s=>!/^\/\//.test(s.trim()))).join("\n");const key=(parseThis===undefined?"un:":parseThis?"_this:":"_noThis:")+str;const px1=viewModelParseWatchCache[key];if(px1){return px1}if(str.endsWith("}")){str=str.substr(0,str.length-1)}const functionRegEx=/^\w+\s*\(/;const lambdaRegEx=/^\(?(\w+)?(\s?\,\s?\w+)*\)?\s?\=\>/;let arg="";const original=str;let[success,remaining]=trimRegEx(str,functionRegEx);if(success){str=remaining;remaining=extractTill(remaining,")");str=str.substring(remaining.length);arg=extractTill(remaining,",",true)}else{[success,str,remaining]=trimRegEx(str,lambdaRegEx);if(success){remaining=remaining.trim();remaining=remaining.substring(0,remaining.length-2);remaining=extractTill(remaining,")",true);arg=extractTill(remaining,",",true);if(arg.startsWith("(")){arg=arg.substring(1)}}else{if(parseThis!==undefined&&parseThis===false){return[]}else{parseThis=true}}}str=str.trim();const isThis=parseThis===undefined?(arg?false:true)||parseThis:parseThis;const p=(isThis?"(\\_this|this)":arg||"").trim();if(p.length===0){const empty=[];viewModelParseWatchCache[key]=empty;return empty}const regExp=`(?:(\\b${p})(?:(\\.[a-zA-Z_][a-zA-Z_0-9]*)+)\\s?(?:(\\(|\\=\\=\\=|\\=\\=|\\=)?))`;const re=new RegExp(regExp,"gi");let path=[];const ms=str.replace(re,(m=>{let px=m;if(px.startsWith("this.")){if(parseThis!==true){px=px.substr(5)}}else if(px.startsWith("_this.")){if(parseThis!==true){px=px.substr(6)}else{px=px.substr(1)}}else{px=px.substr(p.length+1)}px=px.split(".").filter((s=>!s.endsWith("("))).join(".");if(!path.find((y=>y===px))){path.push(px)}const filtered=[];for(const iterator of path){if(iterator.endsWith("==")||!(iterator.endsWith("(")||iterator.endsWith("="))){filtered.push((iterator.endsWith("===")?iterator.substr(0,iterator.length-3):iterator.endsWith("==")?iterator.substr(0,iterator.length-2):iterator).trim())}}path=filtered.filter((px11=>{const search=px11+".";for(const iterator of filtered){if(px11!==iterator&&iterator.indexOf(search)!==-1){return false}}return true}));return m}));path=path.sort(((a,b)=>b.localeCompare(a)));const duplicates=path;path=[];for(const iterator of duplicates){if(path.find((px2=>px2===iterator))){continue}path.push(iterator)}const rp=[];for(const rpItem of path){if(rp.find((x=>x.startsWith(rpItem)))){continue}rp.push(rpItem)}const pl=path.filter((p1=>p1)).map((p1=>p1.split(".")));viewModelParseWatchCache[key]=pl;return pl}function parsePathLists(f){const str=f.toString().trim();const key=str;const px1=viewModelParseWatchCache2[key];if(px1){return px1}const pl={pathList:parsePath(str,false),thisPath:parsePath(str,true),combined:[]};if(pl.thisPath.length&&pl.pathList.length){pl.combined=pl.thisPath.map((x=>{x[0]="t";x.splice(0,0,"this");return x})).concat(pl.pathList.map((x=>{x.splice(0,0,"this","x");return x})));pl.thisPath=[];pl.pathList=[]}viewModelParseWatchCache2[key]=pl;return pl}_export({parsePath,parsePathLists});return{setters:[],execute:function(){viewModelParseWatchCache={};viewModelParseWatchCache2={}}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/ExpressionParser");
1
+ var __awaiter=this&&this.__awaiter||function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};function setupTSLib(){var __extends;var __assign;var __rest;var __decorate;var __param;var __metadata;var __awaiter;var __generator;var __exportStar;var __values;var __read;var __spread;var __spreadArrays;var __spreadArray;var __await;var __asyncGenerator;var __asyncDelegator;var __asyncValues;var __makeTemplateObject;var __importStar;var __importDefault;var __classPrivateFieldGet;var __classPrivateFieldSet;var __classPrivateFieldIn;var __createBinding;var extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var p in b)if(Object.prototype.hasOwnProperty.call(b,p))d[p]=b[p]};__extends=function(d,b){if(typeof b!=="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)};__assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p))t[p]=s[p]}return t};__rest=function(s,e){var t={};for(var p in s)if(Object.prototype.hasOwnProperty.call(s,p)&&e.indexOf(p)<0)t[p]=s[p];if(s!=null&&typeof Object.getOwnPropertySymbols==="function")for(var i=0,p=Object.getOwnPropertySymbols(s);i<p.length;i++){if(e.indexOf(p[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p[i]))t[p[i]]=s[p[i]]}return t};__decorate=function(decorators,target,key,desc){var c=arguments.length,r=c<3?target:desc===null?desc=Object.getOwnPropertyDescriptor(target,key):desc,d;if(typeof Reflect==="object"&&typeof Reflect.decorate==="function")r=Reflect.decorate(decorators,target,key,desc);else for(var i=decorators.length-1;i>=0;i--)if(d=decorators[i])r=(c<3?d(r):c>3?d(target,key,r):d(target,key))||r;return c>3&&r&&Object.defineProperty(target,key,r),r};__param=function(paramIndex,decorator){return function(target,key){decorator(target,key,paramIndex)}};__metadata=function(metadataKey,metadataValue){if(typeof Reflect==="object"&&typeof Reflect.metadata==="function")return Reflect.metadata(metadataKey,metadataValue)};__awaiter=function(thisArg,_arguments,P,generator){function adopt(value){return value instanceof P?value:new P((function(resolve){resolve(value)}))}return new(P||(P=Promise))((function(resolve,reject){function fulfilled(value){try{step(generator.next(value))}catch(e){reject(e)}}function rejected(value){try{step(generator["throw"](value))}catch(e){reject(e)}}function step(result){result.done?resolve(result.value):adopt(result.value).then(fulfilled,rejected)}step((generator=generator.apply(thisArg,_arguments||[])).next())}))};__generator=function(thisArg,body){var _={label:0,sent:function(){if(t[0]&1)throw t[1];return t[1]},trys:[],ops:[]},f,y,t,g;return g={next:verb(0),throw:verb(1),return:verb(2)},typeof Symbol==="function"&&(g[Symbol.iterator]=function(){return this}),g;function verb(n){return function(v){return step([n,v])}}function step(op){if(f)throw new TypeError("Generator is already executing.");while(g&&(g=0,op[0]&&(_=0)),_)try{if(f=1,y&&(t=op[0]&2?y["return"]:op[0]?y["throw"]||((t=y["return"])&&t.call(y),0):y.next)&&!(t=t.call(y,op[1])).done)return t;if(y=0,t)op=[op[0]&2,t.value];switch(op[0]){case 0:case 1:t=op;break;case 4:_.label++;return{value:op[1],done:false};case 5:_.label++;y=op[1];op=[0];continue;case 7:op=_.ops.pop();_.trys.pop();continue;default:if(!(t=_.trys,t=t.length>0&&t[t.length-1])&&(op[0]===6||op[0]===2)){_=0;continue}if(op[0]===3&&(!t||op[1]>t[0]&&op[1]<t[3])){_.label=op[1];break}if(op[0]===6&&_.label<t[1]){_.label=t[1];t=op;break}if(t&&_.label<t[2]){_.label=t[2];_.ops.push(op);break}if(t[2])_.ops.pop();_.trys.pop();continue}op=body.call(thisArg,_)}catch(e){op=[6,e];y=0}finally{f=t=0}if(op[0]&5)throw op[1];return{value:op[0]?op[1]:void 0,done:true}}};__exportStar=function(m,o){for(var p in m)if(p!=="default"&&!Object.prototype.hasOwnProperty.call(o,p))__createBinding(o,m,p)};__createBinding=Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]};__values=function(o){var s=typeof Symbol==="function"&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&typeof o.length==="number")return{next:function(){if(o&&i>=o.length)o=void 0;return{value:o&&o[i++],done:!o}}};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")};__read=function(o,n){var m=typeof Symbol==="function"&&o[Symbol.iterator];if(!m)return o;var i=m.call(o),r,ar=[],e;try{while((n===void 0||n-- >0)&&!(r=i.next()).done)ar.push(r.value)}catch(error){e={error}}finally{try{if(r&&!r.done&&(m=i["return"]))m.call(i)}finally{if(e)throw e.error}}return ar};__spread=function(){for(var ar=[],i=0;i<arguments.length;i++)ar=ar.concat(__read(arguments[i]));return ar};__spreadArrays=function(){for(var s=0,i=0,il=arguments.length;i<il;i++)s+=arguments[i].length;for(var r=Array(s),k=0,i=0;i<il;i++)for(var a=arguments[i],j=0,jl=a.length;j<jl;j++,k++)r[k]=a[j];return r};__spreadArray=function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;i++){if(ar||!(i in from)){if(!ar)ar=Array.prototype.slice.call(from,0,i);ar[i]=from[i]}}return to.concat(ar||Array.prototype.slice.call(from))};__await=function(v){return this instanceof __await?(this.v=v,this):new __await(v)};__asyncGenerator=function(thisArg,_arguments,generator){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var g=generator.apply(thisArg,_arguments||[]),i,q=[];return i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i;function verb(n){if(g[n])i[n]=function(v){return new Promise((function(a,b){q.push([n,v,a,b])>1||resume(n,v)}))}}function resume(n,v){try{step(g[n](v))}catch(e){settle(q[0][3],e)}}function step(r){r.value instanceof __await?Promise.resolve(r.value.v).then(fulfill,reject):settle(q[0][2],r)}function fulfill(value){resume("next",value)}function reject(value){resume("throw",value)}function settle(f,v){if(f(v),q.shift(),q.length)resume(q[0][0],q[0][1])}};__asyncDelegator=function(o){var i,p;return i={},verb("next"),verb("throw",(function(e){throw e})),verb("return"),i[Symbol.iterator]=function(){return this},i;function verb(n,f){i[n]=o[n]?function(v){return(p=!p)?{value:__await(o[n](v)),done:false}:f?f(v):v}:f}};__asyncValues=function(o){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var m=o[Symbol.asyncIterator],i;return m?m.call(o):(o=typeof __values==="function"?__values(o):o[Symbol.iterator](),i={},verb("next"),verb("throw"),verb("return"),i[Symbol.asyncIterator]=function(){return this},i);function verb(n){i[n]=o[n]&&function(v){return new Promise((function(resolve,reject){v=o[n](v),settle(resolve,reject,v.done,v.value)}))}}function settle(resolve,reject,d,v){Promise.resolve(v).then((function(v){resolve({value:v,done:d})}),reject)}};__makeTemplateObject=function(cooked,raw){if(Object.defineProperty){Object.defineProperty(cooked,"raw",{value:raw})}else{cooked.raw=raw}return cooked};var __setModuleDefault=Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v};__importStar=function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};__importDefault=function(mod){return mod&&mod.__esModule?mod:{default:mod}};__classPrivateFieldGet=function(receiver,state,kind,f){if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a getter");if(typeof state==="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot read private member from an object whose class did not declare it");return kind==="m"?f:kind==="a"?f.call(receiver):f?f.value:state.get(receiver)};__classPrivateFieldSet=function(receiver,state,value,kind,f){if(kind==="m")throw new TypeError("Private method is not writable");if(kind==="a"&&!f)throw new TypeError("Private accessor was defined without a setter");if(typeof state==="function"?receiver!==state||!f:!state.has(receiver))throw new TypeError("Cannot write private member to an object whose class did not declare it");return kind==="a"?f.call(receiver,value):f?f.value=value:state.set(receiver,value),value};__classPrivateFieldIn=function(state,receiver){if(receiver===null||typeof receiver!=="object"&&typeof receiver!=="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof state==="function"?receiver===state:state.has(receiver)};return{__extends,__assign,__rest,__decorate,__param,__metadata,__awaiter,__generator,__exportStar,__values,__read,__spread,__spreadArrays,__spreadArray,__await,__asyncGenerator,__asyncDelegator,__asyncValues,__makeTemplateObject,__importStar,__importDefault,__classPrivateFieldGet,__classPrivateFieldSet,__classPrivateFieldIn,__createBinding}}var Reflect;(function(Reflect){(function(factory){const root=typeof global==="object"?global:typeof self==="object"?self:typeof this==="object"?this:Function("return this;")();let exporter=makeExporter(Reflect);if(typeof root.Reflect==="undefined"){root.Reflect=Reflect}else{exporter=makeExporter(root.Reflect,exporter)}factory(exporter);function makeExporter(target,previous){return(key,value)=>{if(typeof target[key]!=="function"){Object.defineProperty(target,key,{configurable:true,writable:true,value})}if(previous)previous(key,value)}}})((function(exporter){const hasOwn=Object.prototype.hasOwnProperty;const supportsSymbol=typeof Symbol==="function";const toPrimitiveSymbol=supportsSymbol&&typeof Symbol.toPrimitive!=="undefined"?Symbol.toPrimitive:"@@toPrimitive";const iteratorSymbol=supportsSymbol&&typeof Symbol.iterator!=="undefined"?Symbol.iterator:"@@iterator";const supportsCreate=typeof Object.create==="function";const supportsProto={__proto__:[]}instanceof Array;const downLevel=!supportsCreate&&!supportsProto;const HashMap={create:supportsCreate?()=>MakeDictionary(Object.create(null)):supportsProto?()=>MakeDictionary({__proto__:null}):()=>MakeDictionary({}),has:downLevel?(map,key)=>hasOwn.call(map,key):(map,key)=>key in map,get:downLevel?(map,key)=>hasOwn.call(map,key)?map[key]:undefined:(map,key)=>map[key]};const functionPrototype=Object.getPrototypeOf(Function);const usePolyfill=typeof process==="object"&&process.env&&process.env["REFLECT_METADATA_USE_MAP_POLYFILL"]==="true";const _Map=!usePolyfill&&typeof Map==="function"&&typeof Map.prototype.entries==="function"?Map:CreateMapPolyfill();const _Set=!usePolyfill&&typeof Set==="function"&&typeof Set.prototype.entries==="function"?Set:CreateSetPolyfill();const _WeakMap=!usePolyfill&&typeof WeakMap==="function"?WeakMap:CreateWeakMapPolyfill();const Metadata=new _WeakMap;function decorate(decorators,target,propertyKey,attributes){if(!IsUndefined(propertyKey)){if(!IsArray(decorators))throw new TypeError;if(!IsObject(target))throw new TypeError;if(!IsObject(attributes)&&!IsUndefined(attributes)&&!IsNull(attributes))throw new TypeError;if(IsNull(attributes))attributes=undefined;propertyKey=ToPropertyKey(propertyKey);return DecorateProperty(decorators,target,propertyKey,attributes)}else{if(!IsArray(decorators))throw new TypeError;if(!IsConstructor(target))throw new TypeError;return DecorateConstructor(decorators,target)}}exporter("decorate",decorate);function metadata(metadataKey,metadataValue){function decorator(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey)&&!IsPropertyKey(propertyKey))throw new TypeError;OrdinaryDefineOwnMetadata(metadataKey,metadataValue,target,propertyKey)}return decorator}exporter("metadata",metadata);function defineMetadata(metadataKey,metadataValue,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryDefineOwnMetadata(metadataKey,metadataValue,target,propertyKey)}exporter("defineMetadata",defineMetadata);function hasMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryHasMetadata(metadataKey,target,propertyKey)}exporter("hasMetadata",hasMetadata);function hasOwnMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryHasOwnMetadata(metadataKey,target,propertyKey)}exporter("hasOwnMetadata",hasOwnMetadata);function getMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryGetMetadata(metadataKey,target,propertyKey)}exporter("getMetadata",getMetadata);function getOwnMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryGetOwnMetadata(metadataKey,target,propertyKey)}exporter("getOwnMetadata",getOwnMetadata);function getMetadataKeys(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryMetadataKeys(target,propertyKey)}exporter("getMetadataKeys",getMetadataKeys);function getOwnMetadataKeys(target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);return OrdinaryOwnMetadataKeys(target,propertyKey)}exporter("getOwnMetadataKeys",getOwnMetadataKeys);function deleteMetadata(metadataKey,target,propertyKey){if(!IsObject(target))throw new TypeError;if(!IsUndefined(propertyKey))propertyKey=ToPropertyKey(propertyKey);const metadataMap=GetOrCreateMetadataMap(target,propertyKey,false);if(IsUndefined(metadataMap))return false;if(!metadataMap.delete(metadataKey))return false;if(metadataMap.size>0)return true;const targetMetadata=Metadata.get(target);targetMetadata.delete(propertyKey);if(targetMetadata.size>0)return true;Metadata.delete(target);return true}exporter("deleteMetadata",deleteMetadata);function DecorateConstructor(decorators,target){for(let i=decorators.length-1;i>=0;--i){const decorator=decorators[i];const decorated=decorator(target);if(!IsUndefined(decorated)&&!IsNull(decorated)){if(!IsConstructor(decorated))throw new TypeError;target=decorated}}return target}function DecorateProperty(decorators,target,propertyKey,descriptor){for(let i=decorators.length-1;i>=0;--i){const decorator=decorators[i];const decorated=decorator(target,propertyKey,descriptor);if(!IsUndefined(decorated)&&!IsNull(decorated)){if(!IsObject(decorated))throw new TypeError;descriptor=decorated}}return descriptor}function GetOrCreateMetadataMap(O,P,Create){let targetMetadata=Metadata.get(O);if(IsUndefined(targetMetadata)){if(!Create)return undefined;targetMetadata=new _Map;Metadata.set(O,targetMetadata)}let metadataMap=targetMetadata.get(P);if(IsUndefined(metadataMap)){if(!Create)return undefined;metadataMap=new _Map;targetMetadata.set(P,metadataMap)}return metadataMap}function OrdinaryHasMetadata(MetadataKey,O,P){const hasOwn=OrdinaryHasOwnMetadata(MetadataKey,O,P);if(hasOwn)return true;const parent=OrdinaryGetPrototypeOf(O);if(!IsNull(parent))return OrdinaryHasMetadata(MetadataKey,parent,P);return false}function OrdinaryHasOwnMetadata(MetadataKey,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return false;return ToBoolean(metadataMap.has(MetadataKey))}function OrdinaryGetMetadata(MetadataKey,O,P){const hasOwn=OrdinaryHasOwnMetadata(MetadataKey,O,P);if(hasOwn)return OrdinaryGetOwnMetadata(MetadataKey,O,P);const parent=OrdinaryGetPrototypeOf(O);if(!IsNull(parent))return OrdinaryGetMetadata(MetadataKey,parent,P);return undefined}function OrdinaryGetOwnMetadata(MetadataKey,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return undefined;return metadataMap.get(MetadataKey)}function OrdinaryDefineOwnMetadata(MetadataKey,MetadataValue,O,P){const metadataMap=GetOrCreateMetadataMap(O,P,true);metadataMap.set(MetadataKey,MetadataValue)}function OrdinaryMetadataKeys(O,P){const ownKeys=OrdinaryOwnMetadataKeys(O,P);const parent=OrdinaryGetPrototypeOf(O);if(parent===null)return ownKeys;const parentKeys=OrdinaryMetadataKeys(parent,P);if(parentKeys.length<=0)return ownKeys;if(ownKeys.length<=0)return parentKeys;const set=new _Set;const keys=[];for(const key of ownKeys){const hasKey=set.has(key);if(!hasKey){set.add(key);keys.push(key)}}for(const key of parentKeys){const hasKey=set.has(key);if(!hasKey){set.add(key);keys.push(key)}}return keys}function OrdinaryOwnMetadataKeys(O,P){const keys=[];const metadataMap=GetOrCreateMetadataMap(O,P,false);if(IsUndefined(metadataMap))return keys;const keysObj=metadataMap.keys();const iterator=GetIterator(keysObj);let k=0;while(true){const next=IteratorStep(iterator);if(!next){keys.length=k;return keys}const nextValue=IteratorValue(next);try{keys[k]=nextValue}catch(e){try{IteratorClose(iterator)}finally{throw e}}k++}}function Type(x){if(x===null)return 1;switch(typeof x){case"undefined":return 0;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"object":return x===null?1:6;default:return 6}}function IsUndefined(x){return x===undefined}function IsNull(x){return x===null}function IsSymbol(x){return typeof x==="symbol"}function IsObject(x){return typeof x==="object"?x!==null:typeof x==="function"}function ToPrimitive(input,PreferredType){switch(Type(input)){case 0:return input;case 1:return input;case 2:return input;case 3:return input;case 4:return input;case 5:return input}const hint=PreferredType===3?"string":PreferredType===5?"number":"default";const exoticToPrim=GetMethod(input,toPrimitiveSymbol);if(exoticToPrim!==undefined){const result=exoticToPrim.call(input,hint);if(IsObject(result))throw new TypeError;return result}return OrdinaryToPrimitive(input,hint==="default"?"number":hint)}function OrdinaryToPrimitive(O,hint){if(hint==="string"){const toString=O.toString;if(IsCallable(toString)){const result=toString.call(O);if(!IsObject(result))return result}const valueOf=O.valueOf;if(IsCallable(valueOf)){const result=valueOf.call(O);if(!IsObject(result))return result}}else{const valueOf=O.valueOf;if(IsCallable(valueOf)){const result=valueOf.call(O);if(!IsObject(result))return result}const toString=O.toString;if(IsCallable(toString)){const result=toString.call(O);if(!IsObject(result))return result}}throw new TypeError}function ToBoolean(argument){return!!argument}function ToString(argument){return""+argument}function ToPropertyKey(argument){const key=ToPrimitive(argument,3);if(IsSymbol(key))return key;return ToString(key)}function IsArray(argument){return Array.isArray?Array.isArray(argument):argument instanceof Object?argument instanceof Array:Object.prototype.toString.call(argument)==="[object Array]"}function IsCallable(argument){return typeof argument==="function"}function IsConstructor(argument){return typeof argument==="function"}function IsPropertyKey(argument){switch(Type(argument)){case 3:return true;case 4:return true;default:return false}}function GetMethod(V,P){const func=V[P];if(func===undefined||func===null)return undefined;if(!IsCallable(func))throw new TypeError;return func}function GetIterator(obj){const method=GetMethod(obj,iteratorSymbol);if(!IsCallable(method))throw new TypeError;const iterator=method.call(obj);if(!IsObject(iterator))throw new TypeError;return iterator}function IteratorValue(iterResult){return iterResult.value}function IteratorStep(iterator){const result=iterator.next();return result.done?false:result}function IteratorClose(iterator){const f=iterator["return"];if(f)f.call(iterator)}function OrdinaryGetPrototypeOf(O){const proto=Object.getPrototypeOf(O);if(typeof O!=="function"||O===functionPrototype)return proto;if(proto!==functionPrototype)return proto;const prototype=O.prototype;const prototypeProto=prototype&&Object.getPrototypeOf(prototype);if(prototypeProto==null||prototypeProto===Object.prototype)return proto;const constructor=prototypeProto.constructor;if(typeof constructor!=="function")return proto;if(constructor===O)return proto;return constructor}function CreateMapPolyfill(){const cacheSentinel={};const arraySentinel=[];class MapIterator{constructor(keys,values,selector){this._index=0;this._keys=keys;this._values=values;this._selector=selector}"@@iterator"(){return this}[iteratorSymbol](){return this}next(){const index=this._index;if(index>=0&&index<this._keys.length){const result=this._selector(this._keys[index],this._values[index]);if(index+1>=this._keys.length){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}else{this._index++}return{value:result,done:false}}return{value:undefined,done:true}}throw(error){if(this._index>=0){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}throw error}return(value){if(this._index>=0){this._index=-1;this._keys=arraySentinel;this._values=arraySentinel}return{value,done:true}}}return class Map{constructor(){this._keys=[];this._values=[];this._cacheKey=cacheSentinel;this._cacheIndex=-2}get size(){return this._keys.length}has(key){return this._find(key,false)>=0}get(key){const index=this._find(key,false);return index>=0?this._values[index]:undefined}set(key,value){const index=this._find(key,true);this._values[index]=value;return this}delete(key){const index=this._find(key,false);if(index>=0){const size=this._keys.length;for(let i=index+1;i<size;i++){this._keys[i-1]=this._keys[i];this._values[i-1]=this._values[i]}this._keys.length--;this._values.length--;if(key===this._cacheKey){this._cacheKey=cacheSentinel;this._cacheIndex=-2}return true}return false}clear(){this._keys.length=0;this._values.length=0;this._cacheKey=cacheSentinel;this._cacheIndex=-2}keys(){return new MapIterator(this._keys,this._values,getKey)}values(){return new MapIterator(this._keys,this._values,getValue)}entries(){return new MapIterator(this._keys,this._values,getEntry)}"@@iterator"(){return this.entries()}[iteratorSymbol](){return this.entries()}_find(key,insert){if(this._cacheKey!==key){this._cacheIndex=this._keys.indexOf(this._cacheKey=key)}if(this._cacheIndex<0&&insert){this._cacheIndex=this._keys.length;this._keys.push(key);this._values.push(undefined)}return this._cacheIndex}};function getKey(key,_){return key}function getValue(_,value){return value}function getEntry(key,value){return[key,value]}}function CreateSetPolyfill(){return class Set{constructor(){this._map=new _Map}get size(){return this._map.size}has(value){return this._map.has(value)}add(value){return this._map.set(value,value),this}delete(value){return this._map.delete(value)}clear(){this._map.clear()}keys(){return this._map.keys()}values(){return this._map.values()}entries(){return this._map.entries()}"@@iterator"(){return this.keys()}[iteratorSymbol](){return this.keys()}}}function CreateWeakMapPolyfill(){const UUID_SIZE=16;const keys=HashMap.create();const rootKey=CreateUniqueKey();return class WeakMap{constructor(){this._key=CreateUniqueKey()}has(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?HashMap.has(table,this._key):false}get(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?HashMap.get(table,this._key):undefined}set(target,value){const table=GetOrCreateWeakMapTable(target,true);table[this._key]=value;return this}delete(target){const table=GetOrCreateWeakMapTable(target,false);return table!==undefined?delete table[this._key]:false}clear(){this._key=CreateUniqueKey()}};function CreateUniqueKey(){let key;do{key="@@WeakMap@@"+CreateUUID()}while(HashMap.has(keys,key));keys[key]=true;return key}function GetOrCreateWeakMapTable(target,create){if(!hasOwn.call(target,rootKey)){if(!create)return undefined;Object.defineProperty(target,rootKey,{value:HashMap.create()})}return target[rootKey]}function FillRandomBytes(buffer,size){for(let i=0;i<size;++i)buffer[i]=Math.random()*255|0;return buffer}function GenRandomBytes(size){if(typeof Uint8Array==="function"){if(typeof crypto!=="undefined")return crypto.getRandomValues(new Uint8Array(size));if(typeof msCrypto!=="undefined")return msCrypto.getRandomValues(new Uint8Array(size));return FillRandomBytes(new Uint8Array(size),size)}return FillRandomBytes(new Array(size),size)}function CreateUUID(){const data=GenRandomBytes(UUID_SIZE);data[6]=data[6]&79|64;data[8]=data[8]&191|128;let result="";for(let offset=0;offset<UUID_SIZE;++offset){const byte=data[offset];if(offset===4||offset===6||offset===8)result+="-";if(byte<16)result+="0";result+=byte.toString(16).toLowerCase()}return result}}function MakeDictionary(obj){obj.__=undefined;delete obj.__;return obj}}))})(Reflect||(Reflect={}));if(!Array.prototype.find){Array.prototype.find=function(predicate,thisArg){for(let i=0;i<this.length;i++){const item=this[i];if(predicate(item,i,this)){return item}}}}if(!Array.prototype.findIndex){Array.prototype.findIndex=function(predicate,thisArg){for(let i=0;i<this.length;i++){const item=this[i];if(predicate(item,i,this)){return i}}return-1}}if(!Array.prototype.map){Array.prototype.map=function(callbackfn,thisArg){const a=[];for(let i=0;i<this.length;i++){const r=callbackfn(this[i],i,this);if(r!==undefined){a.push(r)}}return a}}if(!String.prototype.startsWith){String.prototype.startsWith=function(searchString,endPosition){const index=this.indexOf(searchString,endPosition);return index===0}}if(!String.prototype.endsWith){String.prototype.endsWith=function(searchString,endPosition){const index=this.lastIndexOf(searchString,endPosition);if(index===-1){return false}const l=this.length-index;return l===searchString.length}}if(!Number.parseInt){Number.parseInt=function(n){return Math.floor(parseFloat(n))}}if(!Number.parseFloat){Number.parseFloat=function(n){return parseFloat(n)}}if(typeof Element!=="undefined"){if(!("remove"in Element.prototype)){Element.prototype["remove"]=function(){if(this.parentNode){this.parentNode.removeChild(this)}}}}class Module{get url(){const u=AmdLoader.instance.resolveSource(this.name);Object.defineProperty(this,"url",{value:u,enumerable:true});return u}get meta(){return{url:this.url,resolve:this.require.resolve}}get filename(){return this.name}constructor(name,folder){this.name=name;this.folder=folder;this.emptyExports={};this.isLoaded=false;this.isResolved=false;this.dependencies=[];this.rID=null;const index=name.lastIndexOf("/");if(index===-1){this.folder=""}else{this.folder=name.substring(0,index)}this.exports=this.emptyExports}import(name){const resolvedName=this.require.resolve(name);return AmdLoader.instance.import(resolvedName)}addDependency(d){this.dependencies.push(d);if(UMD.debug){if(d.isDependentOn(this)){console.warn(`${d.name} already depends on ${this.name}`)}}}getExports(){if(this.factory){try{const factory=this.factory;this.factory=null;delete this.factory;AmdLoader.instance.currentStack.push(this);const result=factory(this.require,this.exports);if(result){if(typeof result==="object"||typeof result==="function"){this.exports=result;if(typeof result.default==="undefined"){result.default=result}}else if(!this.exports.default){this.exports.default=result}}AmdLoader.instance.currentStack.pop();delete this.factory;const def=this.exports.default;if(typeof def==="function"||typeof def==="object"){def[UMD.nameSymbol]=this.name}}catch(e){const em=e.stack?`${e}\n${e.stack}`:e;const s=[];console.error(e);for(const iterator of AmdLoader.instance.currentStack){s.push(iterator.name);console.error(iterator.name)}const ne=new Error(`Failed loading module ${this.name} with error ${em}\nDependents: ${s.join("\n\t")}`);console.error(ne);throw ne}}return this.exports}isDependentOn(m,visited){visited!==null&&visited!==void 0?visited:visited=new Set;visited.add(this);for(const iterator of this.dependencies){if(iterator===m){return true}if(visited.has(iterator)){continue}if(iterator.isDependentOn(m,visited)){return true}}return false}}Module.nextID=1;var _a;if(typeof require!=="undefined"){md=require("module").Module}const promiseDone=Promise.resolve(0);class AmdLoader{constructor(){this.root=null;this.defaultUrl=null;this.currentStack=[];this.nodeModules=[];this.modules=new Map;this.pathMap=new Map;this.mockTypes=[]}register(packages,modules){for(const iterator of packages){if(!this.pathMap.has(iterator)){this.map(iterator,"/")}}for(const iterator of modules){this.get(iterator)}}setupRoot(root,url){if(url.endsWith("/")){url=url.substring(0,url.length-1)}for(const key of this.pathMap.keys()){const moduleUrl=key===root?url:`${url}/node_modules/${key}`;this.map(key,moduleUrl)}this.defaultUrl=`${url}/node_modules/`}registerModule(name,moduleExports){const m=this.get(name);m.package.url="/";m.exports=Object.assign({__esModule:true},moduleExports);m.loader=promiseDone;m.resolver=()=>Promise.resolve(m.exports);m.isLoaded=true;m.isResolved=true}setup(name){const jsModule=this.get(name);const define=this.define;jsModule.loader=promiseDone;AmdLoader.current=jsModule;if(define){define()}if(jsModule.exportVar){jsModule.exports=AmdLoader.globalVar[jsModule.exportVar]}jsModule.isLoaded=true}replace(type,name,mock){if(mock&&!this.enableMock){return}const peek=this.currentStack.length?this.currentStack[this.currentStack.length-1]:undefined;name=this.resolveRelativePath(name,peek.name);const rt=new MockType(peek,type,name,mock);rt.replacedModule=this.get(rt.moduleName);rt.replacedModule.postExports=()=>{rt.replaced=rt.replacedModule.getExports()[rt.exportName]};(peek.dynamicImports=peek.dynamicImports||[]).push(rt);this.mockTypes.push(rt)}resolveType(type){const t=this.mockTypes.find((tx=>tx.type===type));return t?t.replaced:type}map(packageName,packageUrl,type="amd",exportVar){let existing=this.pathMap.get(packageName);if(existing){existing.url=packageUrl;existing.exportVar=exportVar;existing.type=type;return existing}existing={name:packageName,url:packageUrl,type,exportVar,version:""};if(packageName==="reflect-metadata"){type="global"}this.pathMap.set(packageName,existing);return existing}resolveSource(name,defExt=".js"){try{if(/^((\/)|((http|https)\:\/\/))/i.test(name)){return name}let path=null;for(const key of this.pathMap.keys()){const packageName=key;if(name.startsWith(packageName)){path=this.pathMap.get(key).url;if(name.length!==packageName.length){if(name[packageName.length]!=="/"){continue}name=name.substr(packageName.length+1)}else{return path}if(path.endsWith("/")){path=path.substr(0,path.length-1)}path=path+"/"+name;const i=name.lastIndexOf("/");const fileName=name.substr(i+1);if(fileName.indexOf(".")===-1){path=path+defExt}return path}}return name}catch(e){console.error(`Failed to resolve ${name} with error ${JSON.stringify(e)}`);console.error(e)}}resolveRelativePath(name,currentPackage){if(name.charAt(0)!=="."){return name}const tokens=name.split("/");const currentTokens=currentPackage.split("/");currentTokens.pop();while(tokens.length){const first=tokens[0];if(first===".."){currentTokens.pop();tokens.splice(0,1);continue}if(first==="."){tokens.splice(0,1)}break}return`${currentTokens.join("/")}/${tokens.join("/")}`}getPackageVersion(name){let[scope,packageName]=name.split("/",3);let version="";if(scope[0]!=="@"){packageName=scope;scope=""}else{scope+="/"}const versionTokens=packageName.split("@");if(versionTokens.length>1){version=versionTokens[1];name=name.replace("@"+version,"")}packageName=scope+packageName;return{packageName,version,name}}get(name1){let module=this.modules.get(name1);if(!module){const{packageName,version,name}=this.getPackageVersion(name1);module=new Module(name);this.modules.set(name1,module);let pp=this.pathMap.get(packageName);if(!pp){pp={type:"amd",name:packageName,version,url:this.defaultUrl?this.defaultUrl+packageName:undefined};this.pathMap.set(packageName,pp)}module.package=pp;module.require=(n,resolve,reject)=>{let isAsync=false;if(typeof n!=="string"){n=n[0];isAsync=true}const an=this.resolveRelativePath(n,module.name);const resolvedModule=this.get(an);if(isAsync){return this.import(resolvedModule).then(resolve,reject)}const m=resolvedModule.getExports();return m};module.require.resolve=n=>this.resolveRelativePath(n,module.name);this.modules.set(name,module)}return module}import(name){const module=typeof name==="object"?name:this.get(name);if(module.importPromise){return module.importPromise}const m=this.importNodeModule(module);if(m){return m}if(module.isResolved){module.importPromise=Promise.resolve(module.getExports());return module.importPromise}module.importPromise=this.importAsync(module);return module.importPromise}importNodeModule(module){if(typeof require!=="undefined"){const name=module.url;const moduleCode=require("fs").readFileSync(require.resolve(name),"utf8").trim();if(!/^System\.Register/.test(moduleCode)){return Promise.resolve(require(name))}}}importAsync(module){return __awaiter(this,void 0,void 0,(function*(){yield this.load(module);if(module.resolver){return yield module.resolver()}return yield this.resolve(module)}))}resolve(module){return __awaiter(this,void 0,void 0,(function*(){const ds=[];if(UMD.debug){const waiting=module.waiting=[];for(const iterator of module.dependencies){if(iterator.isResolved||iterator.importPromise&&iterator.isDependentOn(module)){continue}waiting.push(iterator);ds.push(this.import(iterator))}}else{for(const iterator of module.dependencies){if(iterator.isResolved||iterator.importPromise&&iterator.isDependentOn(module)){continue}ds.push(this.import(iterator))}}yield Promise.all(ds);const exports=module.getExports();module.isResolved=true;if(module.postExports){module.postExports()}if(module.dynamicImports){for(const iterator of module.dynamicImports){if(iterator.replacedModule.importPromise){continue}yield this.import(iterator.replacedModule)}}return exports}))}load(module){if(module.loader){return module.loader}if(AmdLoader.isJson.test(module.url)){const mUrl=module.url.startsWith(module.package.url)?module.url:module.package.url+module.url;module.loader=new Promise(((resolve,reject)=>{try{AmdLoader.httpTextLoader(mUrl,(r=>{try{module.exports=JSON.parse(r);module.emptyExports=module.exports;module.isLoaded=true;resolve()}catch(e){reject(e)}}),reject)}catch(e1){reject(e1)}}));return module.loader}if(AmdLoader.isMedia.test(module.url)){const m={get url(){const mUrl=!module.url.startsWith(module.package.url)?module.package.url+module.url:module.url;Object.defineProperty(m,"url",{value:mUrl,enumerable:true});return mUrl},toString(){return this.url}};const e={__esModule:true,default:m};module.exports=e;module.emptyExports=e;module.loader=promiseDone;module.isLoaded=true;return module.loader}module.loader=new Promise(((resolve,reject)=>{AmdLoader.moduleLoader(module.name,module.url,(()=>{try{AmdLoader.current=module;if(AmdLoader.instance.define){AmdLoader.instance.define();AmdLoader.instance.define=null}if(module.exportVar){module.exports=AmdLoader.globalVar[module.exportVar]}if(AmdLoader.moduleProgress){AmdLoader.moduleProgress(module.name,this.modules,"loading")}module.isLoaded=true;resolve()}catch(e){console.error(e);reject(e)}}),(error=>{reject(error)}))}));return module.loader}}AmdLoader.isMedia=/\.(jpg|jpeg|gif|png|mp4|mp3|css|html|svg)$/i;AmdLoader.isJson=/\.json$/i;AmdLoader.globalVar={};AmdLoader.instance=new AmdLoader;AmdLoader.current=null;const a=AmdLoader.instance;a.map("global","/","global");a.registerModule("global/document",{default:document});a.registerModule("global/window",{default:typeof window!=="undefined"?window:global});a.map("reflect-metadata","/","global");a.registerModule("reflect-metadata",Reflect);AmdLoader.moduleLoader=(name,url,success,error)=>{const script=document.createElement("script");script.type="text/javascript";script.src=url;const s=script;script.onload=s.onreadystatechange=()=>{if(s.readyState&&s.readyState!=="complete"&&s.readyState!=="loaded"){return}script.onload=s.onreadystatechange=null;success()};script.onerror=e=>{error(e)};document.body.appendChild(script)};AmdLoader.httpTextLoader=(url,success,error)=>{const xhr=new XMLHttpRequest;xhr.onreadystatechange=e=>{if(xhr.readyState===XMLHttpRequest.DONE){if(xhr.status===200){success(xhr.responseText)}else{error(xhr.responseText)}}};xhr.open("GET",url);xhr.send()};var amdConfig;amdConfig!==null&&amdConfig!==void 0?amdConfig:amdConfig={};(_a=amdConfig.moduleProgress)!==null&&_a!==void 0?_a:amdConfig.moduleProgress=(()=>{if(!document){return(name,p)=>{console.log(`${name} ${p}%`)}}return(name,n,status)=>{}})();AmdLoader.moduleProgress=amdConfig.moduleProgress;var define=(requiresOrFactory,factory,nested)=>{const loader=AmdLoader.instance;function bindFactory(module,requireList,fx){if(module.factory){return}module.dependencies=[];let requires=requireList;requires=requireList;const args=[];for(const s of requires){if(s==="require"){args.push(module.require);continue}if(s==="exports"){args.push(module.emptyExports);continue}if(/^global/.test(s)){args.push(loader.get(s).exports)}const name=loader.resolveRelativePath(s,module.name);const child=loader.get(name);module.addDependency(child)}module.factory=()=>fx.apply(module,args)}if(nested){const name=requiresOrFactory;const rList=factory;const f=nested;const module=AmdLoader.instance.get(name);bindFactory(module,rList,f);return}AmdLoader.instance.define=()=>{const current=AmdLoader.current;if(!current){return}if(current.factory){return}if(typeof requiresOrFactory==="function"){bindFactory(current,[],requiresOrFactory)}else{bindFactory(current,requiresOrFactory,factory)}}};define.amd={};class MockType{constructor(module,type,name,mock,moduleName,exportName){this.module=module;this.type=type;this.name=name;this.mock=mock;this.moduleName=moduleName;this.exportName=exportName;this.name=name=name.replace("{lang}",UMD.lang).replace("{platform}",UMD.viewPrefix);if(name.indexOf("$")!==-1){const tokens=name.split("$");this.moduleName=tokens[0];this.exportName=tokens[1]||tokens[0].split("/").pop()}else{this.moduleName=name;this.exportName="default"}}}const merge=(target,source)=>{for(const key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}};const enumerable=true,configurable=true;class System{static resolve(id){return AmdLoader.instance.resolveSource(id)}static import(name){return AmdLoader.instance.import(name)}static register(nameOrImports,importsOrSetup,setup){const instance=AmdLoader.instance;instance.define=()=>{const name=typeof nameOrImports==="string"?nameOrImports:AmdLoader.current.name;let imports=importsOrSetup;if(arguments.length===2){imports=nameOrImports;setup=importsOrSetup}const module=instance.get(name);module.dependencies.push(...imports.map((x=>instance.get(module.require.resolve(x)))));module.isLoaded=true;const postResolve=new Promise(((resolve,reject)=>{module.factory=()=>{const r=setup(((key,value)=>{if(typeof key==="object"){merge(module.exports,key);return module.exports}module.exports[key]=value;return value}),module);var list=module.dependencies;const{setters}=r;for(let index=0;index<list.length;index++){const element=list[index];setters[index](element.getExports())}const rp=r.execute();if(rp===null||rp===void 0?void 0:rp.then){rp.then(resolve,reject)}else{resolve()}return module.exports}}));module.resolver=()=>__awaiter(this,void 0,void 0,(function*(){yield AmdLoader.instance.resolve(module);yield postResolve;return module.exports}))}}}class UMDClass{constructor(){this.debug=false;this.viewPrefix="web";this.defaultApp="@web-atoms/core/dist/web/WebApp";this.lang="en-US";this.nameSymbol=typeof Symbol!=="undefined"?Symbol():"_$_nameSymbol"}get mock(){return AmdLoader.instance.enableMock}set mock(v){AmdLoader.instance.enableMock=v}resolvePath(n){return AmdLoader.instance.resolveSource(n,null)}resolveViewPath(path){return path.replace("{platform}",this.viewPrefix)}resolveType(type){return AmdLoader.instance.resolveType(type)}map(name,path,type="amd",exportVar){AmdLoader.instance.map(name,path,type,exportVar)}setupRoot(name,url){AmdLoader.instance.setupRoot(name,url)}mockType(type,name){AmdLoader.instance.replace(type,name,true)}inject(type,name){AmdLoader.instance.replace(type,name,false)}resolveViewClassAsync(path){return __awaiter(this,void 0,void 0,(function*(){path=this.resolveViewPath(path);const e=yield AmdLoader.instance.import(path);return e.default}))}import(path){return AmdLoader.instance.import(path)}load(path,designMode){return __awaiter(this,void 0,void 0,(function*(){this.mock=designMode;const t=yield AmdLoader.instance.import("@web-atoms/core/dist/core/types");const a=yield AmdLoader.instance.import("@web-atoms/core/dist/Atom");a.Atom.designMode=designMode;const al=yield AmdLoader.instance.import("@web-atoms/core/dist/core/AtomList");return yield AmdLoader.instance.import(path)}))}hostView(id,path,designMode){return __awaiter(this,void 0,void 0,(function*(){try{this.mock=designMode;AmdLoader.instance.get(path);const m=yield this.load(this.defaultApp,designMode);const app=new m.default;app.onReady((()=>__awaiter(this,void 0,void 0,(function*(){try{const viewClass=yield AmdLoader.instance.import(path);const view=new viewClass.default(app);const element=document.getElementById(id);element.appendChild(view.element)}catch(e){console.error(e)}}))))}catch(e){console.error(e)}}))}loadView(path,designMode,appPath){return __awaiter(this,void 0,void 0,(function*(){try{this.mock=designMode;appPath=appPath||this.defaultApp;AmdLoader.instance.get(path);const m=yield this.load(appPath,designMode);const app=new m.default;return yield new Promise(((resolve,reject)=>{app.onReady((()=>__awaiter(this,void 0,void 0,(function*(){try{const viewClass=yield AmdLoader.instance.import(path);const view=new viewClass.default(app);app.root=view;resolve(view)}catch(e){console.error(e);reject(e)}}))))}))}catch(er){console.error(er);throw er}}))}}const UMD=new UMDClass;(u=>{const globalNS=typeof window!=="undefined"?window:global;globalNS.UMD=u;globalNS.AmdLoader=AmdLoader;globalNS.System=System;AmdLoader.instance.registerModule("tslib",setupTSLib())})(UMD);AmdLoader.instance.register(["@social-mail/social-mail-client","@web-atoms/core","reflect-metadata","@web-atoms/web-controls","@web-atoms/date-time","@web-atoms/entity","@web-atoms/email-dom","@web-atoms/data-styles"],["@social-mail/social-mail-client/dist/web/AppIndex","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/ExpressionParser","@web-atoms/core/dist/core/types","reflect-metadata","@web-atoms/core/dist/core/AtomMap","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/core/dist/core/AtomLoader","@web-atoms/core/dist/services/JsonService","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/di/RegisterSingleton","@web-atoms/core/dist/di/Register","@web-atoms/core/dist/di/ServiceCollection","@web-atoms/core/dist/di/TypeKey","@web-atoms/date-time/dist/DateTime","@web-atoms/date-time/dist/TimeSpan","@web-atoms/core/dist/services/ReferenceService","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/core/AtomUri","@web-atoms/core/dist/web/core/AtomUI","@web-atoms/core/dist/core/Command","@web-atoms/core/dist/core/EventScope","@web-atoms/core/dist/core/Route","@web-atoms/core/dist/core/InheritedProperty","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/sleep","@web-atoms/core/dist/services/NavigationService","@web-atoms/core/dist/core/AtomComponent","@web-atoms/core/dist/App","@web-atoms/core/dist/core/AtomDispatcher","@web-atoms/core/dist/di/ServiceProvider","@web-atoms/core/dist/core/TransientDisposable","@web-atoms/core/dist/di/Inject","@web-atoms/core/dist/services/BusyIndicatorService","@web-atoms/core/dist/core/AtomBridge","@web-atoms/core/dist/core/AtomDisposableList","@web-atoms/core/dist/core/AtomWatcher","@web-atoms/core/dist/core/PropertyMap","@web-atoms/core/dist/core/FormattedString","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/WebImage","@web-atoms/core/dist/web/styles/AtomStyle","@web-atoms/core/dist/web/styles/AtomStyleSheet","@web-atoms/core/dist/web/services/PopupService","@web-atoms/core/dist/style/styled","@web-atoms/core/dist/web/services/PopupWindow","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/web-controls/dist/desktop-app/DesktopApp","@social-mail/social-mail-client/dist/web/commands/AppCommands","@social-mail/social-mail-client/dist/web/page/home/HomePage","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxListPage","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/WatchProperty","@web-atoms/web-controls/dist/basic/InlinePopup","@web-atoms/web-controls/dist/basic/styles/inline-popup-style","@web-atoms/web-controls/dist/basic/MergeNode","@web-atoms/web-controls/dist/basic/ItemPath","@web-atoms/web-controls/dist/basic/styles/ui-display-none-style","@web-atoms/web-controls/dist/basic/styles/popup-style","@web-atoms/web-controls/dist/basic/styles/suggestion-popup","@web-atoms/web-controls/dist/basic/styles/repeater-style","@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater","@social-mail/social-mail-client/dist/common/pages/mailboxes/services/MailboxService","@web-atoms/core/dist/di/DITransient","@social-mail/social-mail-client/dist/services/EntityService","@web-atoms/entity/dist/services/BaseEntityService","@web-atoms/entity/dist/models/Cloner","@web-atoms/entity/dist/models/cloneSource","@web-atoms/entity/dist/models/IEntityModel","@web-atoms/entity/dist/services/HttpSession","@web-atoms/core/dist/services/http/JsonError","@web-atoms/entity/dist/models/TaskManager","@web-atoms/entity/dist/models/Queue","@web-atoms/entity/dist/services/mergeProperties","@web-atoms/entity/dist/services/Query","@web-atoms/entity/dist/services/StringHelper","@web-atoms/entity/dist/services/resolve","@social-mail/social-mail-client/dist/services/BusyProgress","@social-mail/social-mail-client/dist/model/model","@social-mail/social-mail-client/dist/common/Sql","@social-mail/social-mail-client/dist/common/SocialMailApp","@web-atoms/core/dist/view-model/Action","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxEditorPage","@web-atoms/web-controls/dist/basic/Form","@social-mail/social-mail-client/dist/common/controls/form/RequiredFormField","@web-atoms/web-controls/dist/basic/FormField","@web-atoms/web-controls/dist/basic/styles/form-field-style","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/web-controls/dist/basic/styles/password-box-style","@web-atoms/web-controls/dist/basic/ComboBox","@social-mail/social-mail-client/dist/common/controls/buttons/IconButton","@social-mail/social-mail-client/dist/admin/pages/users/ChooseUserPage","@social-mail/social-mail-client/dist/admin/pages/users/services/AdminUserService","@social-mail/social-mail-client/dist/common/NumberFormats","@social-mail/social-mail-client/dist/common/commands/CommonCommands","@social-mail/social-mail-client/dist/web/page/mails/MailsPage","@social-mail/social-mail-client/dist/web/page/mails/service/MailService","@web-atoms/web-controls/dist/mobile-app/MasterDetailPage","@social-mail/social-mail-client/dist/web/page/mails/ConversationPage","@social-mail/social-mail-client/dist/web/page/mails/service/ConversationService","@web-atoms/email-dom/dist/DomToString","@web-atoms/email-dom/dist/dom/StyleHelper","@web-atoms/email-dom/dist/style/mergeStyle","@social-mail/social-mail-client/dist/common/events/CommonEvents","@social-mail/social-mail-client/dist/web/page/mails/ComposeMailPage","@social-mail/social-mail-client/dist/common/controls/html/InlineHtmlEditorWithToolbar","@web-atoms/web-controls/dist/html-editor/InlineHtmlEditor","@web-atoms/data-styles/data-styles","@web-atoms/web-controls/dist/html-editor/commands/AddImage","@web-atoms/web-controls/dist/html-editor/commands/CommandButton","@web-atoms/web-controls/dist/html-editor/commands/HtmlCommands","@web-atoms/web-controls/dist/html-editor/commands/Toolbar","@web-atoms/web-controls/dist/html-editor/commands/Bold","@web-atoms/web-controls/dist/html-editor/commands/Command","@web-atoms/web-controls/dist/html-editor/commands/Italic","@web-atoms/web-controls/dist/html-editor/commands/Underline","@web-atoms/web-controls/dist/html-editor/commands/StrikeThrough","@web-atoms/web-controls/dist/html-editor/commands/Align","@web-atoms/web-controls/dist/basic/PopupButton","@web-atoms/web-controls/dist/basic/styles/popup-button-style","@web-atoms/web-controls/dist/html-editor/commands/HorizontalRule","@web-atoms/web-controls/dist/html-editor/commands/Separator","@web-atoms/web-controls/dist/html-editor/commands/Headings","@web-atoms/web-controls/dist/html-editor/commands/ChangeColor","@web-atoms/web-controls/dist/html-editor/commands/ChangeFont","@web-atoms/web-controls/dist/html-editor/commands/ChangeFontSize","@web-atoms/web-controls/dist/html-editor/commands/NumberedList","@web-atoms/web-controls/dist/html-editor/commands/UnorderedList","@web-atoms/web-controls/dist/html-editor/commands/IndentLess","@web-atoms/web-controls/dist/html-editor/commands/IndentMore","@web-atoms/web-controls/dist/html-editor/commands/AddLink","@web-atoms/core/dist/web/controls/AtomToggleButtonBar","@web-atoms/core/dist/web/styles/AtomToggleButtonBarStyle","@web-atoms/core/dist/web/styles/AtomListBoxStyle","@web-atoms/core/dist/web/controls/AtomListBox","@web-atoms/core/dist/web/controls/AtomItemsControl","@web-atoms/core/dist/core/AtomEnumerator","@web-atoms/core/dist/core/AtomList","@web-atoms/web-controls/dist/html-editor/commands/Unlink","@web-atoms/web-controls/dist/html-editor/commands/RemoveFormat","@web-atoms/web-controls/dist/html-editor/commands/Source","@web-atoms/web-controls/dist/basic/UploadEvent","@social-mail/social-mail-client/dist/services/files/LocalFileService","@web-atoms/web-controls/dist/basic/TitleEditor","@web-atoms/web-controls/dist/basic/styles/title-editor-style","@social-mail/social-mail-client/dist/common/controls/email-recipients/EmailRecipientChips","@web-atoms/web-controls/dist/basic/AtomChips","@web-atoms/web-controls/dist/basic/Chip","@web-atoms/web-controls/dist/basic/styles/chip-style","@web-atoms/web-controls/dist/basic/styles/chips-style","@web-atoms/web-controls/dist/basic/styles/item-suggestion-style","@social-mail/social-mail-client/dist/services/email-addresses/EmailAddressService","@social-mail/social-mail-client/dist/common/cache/CacheTTL","@social-mail/social-mail-client/dist/services/socket/sockets","@web-atoms/web-controls/dist/basic/LimitedText","@social-mail/social-mail-client/dist/web/page/mails/ChooseMailboxPage","@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage","@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService","@social-mail/social-mail-client/dist/common/pages/mailboxes/MailboxDetailPage","@social-mail/social-mail-client/dist/common/controls/collection-editor/CollectionEditor","@web-atoms/web-controls/dist/basic/Expander","@web-atoms/web-controls/dist/basic/styles/expander-style","@social-mail/social-mail-client/dist/common/pages/mailboxes/settings/EditSyncTargetPage","@web-atoms/web-controls/dist/basic/Checkbox","@web-atoms/web-controls/dist/basic/styles/checkbox-style","@social-mail/social-mail-client/dist/web/page/files/FolderPage","@social-mail/social-mail-client/dist/common/controls/tree/TreeView","@social-mail/social-mail-client/dist/common/controls/drag-drop/FilesDragDrop","@social-mail/social-mail-client/dist/web/page/files/shares/EditSharesPage","@social-mail/social-mail-client/dist/services/files/FileShareService","@social-mail/social-mail-client/dist/web/page/files/shares/AddSharePage","@web-atoms/web-controls/dist/basic/Switch","@web-atoms/web-controls/dist/basic/styles/switch-style","@social-mail/social-mail-client/dist/common/controls/drop-downs/user/UserDropDown","@web-atoms/web-controls/dist/basic/DropDown","@web-atoms/web-controls/dist/basic/styles/drop-down-style","@web-atoms/web-controls/dist/basic/DateField","@web-atoms/web-controls/dist/basic/Calendar","@web-atoms/web-controls/dist/basic/Select","@web-atoms/web-controls/dist/basic/styles/calendar-style","@web-atoms/web-controls/dist/basic/TimeEditor","@web-atoms/web-controls/dist/basic/styles/time-editor-style","@web-atoms/web-controls/dist/basic/styles/date-field-style","@social-mail/social-mail-client/dist/common/date/DateFormats","@social-mail/social-mail-client/dist/web/page/templates/EditTemplatePage","@social-mail/social-mail-client/dist/services/mime-service/MimeNode","@social-mail/social-mail-client/dist/common/QueryIterator","@social-mail/social-mail-client/dist/services/mime-service/AttachmentFile","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentType","@social-mail/social-mail-client/dist/services/mime-service/parsePairs","@social-mail/social-mail-client/dist/services/mime-service/tokenizer","@social-mail/social-mail-client/dist/services/mime-service/HeaderContentDisposition","@social-mail/social-mail-client/dist/services/mime-service/encoder/word-encoding","@social-mail/social-mail-client/dist/services/mime-service/encoder/RawBuffer","@social-mail/social-mail-client/dist/services/mime-service/encoder/base64-to-blob","@social-mail/social-mail-client/dist/services/mime-service/encoder/quoted-printable","@social-mail/social-mail-client/dist/services/mime-service/MimeMessage","@social-mail/social-mail-client/dist/services/mime-service/stream/LineStream","@social-mail/social-mail-client/dist/services/mime-service/stream/TextWriter","@social-mail/social-mail-client/dist/style/GlobalStyle","@social-mail/social-mail-client/dist/style/OverrideAppStyle","@social-mail/social-mail-client/dist/services/UserService","@social-mail/social-mail-client/dist/common/pages/user/LoginPage","@social-mail/social-mail-client/dist/common/controls/password/PasswordStrength","@social-mail/social-mail-client/dist/common/validators/Validators","@social-mail/social-mail-client/dist/web/drawer/AppDrawer","@social-mail/social-mail-client/dist/common/controls/menu/MenuItem","@social-mail/social-mail-client/dist/common/controls/ModuleInfo","@web-atoms/core/dist/web/WebApp","@web-atoms/core/dist/core/AtomOnce","@web-atoms/core/dist/web/services/WebBusyIndicatorService","@web-atoms/core/dist/web/styles/StyleBuilder","@web-atoms/core/dist/web/services/WindowService","@web-atoms/core/dist/Atom","@web-atoms/core/dist/core/FormattedError","@web-atoms/core/dist/view-model/AtomWindowViewModel","@web-atoms/core/dist/view-model/AtomViewModel","@web-atoms/core/dist/view-model/baseTypes","@web-atoms/core/dist/web/controls/AtomAlertWindow","@web-atoms/core/dist/web/styles/AtomAlertWindowStyle","@web-atoms/core/dist/web/styles/AtomWindowStyle","@web-atoms/core/src/web/images/close-button-hover.svg","@web-atoms/core/dist/web/controls/AtomWindow","@web-atoms/core/dist/web/controls/AtomTemplate","@web-atoms/core/dist/web/controls/AtomNotification","@web-atoms/core/dist/web/styles/AtomNotificationStyle","@web-atoms/core/dist/web/styles/AtomPopupStyle","@web-atoms/core/dist/web/services/NotificationPopup","@web-atoms/core/dist/web/styles/AtomTheme"]);System.register([],(function(_export,_context){"use strict";function InjectProperty(target,key){Object.defineProperty(target,key,{get:function(){const plist=Reflect.getMetadata("design:type",target,key);const result=this.app.resolve(plist);Object.defineProperty(this,key,{get:()=>result});return result},configurable:true})}_export("default",InjectProperty);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/InjectProperty");System.register([],(function(_export,_context){"use strict";var viewModelParseWatchCache,viewModelParseWatchCache2;function trimRegEx(t,r){const m=r.exec(t);if(m&&m.length){return[true,t.substring(m[0].length).trim(),m[0]]}return[false,t,""]}function extractTill(text,search,returnOriginal=false){const index=text.indexOf(search);if(index<=0){return returnOriginal?text:""}return text.substring(0,index)}function parsePath(f,parseThis){let str=f.toString().trim();str=str.split("\n").filter((s=>!/^\/\//.test(s.trim()))).join("\n");const key=(parseThis===undefined?"un:":parseThis?"_this:":"_noThis:")+str;const px1=viewModelParseWatchCache[key];if(px1){return px1}if(str.endsWith("}")){str=str.substr(0,str.length-1)}const functionRegEx=/^\w+\s*\(/;const lambdaRegEx=/^\(?(\w+)?(\s?\,\s?\w+)*\)?\s?\=\>/;let arg="";const original=str;let[success,remaining]=trimRegEx(str,functionRegEx);if(success){str=remaining;remaining=extractTill(remaining,")");str=str.substring(remaining.length);arg=extractTill(remaining,",",true)}else{[success,str,remaining]=trimRegEx(str,lambdaRegEx);if(success){remaining=remaining.trim();remaining=remaining.substring(0,remaining.length-2);remaining=extractTill(remaining,")",true);arg=extractTill(remaining,",",true);if(arg.startsWith("(")){arg=arg.substring(1)}}else{if(parseThis!==undefined&&parseThis===false){return[]}else{parseThis=true}}}str=str.trim();const isThis=parseThis===undefined?(arg?false:true)||parseThis:parseThis;const p=(isThis?"(\\_this|this)":arg||"").trim();if(p.length===0){const empty=[];viewModelParseWatchCache[key]=empty;return empty}const regExp=`(?:(\\b${p})(?:(\\.[a-zA-Z_][a-zA-Z_0-9]*)+)\\s?(?:(\\(|\\=\\=\\=|\\=\\=|\\=)?))`;const re=new RegExp(regExp,"gi");let path=[];const ms=str.replace(re,(m=>{let px=m;if(px.startsWith("this.")){if(parseThis!==true){px=px.substr(5)}}else if(px.startsWith("_this.")){if(parseThis!==true){px=px.substr(6)}else{px=px.substr(1)}}else{px=px.substr(p.length+1)}px=px.split(".").filter((s=>!s.endsWith("("))).join(".");if(!path.find((y=>y===px))){path.push(px)}const filtered=[];for(const iterator of path){if(iterator.endsWith("==")||!(iterator.endsWith("(")||iterator.endsWith("="))){filtered.push((iterator.endsWith("===")?iterator.substr(0,iterator.length-3):iterator.endsWith("==")?iterator.substr(0,iterator.length-2):iterator).trim())}}path=filtered.filter((px11=>{const search=px11+".";for(const iterator of filtered){if(px11!==iterator&&iterator.indexOf(search)!==-1){return false}}return true}));return m}));path=path.sort(((a,b)=>b.localeCompare(a)));const duplicates=path;path=[];for(const iterator of duplicates){if(path.find((px2=>px2===iterator))){continue}path.push(iterator)}const rp=[];for(const rpItem of path){if(rp.find((x=>x.startsWith(rpItem)))){continue}rp.push(rpItem)}const pl=path.filter((p1=>p1)).map((p1=>p1.split(".")));viewModelParseWatchCache[key]=pl;return pl}function parsePathLists(f){const str=f.toString().trim();const key=str;const px1=viewModelParseWatchCache2[key];if(px1){return px1}const pl={pathList:parsePath(str,false),thisPath:parsePath(str,true),combined:[]};if(pl.thisPath.length&&pl.pathList.length){pl.combined=pl.thisPath.map((x=>{x[0]="t";x.splice(0,0,"this");return x})).concat(pl.pathList.map((x=>{x.splice(0,0,"this","x");return x})));pl.thisPath=[];pl.pathList=[]}viewModelParseWatchCache2[key]=pl;return pl}_export({parsePath,parsePathLists});return{setters:[],execute:function(){viewModelParseWatchCache={};viewModelParseWatchCache2={}}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/ExpressionParser");
2
2
  /*! *****************************************************************************
3
3
  Copyright (C) Microsoft. All rights reserved.
4
4
  Licensed under the Apache License, Version 2.0 (the "License"); you may not use
@@ -674,7 +674,7 @@ and limitations under the License.
674
674
  }
675
675
  }
676
676
  }
677
- `.withId("repeater-styles").installGlobal()}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/styles/repeater-style");System.register(["tslib","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/core/WatchProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/web/services/PopupService","./InlinePopup","./MergeNode","./ItemPath","./styles/ui-display-none-style","./styles/popup-style","./styles/suggestion-popup","./styles/repeater-style","@web-atoms/core/dist/web/core/AtomUI"],(function(_export,_context){"use strict";var __decorate,__metadata,__rest,AtomBinder,Bind,BindableProperty,Colors,StringHelper,WatchProperty,XNode,AtomControl,PopupWindow,InlinePopup,MergeNode,ItemPath,repeaterPopupCss,ChildEnumerator,SelectAllControl,AtomRepeater,popupCSS,getParentRepeaterItem,MatchTrue,MatchFalse,ArrowToString,MatchCaseInsensitive,MatchAnyCaseInsensitive,SameObjectValue,getFirstChild,hoverItem,dragOver;function askSuggestion(items,itemRenderer,match,options){class Suggestions extends PopupWindow{create(){var _a;this.title=(_a=options===null||options===void 0?void 0:options.title)!==null&&_a!==void 0?_a:"Select";this.render(XNode.create("div",{class:popupCSS},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),eventItemClick:e=>{this.close(e.detail)},items}))))}}__decorate([BindableProperty,__metadata("design:type",String)],Suggestions.prototype,"search",void 0);options!==null&&options!==void 0?options:options={};if(typeof options.maximize==="undefined"){if(typeof options.width==="undefined"){options.maxWidth="90%";options.minWidth="300px"}if(typeof options.height==="undefined"){options.height="80%"}}return Suggestions.showModal(options)}function askSuggestionPopup(opener,items,itemRenderer,match,selectedItem){const updateSearch="search"in opener;const itemsInOpener="items"in opener;class Suggestions extends InlinePopup{get items(){return itemsInOpener?this.opener.items:items}onPropertyChanged(name){if(updateSearch&&name==="search"){opener.search=this.search}super.onPropertyChanged(name)}create(){this.anchorItem=selectedItem;this.opener=opener;if(this.opener.search){this.search=this.opener.search}if(selectedItem){this.anchorIndex=items.indexOf(selectedItem)}const disableSearch=opener.disableSearch;if(itemsInOpener){this.render(XNode.create("div",{"data-suggestion-popup":"suggestion-popup"},!disableSearch&&XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),eventKeydown:e=>this.onKey(e),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",selectedItem:Bind.oneWay((()=>this.anchorItem)),itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),eventItemClick:e=>{this.anchorItem=e.detail;setTimeout((()=>this.close(e.detail)),100)},items:Bind.oneWay((()=>this.opener.items))}))));return}this.render(XNode.create("div",{"data-suggestion-popup":"suggestion-popup"},!disableSearch&&XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),eventKeydown:e=>this.onKey(e),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",selectedItem:Bind.oneWay((()=>this.anchorItem)),itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),scrollToSelection:true,eventItemClick:e=>{this.close(e.detail)},items}))))}onKey(e){var _a;const suggested=match?(_a=this.items)===null||_a===void 0?void 0:_a.filter(match(this.search)):this.items;switch(e.key){case"Enter":const anchorItem=this.anchorItem;if(!anchorItem){return}this.anchorIndex=0;this.close(anchorItem);this.anchorItem=null;this.search="";break;case"ArrowDown":if(suggested){if(!this.anchorItem){this.anchorIndex=0}else{if(this.anchorIndex<suggested.length-1){this.anchorIndex++}}this.anchorItem=suggested[this.anchorIndex]}break;case"ArrowUp":if(suggested){if(!this.anchorItem){return}if(this.anchorIndex){this.anchorIndex--}this.anchorItem=suggested[this.anchorIndex]}break}}}__decorate([BindableProperty,__metadata("design:type",String)],Suggestions.prototype,"search",void 0);return Suggestions.showControl(opener)}function SelectorCheckBox(_a,...nodes){var{text,icon="far fa-square",iconSelected="fas fa-check-square"}=_a,a=__rest(_a,["text","icon","iconSelected"]);if(text){return XNode.create("label",Object.assign({"data-selector":"check-box"},a),XNode.create("i",{class:icon,"data-click-event":"item-select"}),XNode.create("i",{class:iconSelected,"data-click-event":"item-deselect"}),XNode.create("span",{"data-no-wrap":"true",text}),...nodes)}return XNode.create("label",Object.assign({"data-selector":"check-box"},a),XNode.create("i",{class:icon,"data-click-event":"item-select"}),XNode.create("i",{class:iconSelected,"data-click-event":"item-deselect"}),...nodes)}function SelectAll(_a,...nodes){var{text="Select All",icon="far fa-square",iconSelected="fas fa-check-square"}=_a,a=__rest(_a,["text","icon","iconSelected"]);if(text){return XNode.create(SelectAllControl,Object.assign({for:"label"},a),XNode.create("i",{class:icon,"data-ui-type":"item-select"}),XNode.create("i",{class:iconSelected,"data-ui-type":"item-deselect"}),XNode.create("span",{"data-no-wrap":"true",text}))}return XNode.create(SelectAllControl,Object.assign({for:"label"},a),XNode.create("i",{class:icon,"data-ui-type":"item-select"}),XNode.create("i",{class:iconSelected,"data-ui-type":"item-deselect"}),...nodes)}function disposeChildren(owner,e){if(!e){return}let s=e.firstElementChild;while(s){const c=s;s=s.nextElementSibling;const ac=c.atomControl;if(ac){ac.dispose();continue}disposeChildren(owner,c);owner.unbind(c);owner.unbindEvent(c)}e.innerHTML=""}function disposeChild(owner,e){const ac=e.atomControl;if(ac){ac.dispose();return}disposeChildren(owner,e);owner.unbind(e);owner.unbindEvent(e);e.remove()}function defaultComparer(left,right){if(left&&right){if(left instanceof Date){if(right instanceof Date){return left.getTime()===right.getTime()}return false}}return left===right}function updateDragDrop(e,force=false){if(!e){return}if(force){e.draggable=false}else{force=e.draggable}e=e.firstElementChild;while(e){updateDragDrop(e,force);e=e.nextElementSibling}}_export({askSuggestion,askSuggestionPopup,SelectorCheckBox,SelectAll,disposeChildren,disposeChild,defaultComparer,default:void 0});return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__rest=_tslib.__rest},function(_webAtomsCoreDistCoreAtomBinder){AtomBinder=_webAtomsCoreDistCoreAtomBinder.AtomBinder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreColors){Colors=_webAtomsCoreDistCoreColors.default},function(_webAtomsCoreDistCoreStringHelper){StringHelper=_webAtomsCoreDistCoreStringHelper.StringHelper},function(_webAtomsCoreDistCoreWatchProperty){WatchProperty=_webAtomsCoreDistCoreWatchProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistWebServicesPopupService){PopupWindow=_webAtomsCoreDistWebServicesPopupService.PopupWindow},function(_InlinePopup){InlinePopup=_InlinePopup.default},function(_MergeNode){MergeNode=_MergeNode.default},function(_ItemPath){ItemPath=_ItemPath.default},function(_stylesUiDisplayNoneStyle){},function(_stylesPopupStyle){repeaterPopupCss=_stylesPopupStyle.repeaterPopupCss},function(_stylesSuggestionPopup){},function(_stylesRepeaterStyle){},function(_webAtomsCoreDistWebCoreAtomUI){ChildEnumerator=_webAtomsCoreDistWebCoreAtomUI.ChildEnumerator}],execute:function(){popupCSS=repeaterPopupCss;_export("getParentRepeaterItem",getParentRepeaterItem=target=>{let eventName;let repeater;let index;let root;while(target){const a=target.atomControl;if(a!==undefined&&a instanceof AtomRepeater){repeater=a;break}if(index===undefined){const itemIndex=target.getAttribute("data-item-index");if(typeof itemIndex!=="undefined"){root=target;index=~~itemIndex}}if(eventName===undefined){const itemClickEvent=target.getAttribute("data-click-event");if(itemClickEvent){eventName=itemClickEvent.replace(/-([a-z])/g,(g=>g[1].toUpperCase()))}}target=target.parentElement}if(index===void 0||repeater===void 0){return undefined}const item=repeater.items[~~index];return[eventName,repeater,item,index,root]});_export("MatchTrue",MatchTrue=(...a)=>true);_export("MatchFalse",MatchFalse=(...a)=>false);_export("ArrowToString",ArrowToString=item=>{var _a,_b;return(_b=(_a=item.label)===null||_a===void 0?void 0:_a.toString())!==null&&_b!==void 0?_b:item.toString()});_export("MatchCaseInsensitive",MatchCaseInsensitive=(textField=ArrowToString)=>s=>{if(!s){return MatchTrue}const r=StringHelper.createContainsRegExp(s);return item=>r.test(textField(item))});_export("MatchAnyCaseInsensitive",MatchAnyCaseInsensitive=(textField=ArrowToString)=>s=>{if(!s){return MatchTrue}const r=StringHelper.createContainsAnyWordRegExp(s);return item=>r.test(textField(item))});_export("SameObjectValue",SameObjectValue=item=>item);SelectAllControl=class SelectAllControl extends AtomControl{preCreate(){this.element.dataset.selectAll="select-all";this.items=[];this.selectedItems=[];this.render(XNode.create(SelectAllControl,{"data-is-selected":Bind.oneWay((()=>this.items.length>0&&this.items.length===this.selectedItems.length),false)}));this.bindEvent(this.element,"click",(()=>{const si=this.selectedItems;const items=this.items;if(!si){return}if(!items){return}if(items.length===0){return}if(items.length===si.length){si.clear()}else{si.length=0;si.push(...items);si.refresh()}}))}};__decorate([BindableProperty,__metadata("design:type",Array)],SelectAllControl.prototype,"items",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],SelectAllControl.prototype,"selectedItems",void 0);getFirstChild=container=>{let child=container.firstElementChild;while(child&&!child.hasAttribute("data-item-index")){child=child.nextElementSibling}return child};_export("default",AtomRepeater=class AtomRepeater extends AtomControl{constructor(){super(...arguments);this.bubbleEvents=true}static from(element){while(element){const{atomControl}=element;if(atomControl instanceof AtomRepeater){return atomControl}element=element.parentElement}}set refreshEventScope(v){this.registerDisposable(v.listen((ce=>{this.refreshItem(ce.detail)})))}get allSelected(){const selectedItems=this.selectedItems;const items=this.items;if(!(items&&selectedItems)){return false}return items.length&&items.length===selectedItems.length}get value(){var _a;if(this.initialValue!==undefined){return this.initialValue}const sp=this.selectedItem;if(sp===undefined){return sp}const vp=(_a=this.valuePath)!==null&&_a!==void 0?_a:SameObjectValue;return vp(sp)}set value(v){var _a,_b;this.initialValue=v;if(!this.items||!this.items.length){AtomBinder.refreshValue(this,"value");return}const vp=(_a=this.valuePath)!==null&&_a!==void 0?_a:SameObjectValue;const c=(_b=this.comparer)!==null&&_b!==void 0?_b:defaultComparer;const selectedItem=this.items.find((item=>c(vp(item),v)));this.selectedItem=selectedItem;delete this.initialValue}get selectedItem(){var _a;return(_a=this.selectedItems)===null||_a===void 0?void 0:_a[0]}set selectedItem(value){var _a;const si=(_a=this.selectedItems)!==null&&_a!==void 0?_a:this.selectedItems=[];const first=si[0];if(value===first){return}si.set(0,value)}onPropertyChanged(name){var _a,_b;switch(name){case"items":(_a=this.itemsDisposable)===null||_a===void 0?void 0:_a.dispose();const items=this.items;const d=items===null||items===void 0?void 0:items.watch(((target,type,index,item)=>{switch(type){case"add":case"remove":case"set":this.updatePartial(type,index,item);break;default:this.updateItems();break}this.dispatchCustomEvent("items-updated",{type,items,index});AtomBinder.refreshValue(this,"selectedItem");AtomBinder.refreshValue(this,"value")}));if(d){this.itemsDisposable=this.registerDisposable(d)}const iv=this.initialValue;if(iv){this.value=iv}this.updateItems();this.dispatchCustomEvent("items-updated",{type:"reset",items,index:0});if(this.scrollToSelection){this.bringSelectionIntoView()}break;case"selectedItems":(_b=this.selectedItemsDisposable)===null||_b===void 0?void 0:_b.dispose();const selectedItems=this.selectedItems;const sd=selectedItems===null||selectedItems===void 0?void 0:selectedItems.watch((()=>{this.updateClasses();if(this.scrollToSelection){this.bringSelectionIntoView()}if(this.selectedItem){delete this.initialValue}AtomBinder.refreshValue(this,"selectedItem");AtomBinder.refreshValue(this,"value");AtomBinder.refreshValue(this,"allSelected");this.dispatchCustomEvent("selection-updated",selectedItems)}));if(sd){this.selectedItemsDisposable=this.registerDisposable(sd)}this.updateClasses();this.dispatchCustomEvent("selection-updated",selectedItems);AtomBinder.refreshValue(this,"allSelected");break;case"itemRenderer":case"watch":this.updateItems();break;case"visibilityFilter":this.updateVisibility();break;case"header":case"headerRenderer":this.updateHeaderFooter("header",this.headerPresenter,this.header,this.headerRenderer,true);break;case"footer":case"footerRenderer":this.updateHeaderFooter("footer",this.footerPresenter,this.footer,this.footerRenderer);break}}bringSelectionIntoView(force){if(force){const selection=this.selectedItem;if(selection){const element=this.elementForItem(selection);element===null||element===void 0?void 0:element.scrollIntoView()}return}if(this.bringIntoViewId){clearTimeout(this.bringIntoViewId)}this.bringIntoViewId=setTimeout((()=>{clearTimeout(this.bringIntoViewId);this.bringIntoViewId=undefined;this.bringSelectionIntoView(true)}),100)}forEach(action,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let start=getFirstChild(container);while(start){const index=start.dataset.itemIndex;const item=items[~~index];action(item,start);start=start.nextElementSibling}}*any(fx,itemSelector,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let node=getFirstChild(container);while(node){const index=node.dataset.itemIndex;const item=items[~~index];let element=node;if(itemSelector){element=element.querySelector(itemSelector)}const ie={item,element};if(fx){if(fx(item)){yield ie}continue}yield ie;node=node.nextElementSibling}}*all(container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=getFirstChild(container);while(element){const index=element.dataset.itemIndex;const item=items[~~index];yield{item,element};element=element.nextElementSibling}}elementAt(index,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const indexText=index.toString();const element=ChildEnumerator.find(container,(e=>e.getAttribute("data-item-index")===indexText));return element}elementForItem(itemToFind,container){const index=this.items.indexOf(itemToFind);return this.elementAt(index,container)}refreshItem(item,fx,index=-1){if(index===-1){index=this.items.indexOf(item)}if(fx===null||fx===void 0?void 0:fx.then){const finalize=v=>{this.refreshItem(item,v,index)};fx.then(finalize,finalize);return}if(fx instanceof MergeNode){this.mergeItem(index,fx);return}this.updatePartial("set",index,item)}mergeItem(index,m){var _a,_b,_c;const item=this.items[index];if(!item){return}if((_b=(_a=m.classes)===null||_a===void 0?void 0:_a[0])===null||_b===void 0?void 0:_b.remove){this.items.removeAt(index);return}const container=(_c=this.itemsPresenter)!==null&&_c!==void 0?_c:this.element;const node=this.itemRenderer(item,index,this);const sourceElement=document.createElement("div");sourceElement.style.display="none";container.appendChild(sourceElement);this.render(node,sourceElement);const targetElement=this.elementAt(index);for(const iterator of m.classes){if(typeof iterator==="string"){const source=sourceElement.querySelectorAll(iterator);const target=targetElement.querySelectorAll(iterator);for(let i=0;i<source.length&&i<target.length;i++){const element=source[i];const te=target[i];for(const name of te.getAttributeNames()){te.removeAttribute(name)}te.innerHTML=element.innerHTML;for(const name of element.getAttributeNames()){te.setAttribute(name,element.getAttribute(name))}}continue}if(iterator.parent){const targetParent=/self|\*/.test(iterator.parent)?targetElement:targetElement.querySelector(iterator.parent);if(!targetParent){continue}for(const i of Array.from(targetElement.querySelectorAll(iterator.replace))){i.remove()}for(const i of Array.from(sourceElement.querySelectorAll(iterator.replace))){targetParent.appendChild(i)}continue}let targetPrevious=targetElement.querySelector(iterator.after);for(const i of Array.from(targetElement.querySelectorAll(iterator.replace))){i.remove()}for(const i of Array.from(sourceElement.querySelectorAll(iterator.replace))){targetPrevious.insertAdjacentElement("afterend",i);targetPrevious=i}}this.dispose(sourceElement);sourceElement.remove()}updatePartial(key,index,item,container){var _a,_b,_c,_d,_e,_f,_g;const items=this.items;if(!items){return}const ir=this.itemRenderer;if(!ir){return}container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;let start=getFirstChild(container);let ei;while(start){ei=~~start.getAttribute("data-item-index");if(ei===index){break}start=start.nextElementSibling}if(key!=="add"&&!start){return}const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:it=>it;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);const isRemove=key==="remove";if(isRemove||key==="set"){const current=start;start=start.nextElementSibling;const ac=current.atomControl;if(ac){ac.dispose()}else{this.unbind(current);this.unbindEvent(current)}current.remove()}const end=((_d=this.footerElement)===null||_d===void 0?void 0:_d.parentElement)===container?this.footerElement:null;if(!isRemove){const en=ir(item,index,this);const ea=(_e=en.attributes)!==null&&_e!==void 0?_e:en.attributes={};const v=vp(item);const e=document.createElement((_g=(_f=ea.for)!==null&&_f!==void 0?_f:en.name)!==null&&_g!==void 0?_g:"div");e.setAttribute("data-item-index",`${index++}`);if(si.indexOf(v)!==-1){e.setAttribute("data-selected-item","true")}else{e.removeAttribute("data-selected-item")}if(this.enableDragDrop){updateDragDrop(e)}if(start){container.insertBefore(e,start)}else if(end){container.insertBefore(e,end)}else{container.appendChild(e)}this.render(en,e,this)}while(start){const ci=items[index];const cv=vp(ci);start.setAttribute("data-item-index",`${index++}`);if(si.indexOf(cv)!==-1){start.setAttribute("data-selected-item","true")}else{start.removeAttribute("data-selected-item")}start=start.nextElementSibling}}updateItems(container,force){var _a,_b,_c,_d,_e,_f;if(this.deferUpdates&&!force){if(this.deferredUpdateId){return}this.deferredUpdateId=setTimeout((()=>{this.deferredUpdateId=0;this.updateItems(container,true)}),1);return}container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;if(!container){return}disposeChildren(this,container);this.onPropertyChanged("header");const ir=this.itemRenderer;if(!ir){this.onPropertyChanged("footer");return}const items=this.items;if(!items){this.onPropertyChanged("footer");return}const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:it=>it;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);let i=0;for(const iterator of items){const index=i++;const e=ir(iterator,index,this);const ea=(_d=e.attributes)!==null&&_d!==void 0?_d:e.attributes={};const v=vp(iterator);const element=document.createElement((_f=(_e=ea.for)!==null&&_e!==void 0?_e:e.name)!==null&&_f!==void 0?_f:"div");element.setAttribute("data-item-index",`${index}`);if(si.indexOf(v)!==-1){element.setAttribute("data-selected-item","true")}else{element.removeAttribute("data-selected-item")}this.render(e,element,this);if(this.enableDragDrop){updateDragDrop(element)}container.appendChild(element)}this.onPropertyChanged("footer")}preCreate(){this.mergeOnRefresh=false;this.selectOnClick=false;this.element.setAttribute("data-click-event","item-click")}dispatchCustomEvent(type,detail){if(!this.element){return}const eventName=this.element.getAttribute("data-"+type+"-event");type=StringHelper.fromHyphenToCamel(eventName!==null&&eventName!==void 0?eventName:type);this.element.dispatchEvent(new CustomEvent(type,{detail,bubbles:eventName!==null,cancelable:true}))}updateClasses(){var _a,_b,_c;const container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=getFirstChild(container);const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:i=>i;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);while(element){const index=~~element.dataset.itemIndex;const item=items[index];const v=vp(item);if(si.indexOf(v)!==-1){element.setAttribute("data-selected-item","true")}else{element.removeAttribute("data-selected-item")}element=element.nextElementSibling}}updateVisibility(){var _a,_b;const container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=container.firstElementChild;const vf=(_b=this.visibilityFilter)!==null&&_b!==void 0?_b:MatchTrue;while(element){const index=~~element.dataset.itemIndex;const item=items[index];if(vf(item)){element.removeAttribute("data-ui-display")}else{element.setAttribute("data-ui-display","none")}element=element.nextElementSibling}}updateHeaderFooter(name,presenter,item,itemRenderer,insert){var _a,_b,_c,_d;presenter!==null&&presenter!==void 0?presenter:presenter=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.itemsPresenter=this.element;if(!presenter){this[name+"Element"]=null;return}let current;if(insert){current=presenter.firstElementChild;while(current&&current.dataset[name]!==name){current=current.nextElementSibling}}else{current=presenter.lastElementChild;while(current&&current.dataset[name]!==name){current=current.previousElementSibling}}if(current){disposeChild(this,current);this[name+"Element"]=null}if(!(item&&itemRenderer)){return}const node=itemRenderer(item);const element=document.createElement((_d=(_c=(_b=node.attributes)===null||_b===void 0?void 0:_b.for)!==null&&_c!==void 0?_c:node.name)!==null&&_d!==void 0?_d:"div");element.dataset[name]=name;this.render(node,element,this);if(insert){presenter.insertBefore(element,presenter.firstElementChild)}else{presenter.appendChild(element)}this[name+"Element"]=element}dispatchHeaderFooterEvent(eventName,type,recreate,originalTarget){const detail=this[type];const ce=new CustomEvent(eventName!==null&&eventName!==void 0?eventName:`${type}Click`,{detail,bubbles:this.bubbleEvents,cancelable:true});originalTarget.dispatchEvent(ce);if(ce.defaultPrevented||!ce.executed){return}if(recreate){this.onPropertyChanged(type)}}dispatchItemEvent(eventName,item,recreate,originalTarget,nestedItem){var _a;const ce=new CustomEvent(eventName!==null&&eventName!==void 0?eventName:"itemClick",{detail:nestedItem!==null&&nestedItem!==void 0?nestedItem:item,bubbles:this.bubbleEvents,cancelable:true});originalTarget.dispatchEvent(ce);if(!ce.defaultPrevented){if(this.selectOnClick||eventName==="itemSelect"||eventName==="itemDeselect"){const si=(_a=this.selectedItems)!==null&&_a!==void 0?_a:this.selectedItems=[];if(si){const index=si.indexOf(item);if(index===-1){if(this.allowMultipleSelection){si.add(item)}else{si.set(0,item)}}else{si.removeAt(index)}}}}if(ce.defaultPrevented||!ce.executed){return}const promise=ce.promise;if(recreate){this.refreshItem(item,promise);return}if(promise){promise.then((r=>r instanceof MergeNode&&this.refreshItem(item,r)))}}dispatchClickEvent(e,data){let{recreate,header,footer,itemIndex,itemPath,clickEvent=header?"headerClick":footer?"footerClick":"itemClick"}=data;clickEvent=clickEvent.replace(/-([a-z])/g,(g=>g[1].toUpperCase()));if(itemIndex!==void 0){let index=~~itemIndex;const item=this.items[index];if(item){if(itemPath!==null&&itemPath!==void 0?itemPath:false){const nestedItem=ItemPath.get(item,itemPath.trim());this.dispatchItemEvent(clickEvent,item,recreate,e.target,nestedItem);return}this.dispatchItemEvent(clickEvent,item,recreate,e.target)}return}if(header){this.dispatchHeaderFooterEvent(clickEvent,header,recreate,e.target)}if(footer){this.dispatchHeaderFooterEvent(clickEvent,footer,recreate,e.target)}}});__decorate([BindableProperty,__metadata("design:type",Boolean)],AtomRepeater.prototype,"allowMultipleSelection",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"selectOnClick",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomRepeater.prototype,"selectedItems",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"itemsPresenter",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomRepeater.prototype,"items",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"watch",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"visibilityFilter",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"enableFunc",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"itemRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"valuePath",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"comparer",void 0);__decorate([BindableProperty,__metadata("design:type",Boolean)],AtomRepeater.prototype,"deferUpdates",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"header",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"headerRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"footer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"footerRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"enableDragDrop",void 0);__decorate([WatchProperty,__metadata("design:type",Object),__metadata("design:paramtypes",[])],AtomRepeater.prototype,"allSelected",null);hoverItem={repeater:null,target:null,item:null,placeholder:null};document.body.addEventListener("dragstart",(e=>{const{target}=e;if(target.draggable){const ri=getParentRepeaterItem(target);if(!ri){return}const[type,repeater,item,index]=ri;if(!repeater||!repeater.enableDragDrop){return}const placeholder=document.createElement("div");placeholder.style.width=target.offsetWidth+"px";placeholder.style.height=target.offsetHeight+"px";placeholder.style.backgroundColor=Colors.lightGray.toString();placeholder.style.border="solid 1px gray";placeholder.style.borderRadius="10px";hoverItem={repeater,target,item,placeholder};e.dataTransfer.dropEffect="move";setTimeout((()=>{target.style.display="none";target.parentElement.insertBefore(placeholder,target)}),0)}}));document.body.addEventListener("dragend",(e=>{var _a,_b;if(!(hoverItem===null||hoverItem===void 0?void 0:hoverItem.placeholder)){return}const{item,placeholder,repeater}=hoverItem;let start=placeholder;let index=-1;while(start){const itemIndex=(_b=(_a=start.previousElementSibling)===null||_a===void 0?void 0:_a.dataset)===null||_b===void 0?void 0:_b.itemIndex;if(itemIndex!==void 0){index=~~itemIndex}if(start.parentElement.atomControl){break}start=start.parentElement}const targetRepeater=start.parentElement.atomControl;placeholder.remove();hoverItem.placeholder=null;repeater.items.remove(item);index++;const ce=new CustomEvent("itemDropped",{detail:{item,index}});if(ce.defaultPrevented){return}const{detail}=ce;targetRepeater.items.insert(detail.index,detail.item)}));dragOver=e=>{if(!e.dataTransfer){return}if(hoverItem){const{placeholder}=hoverItem;if(e.target===placeholder){return}}const ri=getParentRepeaterItem(e.target);if(!ri){return}const[type,repeater,item,index,target]=ri;if(!repeater){return}if(hoverItem){const{placeholder}=hoverItem;e.preventDefault();const mp={x:e.clientX,y:e.clientY};const isBefore=(co,n)=>n.x<=co.x+co.width*.3||n.y<=co.y+co.height*.3;const isAfter=(co,n)=>n.x>=co.x+co.width*.7||n.y>=co.y+co.height*.7;const targetBounds=target.getBoundingClientRect();if(isAfter(targetBounds,mp)){const next=target.nextElementSibling;if(next===placeholder){return}placeholder.remove();target.insertAdjacentElement("afterend",placeholder);return}if(isBefore(targetBounds,mp)){const previous=target.previousElementSibling;if(previous===placeholder){return}placeholder.remove();target.insertAdjacentElement("beforebegin",placeholder)}return}};document.body.addEventListener("dragover",dragOver);document.body.addEventListener("dragenter",dragOver)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/AtomRepeater");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/types","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl"],(function(_export,_context){"use strict";var __awaiter,Bind,CancelToken,XNode,AtomControl,InfiniteRepeater,_a,loadMoreSet,pagedItemsSetter,scrollToBottom;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreTypes){CancelToken=_webAtomsCoreDistCoreTypes.CancelToken},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl}],execute:function(){loadMoreSet=Symbol("loadMoreSet");pagedItemsSetter=AtomControl.registerProperty("paged-items","paged-items",((control,element,value)=>{var _b,_c;if(value&&value.items){let cancelToken=control[loadMoreSet];(_b=control.footerRenderer)!==null&&_b!==void 0?_b:control.footerRenderer=()=>XNode.create("div",{"data-click-event":"load-more-items"},XNode.create("span",{text:"Load more ... "}));(_c=control.headerRenderer)!==null&&_c!==void 0?_c:control.headerRenderer=()=>XNode.create("div",{class:"scroll-header","style-height":"1px","style-width":"100%"});if(!cancelToken){control[loadMoreSet]=cancelToken=new CancelToken;control.bindEvent(control.element,"loadMoreItems",(e=>{const ce=new CustomEvent("moreItems",{detail:{pagedItems:control.pagedItems,cancelToken},bubbles:false});control.element.dispatchEvent(ce)}))}else{cancelToken.cancel();control[loadMoreSet]=cancelToken=new CancelToken}const items=control.items;if(items&&Array.isArray(items)){items.clear();items.addAll(value.items)}else{control.items=value.items}setTimeout((()=>{var _b;const ce=(_b=control.element)===null||_b===void 0?void 0:_b.firstElementChild;ce===null||ce===void 0?void 0:ce.scrollIntoView()}),100);control.footer=value.total&&value.items&&value.items.length<value.total;control.pagedItems=value}}));scrollToBottom=({target,detail:{type,index}})=>{if(!(type==="add"&&index===0)&&type!=="reset"){return}setTimeout((()=>{const e=target.firstElementChild;console.log(e);e===null||e===void 0?void 0:e.scrollIntoView(true)}),1)};_export("default",InfiniteRepeater=class InfiniteRepeater{});_a=InfiniteRepeater;InfiniteRepeater.pagedItems=start=>{const setter=start(0);const setters=pagedItemsSetter(Bind.oneWayAsync(setter));setters["event-more-items"]=Bind.event(((s,e)=>__awaiter(void 0,void 0,void 0,(function*(){var _b,_c;const st=(_c=(_b=s.items)===null||_b===void 0?void 0:_b.length)!==null&&_c!==void 0?_c:0;if(!st){return}const cancelToken=s[loadMoreSet];const loader=start(st);const results=yield loader(s,e.target,cancelToken);s.items.addAll(results.items);s.footer=results.items.length>0}))));return setters}}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater");System.register(["./Register","./ServiceCollection"],(function(_export,_context){"use strict";var Register,Scope;function DITransient(mockOrInject){return target=>{Register({scope:Scope.Transient,mockOrInject})(target)}}_export("default",DITransient);return{setters:[function(_Register){Register=_Register.Register},function(_ServiceCollection){Scope=_ServiceCollection.Scope}],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/di/DITransient");System.register([],(function(_export,_context){"use strict";var cloneSource;return{setters:[],execute:function(){cloneSource=Symbol("cloneSource");_export("default",cloneSource)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/cloneSource");System.register(["./cloneSource"],(function(_export,_context){"use strict";var cloneSource,Cloner,PropertyCloner,getKey;_export({Cloner:void 0,PropertyCloner:void 0});return{setters:[function(_cloneSource){cloneSource=_cloneSource.default}],execute:function(){getKey=(target,value)=>{for(const key in target){if(Object.prototype.hasOwnProperty.call(target,key)){const element=target[key];if(element===value){return key}}}};_export("Cloner",Cloner=class Cloner{static copyProperties(src,dest={}){dest[cloneSource]=src;for(const key in src){if(Object.prototype.hasOwnProperty.call(src,key)){const element=src[key];switch(typeof element){case"bigint":case"boolean":case"number":case"string":dest[key]=element;break;case"object":if(element===null){dest[key]=null}if(element instanceof Date){dest[key]=element}break}}}return dest}get copy(){const copy=Cloner.copyProperties(this.item);if(this.path){for(const iterator of this.path){this.clone(this.item,copy,iterator)}}return copy}constructor(item,path){this.item=item;this.path=path;this.$type=item.$type}include(property){const last=[property];return new PropertyCloner(this.item,this.path?[...this.path,last]:[last],last)}clone(src,dest,paths){var _a,_b,_c;if(!paths.length){return dest}const[first,...others]=paths;let p=first(src);if(!p){return dest}const original=p;const name=getKey(src,p);if(Array.isArray(p)){const existing=(_a=dest[name])!==null&&_a!==void 0?_a:dest[name]=[];for(let index=0;index<p.length;index++){const element=p[index];const existingItem=(_b=existing[index])!==null&&_b!==void 0?_b:existing[index]={};Cloner.copyProperties(element,existingItem);this.clone(element,existingItem,others)}return existing}p=Cloner.copyProperties(p,(_c=dest[name])!==null&&_c!==void 0?_c:undefined);dest[name]=p;this.clone(original,p,others);return dest}});_export("PropertyCloner",PropertyCloner=class PropertyCloner extends Cloner{constructor(item,path,propertyPath){super(item,path);this.propertyPath=propertyPath}thenInclude(property){this.propertyPath.push(property);return new PropertyCloner(this.item,this.path,this.propertyPath)}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/Cloner");System.register([],(function(_export,_context){"use strict";var EntityContext;_export("EntityContext",void 0);return{setters:[],execute:function(){_export("EntityContext",EntityContext=class EntityContext{constructor(models){this.models=models;this.cache=[];for(const iterator of models){this.cache[iterator.name]=iterator}}for(name){return this.cache[name]}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/IEntityModel");System.register([],(function(_export,_context){"use strict";var JsonError;_export("default",void 0);return{setters:[],execute:function(){_export("default",JsonError=class JsonError extends Error{constructor(message,json){super(message);this.json=json}get errors(){var _a;return(_a=this.json.paramErrors)!==null&&_a!==void 0?_a:[]}get details(){var _a;if(this.json.paramErrors){return this.errors.map((x=>`${x.name}: ${x.reason}`)).join("\n")}return(_a=this.json)===null||_a===void 0?void 0:_a.details}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/services/http/JsonError");System.register(["tslib","@web-atoms/core/dist/services/http/JsonError"],(function(_export,_context){"use strict";var __awaiter,JsonError,TextBody,HttpSession;function merge(url,extra){return url+(typeof extra==="string"?extra:combine(extra))}function combine([url,params]){let separator=url.indexOf("?")===-1?"?":"&";if(!url.endsWith("&")){url+=separator;separator=""}for(const key in params){if(params.hasOwnProperty(key)){const element=params[key];url+=separator;separator="&";url+=`${key}=${encodeURIComponent(element)}`}}return url}_export({merge,combine,TextBody:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistServicesHttpJsonError){JsonError=_webAtomsCoreDistServicesHttpJsonError.default}],execute:function(){_export("TextBody",TextBody=class TextBody{constructor(text){this.text=text}toString(){return this.text}});_export("default",HttpSession=class HttpSession{constructor(){this.resultConverter=e=>e}fetchJson(options){var _a,_b,_c,_d,_e,_f;return __awaiter(this,void 0,void 0,(function*(){if(options.cancelToken){const ab=new AbortController;options.signal=ab.signal;options.cancelToken.registerForCancel((()=>{ab.abort()}))}let response;if(this.interceptFetch){response=yield this.interceptFetch(options.url,options)}else{response=yield fetch(options.url,options)}const contentType=(_a=response.headers.get("Content-Type"))===null||_a===void 0?void 0:_a.toString();if(response.status>=400){if(contentType===null||contentType===void 0?void 0:contentType.includes("/json")){const error=yield response.json();throw new JsonError(typeof response==="string"?response:(_f=(_e=(_d=(_c=(_b=error.title)!==null&&_b!==void 0?_b:error.detail)!==null&&_c!==void 0?_c:error.message)!==null&&_d!==void 0?_d:error.exceptionMessage)!==null&&_e!==void 0?_e:error)!==null&&_f!==void 0?_f:"Json Server Error",error)}throw new Error(yield response.text())}if(contentType&&!contentType.includes("/json")){throw new Error(`Unable to convert to json\r\n${contentType}}`)}return this.resultConverter(yield response.json())}))}interceptFetch(input,init){throw new Error("not supported")}getJson(options){options.method="GET";return this.fetchJson(options)}postFormModel(options){var _a;options.method="POST";if(options.body){options.body=new TextBody(`formModel=${encodeURIComponent(JSON.stringify(options.body))}`)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/x-www-form-urlencoded";return this.fetchJson(options)}postJson(options){var _a;options.method="POST";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}deleteJson(options){var _a;options.method="DELETE";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}putJson(options){var _a;options.method="PUT";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}});delete HttpSession.prototype.interceptFetch}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/HttpSession");System.register(["../models/cloneSource"],(function(_export,_context){"use strict";var cloneSource,isObject;function mergeProperties(src,target,path="0",visited=new Map,merged=new Map){if(visited.has(path)){return}if(merged.has(target)){return}merged.set(target,true);visited.set(path,true);if(Array.isArray(src)){for(let index=0;index<src.length;index++){const srcElement=src[index];const targetElement=target[index];if(isObject(targetElement)){mergeProperties(srcElement,targetElement,`${path}.${index}`,visited,merged);continue}target[index]=targetElement}return}const cloneTarget=target[cloneSource];for(const key in src){if(Object.prototype.hasOwnProperty.call(src,key)){const srcElement=src[key];if(typeof srcElement!=="object"){if(srcElement!==void 0){target[key]=srcElement;if(cloneTarget){cloneTarget[key]=srcElement}}continue}if(srcElement instanceof Date){target[key]=srcElement;if(cloneTarget){cloneTarget[key]=srcElement}continue}const targetElement=target[key];if(isObject(targetElement)){if(cloneTarget){const cloneTargetElement=cloneTarget[key];if(cloneTargetElement){mergeProperties(srcElement,cloneTargetElement,path+".$"+key,visited,merged)}}mergeProperties(srcElement,targetElement,path+"."+key,visited,merged);continue}target[key]=targetElement;if(cloneTarget&&targetElement!==void 0){cloneTarget[key]=targetElement}}}}_export("default",mergeProperties);return{setters:[function(_modelsCloneSource){cloneSource=_modelsCloneSource.default}],execute:function(){isObject=o=>typeof o==="object"&&o!==null&&!(o instanceof Date)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/mergeProperties");System.register([],(function(_export,_context){"use strict";var StringHelper;_export("default",void 0);return{setters:[],execute:function(){_export("default",StringHelper=class StringHelper{static findParameter(f){let text=f.toString();let i=text.indexOf("=>");if(i!==-1){text=text.substring(0,i)}i=text.indexOf("(");if(i===-1){return text}text=text.substring(i+1);i=text.indexOf(")");return text.substring(0,i)}static contains(left,right){if(!left){return!right}return left.toLowerCase().includes(right.toLowerCase())}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/StringHelper");System.register(["tslib","./StringHelper"],(function(_export,_context){"use strict";var __awaiter,StringHelper,QueryComposer,Query,replacer,convertToLinq;function append(original,...item){if(original){return[...original,...item]}return[...item]}_export({append,QueryComposer:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_StringHelper){StringHelper=_StringHelper.default}],execute:function(){replacer=/(===)|(!==)|(\(\s*\{)|(\.[a-zA-Z0-9]+)|([a-zA-Z0-9]+\s*\:\s*\{?)/g;_export("convertToLinq",convertToLinq=x=>{x=x.replace(/(\s+)|((CastAs|EF)\_[0-9]\.default\.)/g,((s,first,second)=>{if(s===first){return" "}if(s.startsWith("EF")){return"EF."}if(s.startsWith("CastAs")){return"CastAs."}return s}));replacer.lastIndex=0;x=x.replace(replacer,(s=>{switch(s){case"===":return"==";case"!==":return"!=";case"({":return"( new {";case".some":return".Any";case".map":return".Select";case".filter":return".Where";case".find":return".FirstOrDefault";case".includes":return".Contains"}if(s.endsWith("{")){const index=s.indexOf(":");const v=s.substring(0,index)+" = new {";return v}const trimmed=s.trim();if(trimmed.endsWith(":")){return trimmed.substring(0,trimmed.length-1)+" = "}if(s.startsWith(".")&&s.length>2){return s[0]+s[1].toUpperCase()+s.substring(2)}return s}));return x});_export("QueryComposer",QueryComposer=class QueryComposer{constructor(separator=" || "){this.separator=separator;this.query="p => x => ";this.parameters={};this.index=0}add(p,q){if(this.index){this.query+=this.separator}const suffix=`_${this.index++}`;let text=q.toString();const pfn=StringHelper.findParameter(text).trim();text=text.substring(text.indexOf("=>")+2);const xfn=StringHelper.findParameter(text).trim();const target=this.parameters;for(const key in p){if(Object.prototype.hasOwnProperty.call(p,key)){const element=p[key];const name=`${key}${suffix}`;target[name]=element;text=text.split(`${pfn}.${key}`).join(`p.${name}`);text=text.split(`${xfn}.`).join(`x.`)}}text=text.substring(text.indexOf("=>")+2);this.query+=text}asQuery(){return[this.parameters,this.query]}});_export("default",Query=class Query{constructor(context,methods=[]){this.context=context;this.methods=methods;if(!methods){throw new Error("Methods cannot be empty")}}where(tOrP,q){return this.process("where",tOrP,q)}joinDateRange(start,end,step){return this.append(["joinDateRange","@0,@1,@2",start,end,step])}selectWith(model,tOrP,q){const nq=this.append(["selectWith",model.name]);return nq.process("select",tOrP,q)}select(tOrP,q){return this.process("select",tOrP,q)}whereLinq(query,...args){let filters="";const params=[];for(let index=0;index<args.length;index++){const element=args[index];const raw=query.raw[index];if(raw){filters+=raw}const pi=`@${index}`;filters+=pi;params.push(element)}const last=query.raw[args.length];if(last){filters+=last}return this.append(["where",filters,...params])}selectLinq(query,...args){let filters="";const params=[];for(let index=0;index<args.length;index++){const element=args[index];const raw=query.raw[index];if(raw){filters+=raw}const pi=`@${index}`;filters+=pi;params.push(element)}const last=query.raw[args.length];if(last){filters+=last}return this.append(["select",filters,...params])}join(model,left,right){return this.append(["join",model.name,this.convertToLinq(left.toString()),this.convertToLinq(right.toString())])}leftJoin(model,left,right){return this.append(["leftJoin",model.name,this.convertToLinq(left.toString()),this.convertToLinq(right.toString())])}include(tOrP,...q){if(typeof tOrP==="string"){return this.append(["include",tOrP],...q.map((s=>["include",s])))}const select=this.convertToLinq(tOrP.toString());return this.append(["include",select])}firstOrDefault(p={}){return __awaiter(this,void 0,void 0,(function*(){const lp=p;lp.size=1;lp.start=0;lp.count=false;const list=yield this.toPagedList(lp);return list.items[0]}))}orderBy(tOrP,q){return this.process("orderBy",tOrP,q)}orderByDescending(tOrP,q){return this.process("orderByDescending",tOrP,q)}thenBy(tOrP,q){return this.process("thenBy",tOrP,q)}thenByDescending(tOrP,q){return this.process("thenByDescending",tOrP,q)}trace(){this.context.traceQuery=true;return this}toArray({cancelToken,doNotResolve,hideActivityIndicator,cacheSeconds,cacheVersion}={}){return __awaiter(this,void 0,void 0,(function*(){const r=yield this.toPagedList({size:-1,count:false,cacheSeconds,cancelToken,doNotResolve,hideActivityIndicator,cacheVersion});return r.items}))}toPagedList({start=0,size=100,cancelToken,cacheVersion="1",hideActivityIndicator,splitInclude=false,cacheSeconds=0,count=true}={}){let url;const{traceQuery,name,service,queryFunction,args}=this.context;const trace=traceQuery;const methods=JSON.stringify(this.methods);const fm=new URLSearchParams;fm.append("methods",methods);if(start){fm.append("start",start.toString())}if(size){fm.append("size",size.toString())}fm.append("count",count.toString());if(trace){fm.append("trace",trace?"true":"false")}if(queryFunction){fm.append("function",queryFunction);fm.append("args",JSON.stringify(args!==null&&args!==void 0?args:"[]"))}const encodedMethods=fm.toString();if(encodedMethods.length>1824){if(cacheSeconds>0){throw new Error("Generated query too big for caching")}url=`${service.url}methods/${name}`;return service.postJson({url,cancelToken,body:{methods:this.methods,start,size,split:splitInclude,count,trace,function:queryFunction||void 0,args:queryFunction?args:void 0}})}if(cacheSeconds>0){fm.append("cache",cacheSeconds.toString());fm.append("cv",cacheVersion)}else{}url=`${service.url}query/${name}?${fm.toString()}`;return service.getJson({url,cancelToken,hideActivityIndicator})}thenInclude(a){const select=this.convertToLinq(a.toString());return this.append(["thenInclude",select])}append(...methods){return new Query(this.context,[...this.methods,...methods])}process(name,tOrP,q){if(!q){const select=this.convertToLinq(tOrP.toString());return this.append([name,select])}const pl=[];let i=0;const p=tOrP;let text=q(p).toString();const pfn=StringHelper.findParameter(q.toString()).trim();for(const key in p){if(Object.prototype.hasOwnProperty.call(p,key)){const element=p[key];const pn=`@${i++}`;text=text.split(`${pfn}.${key}`).join(pn);pl.push(element)}}text=this.convertToLinq(text);return this.append([name,text,...pl])}convertToLinq(text){if(this.context.queryProcessor==="DotNet"){return convertToLinq(text)}return text.replace(/\s+/g," ")}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/Query");System.register(["@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var DateTime,dateFormatISORegEx;function resolve(target){const cache=[];function map(t){if(typeof t!=="object"){return t}if(Array.isArray(t)){return t.map(map)}const{$id,$ref}=t;if($ref){t=cache[$ref];return t}if($id){t.$deleted=false;cache[$id]=t}for(const key in t){if(Object.prototype.hasOwnProperty.call(t,key)){let element=t[key];switch(typeof element){case"object":if(!element){continue}element=map(element);t[key]=element;continue;case"string":if(dateFormatISORegEx.test(element)){t[key]=new DateTime(element)}}}}return t}target=map(target);return target}_export("default",resolve);return{setters:[function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){_export("dateFormatISORegEx",dateFormatISORegEx=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/resolve");System.register(["tslib","../models/Cloner","../models/IEntityModel","./HttpSession","./mergeProperties","./Query","./resolve"],(function(_export,_context){"use strict";var __awaiter,Cloner,EntityContext,HttpSession,mergeProperties,Query,resolve,Model,BaseEntityService,ArrayPrototype;_export({Model:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_modelsCloner){Cloner=_modelsCloner.Cloner},function(_modelsIEntityModel){EntityContext=_modelsIEntityModel.EntityContext},function(_HttpSession){HttpSession=_HttpSession.default},function(_mergeProperties){mergeProperties=_mergeProperties.default},function(_Query){Query=_Query.default},function(_resolve){resolve=_resolve.default}],execute:function(){ArrayPrototype=Array.prototype;ArrayPrototype.where=ArrayPrototype.filter;ArrayPrototype.any=ArrayPrototype.some;ArrayPrototype.select=ArrayPrototype.map;ArrayPrototype.selectMany=function(x){const r=[];for(const iterator of this){const items=x(iterator);if(Array.isArray(items)){r.push(...items)}}return r};ArrayPrototype.firstOrDefault=function(f){if(f){return ArrayPrototype.find.apply(this,arguments)}return this[0]};ArrayPrototype.sum=function(f){var _a;let n=0;for(const iterator of this){n+=(_a=f(iterator))!==null&&_a!==void 0?_a:0}return n};ArrayPrototype.average=function(f){var _a;if(this.length===0){return 0}let n=0;for(const iterator of this){n+=(_a=f(iterator))!==null&&_a!==void 0?_a:0}return n/this.length};ArrayPrototype.orderBy=function(f){return this.sort(((a,b)=>{const ak=f(a);const bk=f(b);if(typeof ak==="string"){return ak.toLowerCase().localeCompare(bk.toLowerCase())}return ak-bk}))};ArrayPrototype.thenBy=ArrayPrototype.orderBy;ArrayPrototype.orderByDescending=function(f){return this.sort(((a,b)=>{const ak=f(a);const bk=f(b);if(typeof ak==="string"){return bk.toLowerCase().localeCompare(ak.toLowerCase())}return bk-ak}))};ArrayPrototype.thenByDescending=ArrayPrototype.orderByDescending;ArrayPrototype.count=function(f){if(!f){return this.length}let length=0;for(const iterator of this){if(f(iterator)){length++}}return length};_export("Model",Model=class Model{constructor(name,keys=[],defaults=null){this.name=name;this.keys=keys;if(defaults){this.defaults=[];for(const key in defaults){if(Object.prototype.hasOwnProperty.call(defaults,key)){const element=defaults[key];this.defaults.push([key,element])}}}}create(properties={}){properties.$type=this.name;if(this.defaults){for(const[key,value]of this.defaults){if(properties[key]===void 0){properties[key]=value}}}return properties}patch(original,updates){for(const iterator of this.keys){const originalKey=original[iterator];const updatedKey=updates[iterator];if(updatedKey&&updatedKey!==originalKey){throw new Error(`Cannot update ${iterator} as it is the primary key`)}updates[iterator]=originalKey}return Object.assign({$type:this.name},updates)}});_export("default",BaseEntityService=class BaseEntityService extends HttpSession{constructor(){super(...arguments);this.url="/api/entity/";this.resultConverter=resolve}cloner(item){return new Cloner(item)}model(){return __awaiter(this,void 0,void 0,(function*(){if(this.entityModel){return this.entityModel}const c=yield this.getJson({url:`${this.url}model`});this.entityModel=new EntityContext(c);return this.entityModel}))}dateRange(start,end,step){return new Query({service:this,name:"NeuroSpeech.EntityAccessControl.DateRange",traceQuery:false},[["dateRange","@0,@1,@2",start,end,step]])}query(m,queryFunction,...args){return new Query({service:this,name:m.name,queryProcessor:this.queryProcessor,queryFunction,args})}delete(body){const url=this.url;return this.deleteJson({url,body})}insert(body){const url=this.url;return this.putJson({url,body})}save(body){return __awaiter(this,void 0,void 0,(function*(){if(Array.isArray(body)&&body.length===0){return body}const url=this.url;const result=yield this.postJson({url,body});mergeProperties(result,body);return body}))}update(e,update){return __awaiter(this,void 0,void 0,(function*(){yield this.bulkUpdate([e],update);for(const key in update){if(Object.prototype.hasOwnProperty.call(update,key)){const element=update[key];e[key]=element}}return e}))}bulkUpdate(entities,update,throwWhenNotFound=false){return __awaiter(this,void 0,void 0,(function*(){const model=yield this.model();const keys=[];for(const iterator of entities){const entityType=model.for(iterator.$type);const key={$type:iterator.$type};for(const{name}of entityType.keys){key[name]=iterator[name]}keys.push(key)}const body={keys,update,throwWhenNotFound};const url=`${this.url}bulk`;yield this.putJson({url,body})}))}bulkDelete(entities,throwWhenNotFound=false){return __awaiter(this,void 0,void 0,(function*(){const model=yield this.model();const keys=[];for(const iterator of entities){const entityType=model.for(iterator.$type);const key={$type:iterator.$type};for(const{name}of entityType.keys){key[name]=iterator[name]}keys.push(key)}const url=`${this.url}bulk`;const body={keys,throwWhenNotFound};yield this.deleteJson({url,body})}))}fetchJson(options){const _super=Object.create(null,{fetchJson:{get:()=>super.fetchJson}});return __awaiter(this,void 0,void 0,(function*(){if(!this.createBusyIndicator||(options===null||options===void 0?void 0:options.hideActivityIndicator)){return yield _super.fetchJson.call(this,options)}const disposable=this.createBusyIndicator(options);try{return yield _super.fetchJson.call(this,options)}finally{disposable===null||disposable===void 0?void 0:disposable.dispose()}}))}createBusyIndicator(options){return{dispose(){}}}});delete BaseEntityService.prototype.createBusyIndicator}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/BaseEntityService");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled,BusyProgress,css,container,stack;_export("default",void 0);return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){css=styled.css`
677
+ `.withId("repeater-styles").installGlobal()}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/styles/repeater-style");System.register(["tslib","@web-atoms/core/dist/core/AtomBinder","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/BindableProperty","@web-atoms/core/dist/core/Colors","@web-atoms/core/dist/core/StringHelper","@web-atoms/core/dist/core/WatchProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl","@web-atoms/core/dist/web/services/PopupService","./InlinePopup","./MergeNode","./ItemPath","./styles/ui-display-none-style","./styles/popup-style","./styles/suggestion-popup","./styles/repeater-style","@web-atoms/core/dist/web/core/AtomUI"],(function(_export,_context){"use strict";var __decorate,__metadata,__rest,AtomBinder,Bind,BindableProperty,Colors,StringHelper,WatchProperty,XNode,AtomControl,PopupWindow,InlinePopup,MergeNode,ItemPath,repeaterPopupCss,ChildEnumerator,SelectAllControl,AtomRepeater,popupCSS,getParentRepeaterItem,MatchTrue,MatchFalse,ArrowToString,MatchCaseInsensitive,MatchAnyCaseInsensitive,SameObjectValue,getFirstChild,hoverItem,dragOver;function askSuggestion(items,itemRenderer,match,options){class Suggestions extends PopupWindow{create(){var _a;this.title=(_a=options===null||options===void 0?void 0:options.title)!==null&&_a!==void 0?_a:"Select";this.render(XNode.create("div",{class:popupCSS},XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),eventItemClick:e=>{this.close(e.detail)},items}))))}}__decorate([BindableProperty,__metadata("design:type",String)],Suggestions.prototype,"search",void 0);options!==null&&options!==void 0?options:options={};if(typeof options.maximize==="undefined"){if(typeof options.width==="undefined"){options.maxWidth="90%";options.minWidth="300px"}if(typeof options.height==="undefined"){options.height="80%"}}return Suggestions.showModal(options)}function askSuggestionPopup(opener,items,itemRenderer,match,selectedItem){const updateSearch="search"in opener;const itemsInOpener="items"in opener;class Suggestions extends InlinePopup{get items(){return itemsInOpener?this.opener.items:items}onPropertyChanged(name){if(updateSearch&&name==="search"){opener.search=this.search}super.onPropertyChanged(name)}create(){this.anchorItem=selectedItem;this.opener=opener;if(this.opener.search){this.search=this.opener.search}if(selectedItem){this.anchorIndex=items.indexOf(selectedItem)}const disableSearch=opener.disableSearch;if(itemsInOpener){this.render(XNode.create("div",{"data-suggestion-popup":"suggestion-popup"},!disableSearch&&XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),eventKeydown:e=>this.onKey(e),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",selectedItem:Bind.oneWay((()=>this.anchorItem)),itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),eventItemClick:e=>{this.anchorItem=e.detail;setTimeout((()=>this.close(e.detail)),100)},items:Bind.oneWay((()=>this.opener.items))}))));return}this.render(XNode.create("div",{"data-suggestion-popup":"suggestion-popup"},!disableSearch&&XNode.create("input",{type:"search",value:Bind.twoWaysImmediate((()=>this.search)),eventKeydown:e=>this.onKey(e),autofocus:true}),XNode.create("div",{class:"items"},XNode.create(AtomRepeater,{class:"presenter",selectedItem:Bind.oneWay((()=>this.anchorItem)),itemRenderer,visibilityFilter:Bind.oneWay((()=>match(this.search))),scrollToSelection:true,eventItemClick:e=>{this.close(e.detail)},items}))))}onKey(e){var _a;const suggested=match?(_a=this.items)===null||_a===void 0?void 0:_a.filter(match(this.search)):this.items;switch(e.key){case"Enter":const anchorItem=this.anchorItem;if(!anchorItem){return}this.anchorIndex=0;this.close(anchorItem);this.anchorItem=null;this.search="";break;case"ArrowDown":if(suggested){if(!this.anchorItem){this.anchorIndex=0}else{if(this.anchorIndex<suggested.length-1){this.anchorIndex++}}this.anchorItem=suggested[this.anchorIndex]}break;case"ArrowUp":if(suggested){if(!this.anchorItem){return}if(this.anchorIndex){this.anchorIndex--}this.anchorItem=suggested[this.anchorIndex]}break}}}__decorate([BindableProperty,__metadata("design:type",String)],Suggestions.prototype,"search",void 0);return Suggestions.showControl(opener)}function SelectorCheckBox(_a,...nodes){var{text,icon="far fa-square",iconSelected="fas fa-check-square"}=_a,a=__rest(_a,["text","icon","iconSelected"]);if(text){return XNode.create("label",Object.assign({"data-selector":"check-box"},a),XNode.create("i",{class:icon,"data-click-event":"item-select"}),XNode.create("i",{class:iconSelected,"data-click-event":"item-deselect"}),XNode.create("span",{"data-no-wrap":"true",text}),...nodes)}return XNode.create("label",Object.assign({"data-selector":"check-box"},a),XNode.create("i",{class:icon,"data-click-event":"item-select"}),XNode.create("i",{class:iconSelected,"data-click-event":"item-deselect"}),...nodes)}function SelectAll(_a,...nodes){var{text="Select All",icon="far fa-square",iconSelected="fas fa-check-square"}=_a,a=__rest(_a,["text","icon","iconSelected"]);if(text){return XNode.create(SelectAllControl,Object.assign({for:"label"},a),XNode.create("i",{class:icon,"data-ui-type":"item-select"}),XNode.create("i",{class:iconSelected,"data-ui-type":"item-deselect"}),XNode.create("span",{"data-no-wrap":"true",text}))}return XNode.create(SelectAllControl,Object.assign({for:"label"},a),XNode.create("i",{class:icon,"data-ui-type":"item-select"}),XNode.create("i",{class:iconSelected,"data-ui-type":"item-deselect"}),...nodes)}function disposeChildren(owner,e){if(!e){return}let s=e.firstElementChild;while(s){const c=s;s=s.nextElementSibling;const ac=c.atomControl;if(ac){ac.dispose();continue}disposeChildren(owner,c);owner.unbind(c);owner.unbindEvent(c)}e.innerHTML=""}function disposeChild(owner,e){const ac=e.atomControl;if(ac){ac.dispose();return}disposeChildren(owner,e);owner.unbind(e);owner.unbindEvent(e);e.remove()}function defaultComparer(left,right){if(left&&right){if(left instanceof Date){if(right instanceof Date){return left.getTime()===right.getTime()}return false}}return left===right}function updateDragDrop(e,force=false){if(!e){return}if(force){e.draggable=false}else{force=e.draggable}e=e.firstElementChild;while(e){updateDragDrop(e,force);e=e.nextElementSibling}}_export({askSuggestion,askSuggestionPopup,SelectorCheckBox,SelectAll,disposeChildren,disposeChild,defaultComparer,default:void 0});return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__rest=_tslib.__rest},function(_webAtomsCoreDistCoreAtomBinder){AtomBinder=_webAtomsCoreDistCoreAtomBinder.AtomBinder},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreBindableProperty){BindableProperty=_webAtomsCoreDistCoreBindableProperty.BindableProperty},function(_webAtomsCoreDistCoreColors){Colors=_webAtomsCoreDistCoreColors.default},function(_webAtomsCoreDistCoreStringHelper){StringHelper=_webAtomsCoreDistCoreStringHelper.StringHelper},function(_webAtomsCoreDistCoreWatchProperty){WatchProperty=_webAtomsCoreDistCoreWatchProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_webAtomsCoreDistWebServicesPopupService){PopupWindow=_webAtomsCoreDistWebServicesPopupService.PopupWindow},function(_InlinePopup){InlinePopup=_InlinePopup.default},function(_MergeNode){MergeNode=_MergeNode.default},function(_ItemPath){ItemPath=_ItemPath.default},function(_stylesUiDisplayNoneStyle){},function(_stylesPopupStyle){repeaterPopupCss=_stylesPopupStyle.repeaterPopupCss},function(_stylesSuggestionPopup){},function(_stylesRepeaterStyle){},function(_webAtomsCoreDistWebCoreAtomUI){ChildEnumerator=_webAtomsCoreDistWebCoreAtomUI.ChildEnumerator}],execute:function(){popupCSS=repeaterPopupCss;_export("getParentRepeaterItem",getParentRepeaterItem=target=>{let eventName;let repeater;let index;let root;while(target){const a=target.atomControl;if(a!==undefined&&a instanceof AtomRepeater){repeater=a;break}if(index===undefined){const itemIndex=target.getAttribute("data-item-index");if(typeof itemIndex!=="undefined"){root=target;index=~~itemIndex}}if(eventName===undefined){const itemClickEvent=target.getAttribute("data-click-event");if(itemClickEvent){eventName=itemClickEvent.replace(/-([a-z])/g,(g=>g[1].toUpperCase()))}}target=target.parentElement}if(index===void 0||repeater===void 0){return undefined}const item=repeater.items[~~index];return[eventName,repeater,item,index,root]});_export("MatchTrue",MatchTrue=(...a)=>true);_export("MatchFalse",MatchFalse=(...a)=>false);_export("ArrowToString",ArrowToString=item=>{var _a,_b;return(_b=(_a=item.label)===null||_a===void 0?void 0:_a.toString())!==null&&_b!==void 0?_b:item.toString()});_export("MatchCaseInsensitive",MatchCaseInsensitive=(textField=ArrowToString)=>s=>{if(!s){return MatchTrue}const r=StringHelper.createContainsRegExp(s);return item=>r.test(textField(item))});_export("MatchAnyCaseInsensitive",MatchAnyCaseInsensitive=(textField=ArrowToString)=>s=>{if(!s){return MatchTrue}const r=StringHelper.createContainsAnyWordRegExp(s);return item=>r.test(textField(item))});_export("SameObjectValue",SameObjectValue=item=>item);SelectAllControl=class SelectAllControl extends AtomControl{preCreate(){this.element.dataset.selectAll="select-all";this.items=[];this.selectedItems=[];this.render(XNode.create(SelectAllControl,{"data-is-selected":Bind.oneWay((()=>this.items.length>0&&this.items.length===this.selectedItems.length),false)}));this.bindEvent(this.element,"click",(()=>{const si=this.selectedItems;const items=this.items;if(!si){return}if(!items){return}if(items.length===0){return}if(items.length===si.length){si.clear()}else{si.length=0;si.push(...items);si.refresh()}}))}};__decorate([BindableProperty,__metadata("design:type",Array)],SelectAllControl.prototype,"items",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],SelectAllControl.prototype,"selectedItems",void 0);getFirstChild=container=>{let child=container.firstElementChild;while(child&&!child.hasAttribute("data-item-index")){child=child.nextElementSibling}return child};_export("default",AtomRepeater=class AtomRepeater extends AtomControl{constructor(){super(...arguments);this.bubbleEvents=true}static from(element){while(element){const{atomControl}=element;if(atomControl instanceof AtomRepeater){return atomControl}element=element.parentElement}}set refreshEventScope(v){this.registerDisposable(v.listen((ce=>{this.refreshItem(ce.detail)})))}get allSelected(){const selectedItems=this.selectedItems;const items=this.items;if(!(items&&selectedItems)){return false}return items.length&&items.length===selectedItems.length}get value(){var _a;if(this.initialValue!==undefined){return this.initialValue}const sp=this.selectedItem;if(sp===undefined){return sp}const vp=(_a=this.valuePath)!==null&&_a!==void 0?_a:SameObjectValue;return vp(sp)}set value(v){var _a,_b;this.initialValue=v;if(!this.items||!this.items.length){AtomBinder.refreshValue(this,"value");return}const vp=(_a=this.valuePath)!==null&&_a!==void 0?_a:SameObjectValue;const c=(_b=this.comparer)!==null&&_b!==void 0?_b:defaultComparer;const selectedItem=this.items.find((item=>c(vp(item),v)));this.selectedItem=selectedItem;delete this.initialValue}get selectedItem(){var _a;return(_a=this.selectedItems)===null||_a===void 0?void 0:_a[0]}set selectedItem(value){var _a;const si=(_a=this.selectedItems)!==null&&_a!==void 0?_a:this.selectedItems=[];const first=si[0];if(value===first){return}si.set(0,value)}onPropertyChanged(name){var _a,_b;switch(name){case"items":(_a=this.itemsDisposable)===null||_a===void 0?void 0:_a.dispose();const items=this.items;const d=items===null||items===void 0?void 0:items.watch(((target,type,index,item)=>{switch(type){case"add":case"remove":case"set":this.updatePartial(type,index,item);break;default:this.updateItems();break}this.dispatchCustomEvent("items-updated",{type,items,index});AtomBinder.refreshValue(this,"selectedItem");AtomBinder.refreshValue(this,"value")}));if(d){this.itemsDisposable=this.registerDisposable(d)}const iv=this.initialValue;if(iv){this.value=iv}this.updateItems();this.dispatchCustomEvent("items-updated",{type:"reset",items,index:0});if(this.scrollToSelection){this.bringSelectionIntoView()}break;case"selectedItems":(_b=this.selectedItemsDisposable)===null||_b===void 0?void 0:_b.dispose();const selectedItems=this.selectedItems;const sd=selectedItems===null||selectedItems===void 0?void 0:selectedItems.watch((()=>{this.updateClasses();if(this.scrollToSelection){this.bringSelectionIntoView()}if(this.selectedItem){delete this.initialValue}AtomBinder.refreshValue(this,"selectedItem");AtomBinder.refreshValue(this,"value");AtomBinder.refreshValue(this,"allSelected");this.dispatchCustomEvent("selection-updated",selectedItems)}));if(sd){this.selectedItemsDisposable=this.registerDisposable(sd)}this.updateClasses();this.dispatchCustomEvent("selection-updated",selectedItems);AtomBinder.refreshValue(this,"allSelected");break;case"itemRenderer":case"watch":this.updateItems();break;case"visibilityFilter":this.updateVisibility();break;case"header":case"headerRenderer":this.updateHeaderFooter("header",this.headerPresenter,this.header,this.headerRenderer,true);break;case"footer":case"footerRenderer":this.updateHeaderFooter("footer",this.footerPresenter,this.footer,this.footerRenderer);break}}bringSelectionIntoView(force){if(force){const selection=this.selectedItem;if(selection){const element=this.elementForItem(selection);element===null||element===void 0?void 0:element.scrollIntoView()}return}if(this.bringIntoViewId){clearTimeout(this.bringIntoViewId)}this.bringIntoViewId=setTimeout((()=>{clearTimeout(this.bringIntoViewId);this.bringIntoViewId=undefined;this.bringSelectionIntoView(true)}),100)}forEach(action,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let start=getFirstChild(container);while(start){const index=start.dataset.itemIndex;const item=items[~~index];action(item,start);start=start.nextElementSibling}}*any(fx,itemSelector,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let node=getFirstChild(container);while(node){const index=node.dataset.itemIndex;const item=items[~~index];let element=node;if(itemSelector){element=element.querySelector(itemSelector)}const ie={item,element};if(fx){if(fx(item)){yield ie}continue}yield ie;node=node.nextElementSibling}}*all(container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=getFirstChild(container);while(element){const index=element.dataset.itemIndex;const item=items[~~index];yield{item,element};element=element.nextElementSibling}}elementAt(index,container){var _a;container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const indexText=index.toString();const element=ChildEnumerator.find(container,(e=>e.getAttribute("data-item-index")===indexText));return element}elementForItem(itemToFind,container){const index=this.items.indexOf(itemToFind);return this.elementAt(index,container)}refreshItem(item,fx,index=-1){if(index===-1){index=this.items.indexOf(item)}if(fx===null||fx===void 0?void 0:fx.then){const finalize=v=>{this.refreshItem(item,v,index)};fx.then(finalize,finalize);return}if(fx instanceof MergeNode){this.mergeItem(index,fx);return}this.updatePartial("set",index,item)}mergeItem(index,m){var _a,_b,_c;const item=this.items[index];if(!item){return}if((_b=(_a=m.classes)===null||_a===void 0?void 0:_a[0])===null||_b===void 0?void 0:_b.remove){this.items.removeAt(index);return}const container=(_c=this.itemsPresenter)!==null&&_c!==void 0?_c:this.element;const node=this.itemRenderer(item,index,this);const sourceElement=document.createElement("div");sourceElement.style.display="none";container.appendChild(sourceElement);this.render(node,sourceElement);const targetElement=this.elementAt(index);for(const iterator of m.classes){if(typeof iterator==="string"){const source=sourceElement.querySelectorAll(iterator);const target=targetElement.querySelectorAll(iterator);for(let i=0;i<source.length&&i<target.length;i++){const element=source[i];const te=target[i];for(const name of te.getAttributeNames()){te.removeAttribute(name)}te.innerHTML=element.innerHTML;for(const name of element.getAttributeNames()){te.setAttribute(name,element.getAttribute(name))}}continue}if(iterator.parent){const targetParent=/self|\*/.test(iterator.parent)?targetElement:targetElement.querySelector(iterator.parent);if(!targetParent){continue}for(const i of Array.from(targetElement.querySelectorAll(iterator.replace))){i.remove()}for(const i of Array.from(sourceElement.querySelectorAll(iterator.replace))){targetParent.appendChild(i)}continue}let targetPrevious=targetElement.querySelector(iterator.after);for(const i of Array.from(targetElement.querySelectorAll(iterator.replace))){i.remove()}for(const i of Array.from(sourceElement.querySelectorAll(iterator.replace))){targetPrevious.insertAdjacentElement("afterend",i);targetPrevious=i}}this.dispose(sourceElement);sourceElement.remove()}updatePartial(key,index,item,container){var _a,_b,_c,_d,_e,_f,_g;const items=this.items;if(!items){return}const ir=this.itemRenderer;if(!ir){return}container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;let start=getFirstChild(container);let ei;while(start){ei=~~start.getAttribute("data-item-index");if(ei===index){break}start=start.nextElementSibling}if(key!=="add"&&!start){return}const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:it=>it;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);const isRemove=key==="remove";if(isRemove||key==="set"){const current=start;start=start.nextElementSibling;const ac=current.atomControl;if(ac){ac.dispose()}else{this.unbind(current);this.unbindEvent(current)}current.remove()}const end=((_d=this.footerElement)===null||_d===void 0?void 0:_d.parentElement)===container?this.footerElement:null;if(!isRemove){const en=ir(item,index,this);const ea=(_e=en.attributes)!==null&&_e!==void 0?_e:en.attributes={};const v=vp(item);const e=document.createElement((_g=(_f=ea.for)!==null&&_f!==void 0?_f:en.name)!==null&&_g!==void 0?_g:"div");e.setAttribute("data-item-index",`${index++}`);if(si.indexOf(v)!==-1){e.setAttribute("data-selected-item","true")}else{e.removeAttribute("data-selected-item")}if(this.enableDragDrop){updateDragDrop(e)}if(start){container.insertBefore(e,start)}else if(end){container.insertBefore(e,end)}else{container.appendChild(e)}this.render(en,e,this)}while(start){const ci=items[index];const cv=vp(ci);start.setAttribute("data-item-index",`${index++}`);if(si.indexOf(cv)!==-1){start.setAttribute("data-selected-item","true")}else{start.removeAttribute("data-selected-item")}start=start.nextElementSibling}}updateItems(container,force){var _a,_b,_c,_d,_e,_f;if(this.deferUpdates&&!force){if(this.deferredUpdateId){return}this.deferredUpdateId=setTimeout((()=>{this.deferredUpdateId=0;this.updateItems(container,true)}),1);return}container!==null&&container!==void 0?container:container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;if(!container){return}disposeChildren(this,container);this.onPropertyChanged("header");const ir=this.itemRenderer;if(!ir){this.onPropertyChanged("footer");return}const items=this.items;if(!items){this.onPropertyChanged("footer");return}const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:it=>it;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);let i=0;for(const iterator of items){const index=i++;const e=ir(iterator,index,this);const ea=(_d=e.attributes)!==null&&_d!==void 0?_d:e.attributes={};const v=vp(iterator);const element=document.createElement((_f=(_e=ea.for)!==null&&_e!==void 0?_e:e.name)!==null&&_f!==void 0?_f:"div");element.setAttribute("data-item-index",`${index}`);if(si.indexOf(v)!==-1){element.setAttribute("data-selected-item","true")}else{element.removeAttribute("data-selected-item")}this.render(e,element,this);if(this.enableDragDrop){updateDragDrop(element)}container.appendChild(element)}this.onPropertyChanged("footer")}preCreate(){this.mergeOnRefresh=false;this.selectOnClick=false;this.element.setAttribute("data-click-event","item-click")}dispatchCustomEvent(type,detail){if(!this.element){return}const eventName=this.element.getAttribute("data-"+type+"-event");type=StringHelper.fromHyphenToCamel(eventName!==null&&eventName!==void 0?eventName:type);this.element.dispatchEvent(new CustomEvent(type,{detail,bubbles:eventName!==null,cancelable:true}))}updateClasses(){var _a,_b,_c;const container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=getFirstChild(container);const vp=(_b=this.valuePath)!==null&&_b!==void 0?_b:i=>i;const si=((_c=this.selectedItems)!==null&&_c!==void 0?_c:[]).map(vp);while(element){const index=~~element.dataset.itemIndex;const item=items[index];const v=vp(item);if(si.indexOf(v)!==-1){element.setAttribute("data-selected-item","true")}else{element.removeAttribute("data-selected-item")}element=element.nextElementSibling}}updateVisibility(){var _a,_b;const container=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.element;const items=this.items;let element=container.firstElementChild;const vf=(_b=this.visibilityFilter)!==null&&_b!==void 0?_b:MatchTrue;while(element){const index=~~element.dataset.itemIndex;const item=items[index];if(vf(item)){element.removeAttribute("data-ui-display")}else{element.setAttribute("data-ui-display","none")}element=element.nextElementSibling}}updateHeaderFooter(name,presenter,item,itemRenderer,insert){var _a,_b,_c,_d;presenter!==null&&presenter!==void 0?presenter:presenter=(_a=this.itemsPresenter)!==null&&_a!==void 0?_a:this.itemsPresenter=this.element;if(!presenter){this[name+"Element"]=null;return}let current;if(insert){current=presenter.firstElementChild;while(current&&current.dataset[name]!==name){current=current.nextElementSibling}}else{current=presenter.lastElementChild;while(current&&current.dataset[name]!==name){current=current.previousElementSibling}}if(current){disposeChild(this,current);this[name+"Element"]=null}if(!(item&&itemRenderer)){return}const node=itemRenderer(item);const element=document.createElement((_d=(_c=(_b=node.attributes)===null||_b===void 0?void 0:_b.for)!==null&&_c!==void 0?_c:node.name)!==null&&_d!==void 0?_d:"div");element.dataset[name]=name;this.render(node,element,this);if(insert){presenter.insertBefore(element,presenter.firstElementChild)}else{presenter.appendChild(element)}this[name+"Element"]=element}dispatchHeaderFooterEvent(eventName,type,recreate,originalTarget){const detail=this[type];const ce=new CustomEvent(eventName!==null&&eventName!==void 0?eventName:`${type}Click`,{detail,bubbles:this.bubbleEvents,cancelable:true});originalTarget.dispatchEvent(ce);if(ce.defaultPrevented||!ce.executed){return}if(recreate){this.onPropertyChanged(type)}}dispatchItemEvent(eventName,item,recreate,originalTarget,nestedItem){var _a;const ce=new CustomEvent(eventName!==null&&eventName!==void 0?eventName:"itemClick",{detail:nestedItem!==null&&nestedItem!==void 0?nestedItem:item,bubbles:this.bubbleEvents,cancelable:true});originalTarget.dispatchEvent(ce);if(!ce.defaultPrevented){if(this.selectOnClick||eventName==="itemSelect"||eventName==="itemDeselect"){const si=(_a=this.selectedItems)!==null&&_a!==void 0?_a:this.selectedItems=[];if(si){const index=si.indexOf(item);if(index===-1){if(this.allowMultipleSelection){si.add(item)}else{si.set(0,item)}}else{si.removeAt(index)}}}}if(ce.defaultPrevented||!ce.executed){return}const promise=ce.promise;if(recreate){this.refreshItem(item,promise);return}if(promise){promise.then((r=>r instanceof MergeNode&&this.refreshItem(item,r)))}}dispatchClickEvent(e,data){let{recreate,header,footer,itemIndex,itemPath,clickEvent=header?"headerClick":footer?"footerClick":"itemClick"}=data;clickEvent=clickEvent.replace(/-([a-z])/g,(g=>g[1].toUpperCase()));if(itemIndex!==void 0){let index=~~itemIndex;const item=this.items[index];if(item){if(itemPath!==null&&itemPath!==void 0?itemPath:false){const nestedItem=ItemPath.get(item,itemPath.trim());this.dispatchItemEvent(clickEvent,item,recreate,e.target,nestedItem);return}this.dispatchItemEvent(clickEvent,item,recreate,e.target)}return}if(header){this.dispatchHeaderFooterEvent(clickEvent,header,recreate,e.target)}if(footer){this.dispatchHeaderFooterEvent(clickEvent,footer,recreate,e.target)}}});__decorate([BindableProperty,__metadata("design:type",Boolean)],AtomRepeater.prototype,"allowMultipleSelection",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"selectOnClick",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomRepeater.prototype,"selectedItems",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"itemsPresenter",void 0);__decorate([BindableProperty,__metadata("design:type",Array)],AtomRepeater.prototype,"items",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"watch",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"visibilityFilter",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"enableFunc",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"itemRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"valuePath",void 0);__decorate([BindableProperty,__metadata("design:type",Function)],AtomRepeater.prototype,"comparer",void 0);__decorate([BindableProperty,__metadata("design:type",Boolean)],AtomRepeater.prototype,"deferUpdates",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"header",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"headerRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"footer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"footerRenderer",void 0);__decorate([BindableProperty,__metadata("design:type",Object)],AtomRepeater.prototype,"enableDragDrop",void 0);__decorate([WatchProperty,__metadata("design:type",Object),__metadata("design:paramtypes",[])],AtomRepeater.prototype,"allSelected",null);hoverItem={repeater:null,target:null,item:null,placeholder:null};document.body.addEventListener("dragstart",(e=>{const{target}=e;if(target.draggable){const ri=getParentRepeaterItem(target);if(!ri){return}const[type,repeater,item,index]=ri;if(!repeater||!repeater.enableDragDrop){return}const placeholder=document.createElement("div");placeholder.style.width=target.offsetWidth+"px";placeholder.style.height=target.offsetHeight+"px";placeholder.style.backgroundColor=Colors.lightGray.toString();placeholder.style.border="solid 1px gray";placeholder.style.borderRadius="10px";hoverItem={repeater,target,item,placeholder};e.dataTransfer.dropEffect="move";setTimeout((()=>{target.style.display="none";target.parentElement.insertBefore(placeholder,target)}),0)}}));document.body.addEventListener("dragend",(e=>{var _a,_b;if(!(hoverItem===null||hoverItem===void 0?void 0:hoverItem.placeholder)){return}const{item,placeholder,repeater}=hoverItem;let start=placeholder;let index=-1;while(start){const itemIndex=(_b=(_a=start.previousElementSibling)===null||_a===void 0?void 0:_a.dataset)===null||_b===void 0?void 0:_b.itemIndex;if(itemIndex!==void 0){index=~~itemIndex}if(start.parentElement.atomControl){break}start=start.parentElement}const targetRepeater=start.parentElement.atomControl;placeholder.remove();hoverItem.placeholder=null;repeater.items.remove(item);index++;const ce=new CustomEvent("itemDropped",{detail:{item,index}});if(ce.defaultPrevented){return}const{detail}=ce;targetRepeater.items.insert(detail.index,detail.item)}));dragOver=e=>{if(!e.dataTransfer){return}if(hoverItem){const{placeholder}=hoverItem;if(e.target===placeholder){return}}const ri=getParentRepeaterItem(e.target);if(!ri){return}const[type,repeater,item,index,target]=ri;if(!repeater){return}if(hoverItem){const{placeholder}=hoverItem;e.preventDefault();const mp={x:e.clientX,y:e.clientY};const isBefore=(co,n)=>n.x<=co.x+co.width*.3||n.y<=co.y+co.height*.3;const isAfter=(co,n)=>n.x>=co.x+co.width*.7||n.y>=co.y+co.height*.7;const targetBounds=target.getBoundingClientRect();if(isAfter(targetBounds,mp)){const next=target.nextElementSibling;if(next===placeholder){return}placeholder.remove();target.insertAdjacentElement("afterend",placeholder);return}if(isBefore(targetBounds,mp)){const previous=target.previousElementSibling;if(previous===placeholder){return}placeholder.remove();target.insertAdjacentElement("beforebegin",placeholder)}return}};document.body.addEventListener("dragover",dragOver);document.body.addEventListener("dragenter",dragOver)}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/basic/AtomRepeater");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/types","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl"],(function(_export,_context){"use strict";var __awaiter,Bind,CancelToken,XNode,AtomControl,InfiniteRepeater,_a,loadMoreSet,pagedItemsSetter,scrollToBottom;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreTypes){CancelToken=_webAtomsCoreDistCoreTypes.CancelToken},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl}],execute:function(){loadMoreSet=Symbol("loadMoreSet");pagedItemsSetter=AtomControl.registerProperty("paged-items","paged-items",((control,element,value)=>{var _b,_c;if(value&&value.items){let cancelToken=control[loadMoreSet];(_b=control.footerRenderer)!==null&&_b!==void 0?_b:control.footerRenderer=()=>XNode.create("div",{"data-click-event":"load-more-items"},XNode.create("span",{text:"Load more ... "}));(_c=control.headerRenderer)!==null&&_c!==void 0?_c:control.headerRenderer=()=>XNode.create("div",{class:"scroll-header","style-height":"1px","style-width":"100%"});if(!cancelToken){control[loadMoreSet]=cancelToken=new CancelToken;control.bindEvent(control.element,"loadMoreItems",(e=>{const ce=new CustomEvent("moreItems",{detail:{pagedItems:control.pagedItems,cancelToken},bubbles:false});control.element.dispatchEvent(ce)}))}else{cancelToken.cancel();control[loadMoreSet]=cancelToken=new CancelToken}const items=control.items;if(items&&Array.isArray(items)){items.clear();items.addAll(value.items)}else{control.items=value.items}setTimeout((()=>{var _b;const ce=(_b=control.element)===null||_b===void 0?void 0:_b.firstElementChild;ce===null||ce===void 0?void 0:ce.scrollIntoView()}),100);control.footer=value.total&&value.items&&value.items.length<value.total;control.pagedItems=value}}));scrollToBottom=({target,detail:{type,index}})=>{if(!(type==="add"&&index===0)&&type!=="reset"){return}setTimeout((()=>{const e=target.firstElementChild;console.log(e);e===null||e===void 0?void 0:e.scrollIntoView(true)}),1)};_export("default",InfiniteRepeater=class InfiniteRepeater{});_a=InfiniteRepeater;InfiniteRepeater.pagedItems=start=>{const setter=start(0);const setters=pagedItemsSetter(Bind.oneWayAsync(setter));setters["event-more-items"]=Bind.event(((s,e)=>__awaiter(void 0,void 0,void 0,(function*(){var _b,_c;const st=(_c=(_b=s.items)===null||_b===void 0?void 0:_b.length)!==null&&_c!==void 0?_c:0;if(!st){return}const cancelToken=s[loadMoreSet];const loader=start(st);const results=yield loader(s,e.target,cancelToken);s.items.addAll(results.items);s.footer=results.items.length>0}))));return setters}}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/repeater/InfiniteRepeater");System.register(["./Register","./ServiceCollection"],(function(_export,_context){"use strict";var Register,Scope;function DITransient(mockOrInject){return target=>{Register({scope:Scope.Transient,mockOrInject})(target)}}_export("default",DITransient);return{setters:[function(_Register){Register=_Register.Register},function(_ServiceCollection){Scope=_ServiceCollection.Scope}],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/di/DITransient");System.register([],(function(_export,_context){"use strict";var cloneSource;return{setters:[],execute:function(){cloneSource=Symbol("cloneSource");_export("default",cloneSource)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/cloneSource");System.register(["./cloneSource"],(function(_export,_context){"use strict";var cloneSource,Cloner,PropertyCloner,getKey;_export({Cloner:void 0,PropertyCloner:void 0});return{setters:[function(_cloneSource){cloneSource=_cloneSource.default}],execute:function(){getKey=(target,value)=>{for(const key in target){if(Object.prototype.hasOwnProperty.call(target,key)){const element=target[key];if(element===value){return key}}}};_export("Cloner",Cloner=class Cloner{static copyProperties(src,dest={}){dest[cloneSource]=src;for(const key in src){if(Object.prototype.hasOwnProperty.call(src,key)){const element=src[key];switch(typeof element){case"bigint":case"boolean":case"number":case"string":dest[key]=element;break;case"object":if(element===null){dest[key]=null}if(element instanceof Date){dest[key]=element}break}}}return dest}get copy(){const copy=Cloner.copyProperties(this.item);if(this.path){for(const iterator of this.path){this.clone(this.item,copy,iterator)}}return copy}constructor(item,path){this.item=item;this.path=path;this.$type=item.$type}include(property){const last=[property];return new PropertyCloner(this.item,this.path?[...this.path,last]:[last],last)}clone(src,dest,paths){var _a,_b,_c;if(!paths.length){return dest}const[first,...others]=paths;let p=first(src);if(!p){return dest}const original=p;const name=getKey(src,p);if(Array.isArray(p)){const existing=(_a=dest[name])!==null&&_a!==void 0?_a:dest[name]=[];for(let index=0;index<p.length;index++){const element=p[index];const existingItem=(_b=existing[index])!==null&&_b!==void 0?_b:existing[index]={};Cloner.copyProperties(element,existingItem);this.clone(element,existingItem,others)}return existing}p=Cloner.copyProperties(p,(_c=dest[name])!==null&&_c!==void 0?_c:undefined);dest[name]=p;this.clone(original,p,others);return dest}});_export("PropertyCloner",PropertyCloner=class PropertyCloner extends Cloner{constructor(item,path,propertyPath){super(item,path);this.propertyPath=propertyPath}thenInclude(property){this.propertyPath.push(property);return new PropertyCloner(this.item,this.path,this.propertyPath)}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/Cloner");System.register([],(function(_export,_context){"use strict";var EntityContext;_export("EntityContext",void 0);return{setters:[],execute:function(){_export("EntityContext",EntityContext=class EntityContext{constructor(models){this.models=models;this.cache=[];for(const iterator of models){this.cache[iterator.name]=iterator}}for(name){return this.cache[name]}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/IEntityModel");System.register([],(function(_export,_context){"use strict";var JsonError;_export("default",void 0);return{setters:[],execute:function(){_export("default",JsonError=class JsonError extends Error{constructor(message,json){super(message);this.json=json}get errors(){var _a;return(_a=this.json.paramErrors)!==null&&_a!==void 0?_a:[]}get details(){var _a;if(this.json.paramErrors){return this.errors.map((x=>`${x.name}: ${x.reason}`)).join("\n")}return(_a=this.json)===null||_a===void 0?void 0:_a.details}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/services/http/JsonError");System.register([],(function(_export,_context){"use strict";var Queue;_export("default",void 0);return{setters:[],execute:function(){_export("default",Queue=class Queue{constructor(){this.head=0;this.tail=0;this.store=new Map}peek(){return this.store[this.head]}enqueue(item){this.store[this.tail]=item;this.tail++}dequeue(){const{head,tail}=this;const size=tail-head;if(size<=0){return void 0}const item=this.store[head];this.store.delete(head);this.head++;if(this.head===this.tail){this.head=0;this.tail=0}return item}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/Queue");System.register(["./Queue"],(function(_export,_context){"use strict";var Queue,TaskManager;_export("default",void 0);return{setters:[function(_Queue){Queue=_Queue.default}],execute:function(){_export("default",TaskManager=class TaskManager{constructor(){this.rateLimit=10;this.running=new Set;this.waiting=new Queue}run(fx){const pr=new Promise(((resolve,reject)=>{this.waiting.enqueue({resolve,reject,fx})}));this.processQueue();return pr}processQueue(){for(;;){if(this.running.size>=this.rateLimit){return}const t=this.waiting.dequeue();if(!t){return}const{fx,resolve,reject}=t;this.running.add(fx);fx().then((r=>{this.running.delete(fx);setTimeout((()=>this.processQueue()),1);resolve(r)}),(e=>{this.running.delete(fx);setTimeout((()=>this.processQueue()),1);reject(e)}))}}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/models/TaskManager");System.register(["tslib","@web-atoms/core/dist/services/http/JsonError","../models/TaskManager"],(function(_export,_context){"use strict";var __awaiter,JsonError,TaskManager,TextBody,HttpSession;function merge(url,extra){return url+(typeof extra==="string"?extra:combine(extra))}function combine([url,params]){let separator=url.indexOf("?")===-1?"?":"&";if(!url.endsWith("&")){url+=separator;separator=""}for(const key in params){if(params.hasOwnProperty(key)){const element=params[key];url+=separator;separator="&";url+=`${key}=${encodeURIComponent(element)}`}}return url}_export({merge,combine,TextBody:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistServicesHttpJsonError){JsonError=_webAtomsCoreDistServicesHttpJsonError.default},function(_modelsTaskManager){TaskManager=_modelsTaskManager.default}],execute:function(){_export("TextBody",TextBody=class TextBody{constructor(text){this.text=text}toString(){return this.text}});_export("default",HttpSession=class HttpSession extends TaskManager{constructor(){super(...arguments);this.rateLimit=10;this.resultConverter=e=>e}fetchJson(options){return this.run((()=>this.uncheckedFetchJson(options)))}uncheckedFetchJson(options){var _a,_b,_c,_d,_e,_f;return __awaiter(this,void 0,void 0,(function*(){if(options.cancelToken){const ab=new AbortController;options.signal=ab.signal;options.cancelToken.registerForCancel((()=>{ab.abort()}))}let response;if(this.interceptFetch){response=yield this.interceptFetch(options.url,options)}else{response=yield fetch(options.url,options)}const contentType=(_a=response.headers.get("Content-Type"))===null||_a===void 0?void 0:_a.toString();if(response.status>=400){if(contentType===null||contentType===void 0?void 0:contentType.includes("/json")){const error=yield response.json();throw new JsonError(typeof response==="string"?response:(_f=(_e=(_d=(_c=(_b=error.title)!==null&&_b!==void 0?_b:error.detail)!==null&&_c!==void 0?_c:error.message)!==null&&_d!==void 0?_d:error.exceptionMessage)!==null&&_e!==void 0?_e:error)!==null&&_f!==void 0?_f:"Json Server Error",error)}throw new Error(yield response.text())}if(contentType&&!contentType.includes("/json")){throw new Error(`Unable to convert to json\r\n${contentType}}`)}return this.resultConverter(yield response.json())}))}interceptFetch(input,init){throw new Error("not supported")}getJson(options){options.method="GET";return this.fetchJson(options)}postFormModel(options){var _a;options.method="POST";if(options.body){options.body=new TextBody(`formModel=${encodeURIComponent(JSON.stringify(options.body))}`)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/x-www-form-urlencoded";return this.fetchJson(options)}postJson(options){var _a;options.method="POST";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}deleteJson(options){var _a;options.method="DELETE";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}putJson(options){var _a;options.method="PUT";if(options.body){options.body=JSON.stringify(options.body)}(_a=options.headers)!==null&&_a!==void 0?_a:options.headers={};options.headers["content-type"]="application/json";return this.fetchJson(options)}});delete HttpSession.prototype.interceptFetch}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/HttpSession");System.register(["../models/cloneSource"],(function(_export,_context){"use strict";var cloneSource,isObject;function mergeProperties(src,target,path="0",visited=new Map,merged=new Map){if(visited.has(path)){return}if(merged.has(target)){return}merged.set(target,true);visited.set(path,true);if(Array.isArray(src)){for(let index=0;index<src.length;index++){const srcElement=src[index];const targetElement=target[index];if(isObject(targetElement)){mergeProperties(srcElement,targetElement,`${path}.${index}`,visited,merged);continue}target[index]=targetElement}return}const cloneTarget=target[cloneSource];for(const key in src){if(Object.prototype.hasOwnProperty.call(src,key)){const srcElement=src[key];if(typeof srcElement!=="object"){if(srcElement!==void 0){target[key]=srcElement;if(cloneTarget){cloneTarget[key]=srcElement}}continue}if(srcElement instanceof Date){target[key]=srcElement;if(cloneTarget){cloneTarget[key]=srcElement}continue}const targetElement=target[key];if(isObject(targetElement)){if(cloneTarget){const cloneTargetElement=cloneTarget[key];if(cloneTargetElement){mergeProperties(srcElement,cloneTargetElement,path+".$"+key,visited,merged)}}mergeProperties(srcElement,targetElement,path+"."+key,visited,merged);continue}target[key]=targetElement;if(cloneTarget&&targetElement!==void 0){cloneTarget[key]=targetElement}}}}_export("default",mergeProperties);return{setters:[function(_modelsCloneSource){cloneSource=_modelsCloneSource.default}],execute:function(){isObject=o=>typeof o==="object"&&o!==null&&!(o instanceof Date)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/mergeProperties");System.register([],(function(_export,_context){"use strict";var StringHelper;_export("default",void 0);return{setters:[],execute:function(){_export("default",StringHelper=class StringHelper{static findParameter(f){let text=f.toString();let i=text.indexOf("=>");if(i!==-1){text=text.substring(0,i)}i=text.indexOf("(");if(i===-1){return text}text=text.substring(i+1);i=text.indexOf(")");return text.substring(0,i)}static contains(left,right){if(!left){return!right}return left.toLowerCase().includes(right.toLowerCase())}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/StringHelper");System.register(["tslib","./StringHelper"],(function(_export,_context){"use strict";var __awaiter,StringHelper,QueryComposer,Query,replacer,convertToLinq;function append(original,...item){if(original){return[...original,...item]}return[...item]}_export({append,QueryComposer:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_StringHelper){StringHelper=_StringHelper.default}],execute:function(){replacer=/(===)|(!==)|(\(\s*\{)|(\.[a-zA-Z0-9]+)|([a-zA-Z0-9]+\s*\:\s*\{?)/g;_export("convertToLinq",convertToLinq=x=>{x=x.replace(/(\s+)|((CastAs|EF)\_[0-9]\.default\.)/g,((s,first,second)=>{if(s===first){return" "}if(s.startsWith("EF")){return"EF."}if(s.startsWith("CastAs")){return"CastAs."}return s}));replacer.lastIndex=0;x=x.replace(replacer,(s=>{switch(s){case"===":return"==";case"!==":return"!=";case"({":return"( new {";case".some":return".Any";case".map":return".Select";case".filter":return".Where";case".find":return".FirstOrDefault";case".includes":return".Contains"}if(s.endsWith("{")){const index=s.indexOf(":");const v=s.substring(0,index)+" = new {";return v}const trimmed=s.trim();if(trimmed.endsWith(":")){return trimmed.substring(0,trimmed.length-1)+" = "}if(s.startsWith(".")&&s.length>2){return s[0]+s[1].toUpperCase()+s.substring(2)}return s}));return x});_export("QueryComposer",QueryComposer=class QueryComposer{constructor(separator=" || "){this.separator=separator;this.query="p => x => ";this.parameters={};this.index=0}add(p,q){if(this.index){this.query+=this.separator}const suffix=`_${this.index++}`;let text=q.toString();const pfn=StringHelper.findParameter(text).trim();text=text.substring(text.indexOf("=>")+2);const xfn=StringHelper.findParameter(text).trim();const target=this.parameters;for(const key in p){if(Object.prototype.hasOwnProperty.call(p,key)){const element=p[key];const name=`${key}${suffix}`;target[name]=element;text=text.split(`${pfn}.${key}`).join(`p.${name}`);text=text.split(`${xfn}.`).join(`x.`)}}text=text.substring(text.indexOf("=>")+2);this.query+=text}asQuery(){return[this.parameters,this.query]}});_export("default",Query=class Query{constructor(context,methods=[]){this.context=context;this.methods=methods;if(!methods){throw new Error("Methods cannot be empty")}}where(tOrP,q){return this.process("where",tOrP,q)}joinDateRange(start,end,step){return this.append(["joinDateRange","@0,@1,@2",start,end,step])}selectWith(model,tOrP,q){const nq=this.append(["selectWith",model.name]);return nq.process("select",tOrP,q)}select(tOrP,q){return this.process("select",tOrP,q)}whereLinq(query,...args){let filters="";const params=[];for(let index=0;index<args.length;index++){const element=args[index];const raw=query.raw[index];if(raw){filters+=raw}const pi=`@${index}`;filters+=pi;params.push(element)}const last=query.raw[args.length];if(last){filters+=last}return this.append(["where",filters,...params])}selectLinq(query,...args){let filters="";const params=[];for(let index=0;index<args.length;index++){const element=args[index];const raw=query.raw[index];if(raw){filters+=raw}const pi=`@${index}`;filters+=pi;params.push(element)}const last=query.raw[args.length];if(last){filters+=last}return this.append(["select",filters,...params])}join(model,left,right){return this.append(["join",model.name,this.convertToLinq(left.toString()),this.convertToLinq(right.toString())])}leftJoin(model,left,right){return this.append(["leftJoin",model.name,this.convertToLinq(left.toString()),this.convertToLinq(right.toString())])}include(tOrP,...q){if(typeof tOrP==="string"){return this.append(["include",tOrP],...q.map((s=>["include",s])))}const select=this.convertToLinq(tOrP.toString());return this.append(["include",select])}firstOrDefault(p={}){return __awaiter(this,void 0,void 0,(function*(){const lp=p;lp.size=1;lp.start=0;lp.count=false;const list=yield this.toPagedList(lp);return list.items[0]}))}orderBy(tOrP,q){return this.process("orderBy",tOrP,q)}orderByDescending(tOrP,q){return this.process("orderByDescending",tOrP,q)}thenBy(tOrP,q){return this.process("thenBy",tOrP,q)}thenByDescending(tOrP,q){return this.process("thenByDescending",tOrP,q)}trace(){this.context.traceQuery=true;return this}toArray({cancelToken,doNotResolve,hideActivityIndicator,cacheSeconds,cacheVersion}={}){return __awaiter(this,void 0,void 0,(function*(){const r=yield this.toPagedList({size:-1,count:false,cacheSeconds,cancelToken,doNotResolve,hideActivityIndicator,cacheVersion});return r.items}))}toPagedList({start=0,size=100,cancelToken,cacheVersion="1",hideActivityIndicator,splitInclude=false,cacheSeconds=0,count=true}={}){let url;const{traceQuery,name,service,queryFunction,args}=this.context;const trace=traceQuery;const methods=JSON.stringify(this.methods);const fm=new URLSearchParams;fm.append("methods",methods);if(start){fm.append("start",start.toString())}if(size){fm.append("size",size.toString())}fm.append("count",count.toString());if(trace){fm.append("trace",trace?"true":"false")}if(queryFunction){fm.append("function",queryFunction);fm.append("args",JSON.stringify(args!==null&&args!==void 0?args:"[]"))}const encodedMethods=fm.toString();if(encodedMethods.length>1824){if(cacheSeconds>0){throw new Error("Generated query too big for caching")}url=`${service.url}methods/${name}`;return service.postJson({url,cancelToken,body:{methods:this.methods,start,size,split:splitInclude,count,trace,function:queryFunction||void 0,args:queryFunction?args:void 0}})}if(cacheSeconds>0){fm.append("cache",cacheSeconds.toString());fm.append("cv",cacheVersion)}else{}url=`${service.url}query/${name}?${fm.toString()}`;return service.getJson({url,cancelToken,hideActivityIndicator})}thenInclude(a){const select=this.convertToLinq(a.toString());return this.append(["thenInclude",select])}append(...methods){return new Query(this.context,[...this.methods,...methods])}process(name,tOrP,q){if(!q){const select=this.convertToLinq(tOrP.toString());return this.append([name,select])}const pl=[];let i=0;const p=tOrP;let text=q(p).toString();const pfn=StringHelper.findParameter(q.toString()).trim();for(const key in p){if(Object.prototype.hasOwnProperty.call(p,key)){const element=p[key];const pn=`@${i++}`;text=text.split(`${pfn}.${key}`).join(pn);pl.push(element)}}text=this.convertToLinq(text);return this.append([name,text,...pl])}convertToLinq(text){if(this.context.queryProcessor==="DotNet"){return convertToLinq(text)}return text.replace(/\s+/g," ")}})}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/Query");System.register(["@web-atoms/date-time/dist/DateTime"],(function(_export,_context){"use strict";var DateTime,dateFormatISORegEx;function resolve(target){const cache=[];function map(t){if(typeof t!=="object"){return t}if(Array.isArray(t)){return t.map(map)}const{$id,$ref}=t;if($ref){t=cache[$ref];return t}if($id){t.$deleted=false;cache[$id]=t}for(const key in t){if(Object.prototype.hasOwnProperty.call(t,key)){let element=t[key];switch(typeof element){case"object":if(!element){continue}element=map(element);t[key]=element;continue;case"string":if(dateFormatISORegEx.test(element)){t[key]=new DateTime(element)}}}}return t}target=map(target);return target}_export("default",resolve);return{setters:[function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default}],execute:function(){_export("dateFormatISORegEx",dateFormatISORegEx=/^(\d{4})-(\d{2})-(\d{2})T(\d{2}):(\d{2}):(\d{2}(?:\.\d*)?)Z$/)}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/resolve");System.register(["tslib","../models/Cloner","../models/IEntityModel","./HttpSession","./mergeProperties","./Query","./resolve"],(function(_export,_context){"use strict";var __awaiter,Cloner,EntityContext,HttpSession,mergeProperties,Query,resolve,Model,BaseEntityService,ArrayPrototype;_export({Model:void 0,default:void 0});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_modelsCloner){Cloner=_modelsCloner.Cloner},function(_modelsIEntityModel){EntityContext=_modelsIEntityModel.EntityContext},function(_HttpSession){HttpSession=_HttpSession.default},function(_mergeProperties){mergeProperties=_mergeProperties.default},function(_Query){Query=_Query.default},function(_resolve){resolve=_resolve.default}],execute:function(){ArrayPrototype=Array.prototype;ArrayPrototype.where=ArrayPrototype.filter;ArrayPrototype.any=ArrayPrototype.some;ArrayPrototype.select=ArrayPrototype.map;ArrayPrototype.selectMany=function(x){const r=[];for(const iterator of this){const items=x(iterator);if(Array.isArray(items)){r.push(...items)}}return r};ArrayPrototype.firstOrDefault=function(f){if(f){return ArrayPrototype.find.apply(this,arguments)}return this[0]};ArrayPrototype.sum=function(f){var _a;let n=0;for(const iterator of this){n+=(_a=f(iterator))!==null&&_a!==void 0?_a:0}return n};ArrayPrototype.average=function(f){var _a;if(this.length===0){return 0}let n=0;for(const iterator of this){n+=(_a=f(iterator))!==null&&_a!==void 0?_a:0}return n/this.length};ArrayPrototype.orderBy=function(f){return this.sort(((a,b)=>{const ak=f(a);const bk=f(b);if(typeof ak==="string"){return ak.toLowerCase().localeCompare(bk.toLowerCase())}return ak-bk}))};ArrayPrototype.thenBy=ArrayPrototype.orderBy;ArrayPrototype.orderByDescending=function(f){return this.sort(((a,b)=>{const ak=f(a);const bk=f(b);if(typeof ak==="string"){return bk.toLowerCase().localeCompare(ak.toLowerCase())}return bk-ak}))};ArrayPrototype.thenByDescending=ArrayPrototype.orderByDescending;ArrayPrototype.count=function(f){if(!f){return this.length}let length=0;for(const iterator of this){if(f(iterator)){length++}}return length};_export("Model",Model=class Model{constructor(name,keys=[],defaults=null){this.name=name;this.keys=keys;if(defaults){this.defaults=[];for(const key in defaults){if(Object.prototype.hasOwnProperty.call(defaults,key)){const element=defaults[key];this.defaults.push([key,element])}}}}create(properties={}){properties.$type=this.name;if(this.defaults){for(const[key,value]of this.defaults){if(properties[key]===void 0){properties[key]=value}}}return properties}patch(original,updates){for(const iterator of this.keys){const originalKey=original[iterator];const updatedKey=updates[iterator];if(updatedKey&&updatedKey!==originalKey){throw new Error(`Cannot update ${iterator} as it is the primary key`)}updates[iterator]=originalKey}return Object.assign({$type:this.name},updates)}});_export("default",BaseEntityService=class BaseEntityService extends HttpSession{constructor(){super(...arguments);this.url="/api/entity/";this.resultConverter=resolve}cloner(item){return new Cloner(item)}model(){return __awaiter(this,void 0,void 0,(function*(){if(this.entityModel){return this.entityModel}const c=yield this.getJson({url:`${this.url}model`});this.entityModel=new EntityContext(c);return this.entityModel}))}dateRange(start,end,step){return new Query({service:this,name:"NeuroSpeech.EntityAccessControl.DateRange",traceQuery:false},[["dateRange","@0,@1,@2",start,end,step]])}query(m,queryFunction,...args){return new Query({service:this,name:m.name,queryProcessor:this.queryProcessor,queryFunction,args})}delete(body){const url=this.url;return this.deleteJson({url,body})}insert(body){const url=this.url;return this.putJson({url,body})}save(body){return __awaiter(this,void 0,void 0,(function*(){if(Array.isArray(body)&&body.length===0){return body}const url=this.url;const result=yield this.postJson({url,body});mergeProperties(result,body);return body}))}update(e,update){return __awaiter(this,void 0,void 0,(function*(){yield this.bulkUpdate([e],update);for(const key in update){if(Object.prototype.hasOwnProperty.call(update,key)){const element=update[key];e[key]=element}}return e}))}bulkUpdate(entities,update,throwWhenNotFound=false){return __awaiter(this,void 0,void 0,(function*(){const model=yield this.model();const keys=[];for(const iterator of entities){const entityType=model.for(iterator.$type);const key={$type:iterator.$type};for(const{name}of entityType.keys){key[name]=iterator[name]}keys.push(key)}const body={keys,update,throwWhenNotFound};const url=`${this.url}bulk`;yield this.putJson({url,body})}))}bulkDelete(entities,throwWhenNotFound=false){return __awaiter(this,void 0,void 0,(function*(){const model=yield this.model();const keys=[];for(const iterator of entities){const entityType=model.for(iterator.$type);const key={$type:iterator.$type};for(const{name}of entityType.keys){key[name]=iterator[name]}keys.push(key)}const url=`${this.url}bulk`;const body={keys,throwWhenNotFound};yield this.deleteJson({url,body})}))}fetchJson(options){const _super=Object.create(null,{fetchJson:{get:()=>super.fetchJson}});return __awaiter(this,void 0,void 0,(function*(){if(!this.createBusyIndicator||(options===null||options===void 0?void 0:options.hideActivityIndicator)){return yield _super.fetchJson.call(this,options)}const disposable=this.createBusyIndicator(options);try{return yield _super.fetchJson.call(this,options)}finally{disposable===null||disposable===void 0?void 0:disposable.dispose()}}))}createBusyIndicator(options){return{dispose(){}}}});delete BaseEntityService.prototype.createBusyIndicator}}}));AmdLoader.instance.setup("@web-atoms/entity/dist/services/BaseEntityService");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled,BusyProgress,css,container,stack;_export("default",void 0);return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){css=styled.css`
678
678
 
679
679
  position: absolute;
680
680
  left: 0;
@@ -1371,7 +1371,7 @@ and limitations under the License.
1371
1371
  }
1372
1372
  }
1373
1373
  }
1374
- `.installLocal();_export("default",MailsPage=class MailsPage extends MasterDetailPage{constructor(){super(...arguments);this.mails=[];this.search="";this.selectedThread=null;this.previousThread=null;this.version=1}init(){return __awaiter(this,void 0,void 0,(function*(){const mailboxID=this.parameters.id;const mailbox=this.currentMailbox=yield this.mailService.mailbox(mailboxID);this.element.className=css;this.actionRenderer=()=>XNode.create("i",{class:"fas fa-plus","data-click-event":"compose-email"});document.title=mailbox.emailAddress.emailAddress;this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-click-event":"search-mailbox","data-cursor":"pointer",text:mailbox.emailAddress.emailAddress}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({class:"threads","data-list-selection":"default","data-items-updated-event":"mails-available","data-selection-updated-event":"mail-selected",selectedItem:Bind.twoWays((()=>this.selectedThread)),selectOnClick:true,items:this.mails},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.mailService.list({start,size:200,search:this.search,mailboxID:this.currentMailbox.mailboxID,version:this.version,cancelToken}))),{itemRenderer:item=>XNode.create("div",{class:"mailbox-thread","data-unread":item.unread>0},item.emailAddress.name!==item.emailAddress.emailAddress&&XNode.create("div",{class:"name",text:item.emailAddress.name}),XNode.create("div",{class:"email-address",text:item.emailAddress.emailAddress}),item.unread&&XNode.create("div",{class:"unread",text:item.unread,title:`Unread ${item.unread} out of ${item.total}`}))})));this.registerDisposable(yield this.resolve(MailboxSocket).join(this.currentMailbox.mailboxID.toString(),{newMail:(_,emailAddressID,emailID)=>{this.version++}}))}))}mailsAvailable(){return __awaiter(this,void 0,void 0,(function*(){if(!this.selectedThread){this.selectedThread=this.mails[0];return}const st=this.mails.find((x=>x.mailboxID===this.selectedThread.mailboxID&&x.emailAddressID===this.selectedThread.emailAddressID));if(st!==this.selectedThread){this.selectedThread=st}}))}mailSelected(){var _a;return __awaiter(this,void 0,void 0,(function*(){if(!this.selectedThread){return}if(((_a=this.previousThread)===null||_a===void 0?void 0:_a.emailAddressID)===this.selectedThread.emailAddressID){return}this.previousThread=this.selectedThread;this.openDetail(ConversationPage,this.selectedThread)}))}composeEmail(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(ComposeMailPage,{mailboxID:this.currentMailbox.mailboxID});this.version++}))}searchMailbox(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(ChooseMailboxPage)}))}});__decorate([InjectProperty,__metadata("design:type",MailService)],MailsPage.prototype,"mailService",void 0);__decorate([Action({onEvent:"mails-available",defer:100}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"mailsAvailable",null);__decorate([Action({onEvent:"mail-selected",defer:100}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"mailSelected",null);__decorate([Action({onEvent:"compose-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"composeEmail",null);__decorate([Action({onEvent:"search-mailbox"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"searchMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/MailsPage");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime","../../../../common/Sql","../../../../common/SocialMailApp"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,AppFile,User,DateTime,Sql,SocialMailApp,hideActivityIndicator,CloudFileService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){AppFile=_modelModel.AppFile;User=_modelModel.User},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_commonSql){Sql=_commonSql.Sql},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default}],execute:function(){hideActivityIndicator=true;CloudFileService=class CloudFileService{top(){return __awaiter(this,void 0,void 0,(function*(){const userID=SocialMailApp.user.userID;const top=yield this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null)).orderByDescending({userID},(p=>x=>x.userPins.some((s=>p.userID===s.userID)))).thenByDescending((x=>x.dateUpdated)).include((x=>x.creator)).toPagedList({size:3,count:false});return top.items}))}drives({start=0,size=50,search="",version=1,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){const userID=SocialMailApp.user.userID;let q=this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null));if(search){q=q.where({search},(p=>x=>Sql.text.includes(x.creator.userName,p.search)))}return q.include((x=>x.creator)).orderByDescending({userID},(p=>x=>x.userPins.some((s=>p.userID===s.userID)))).thenByDescending((x=>x.fileSize)).toPagedList({start,size,cancelToken})}))}root({id,templates=false}){return __awaiter(this,void 0,void 0,(function*(){if(templates){const children=yield this.entityService.query(AppFile).where((x=>x.templates.some((c=>true)))).toArray();const root=AppFile.create({name:"Templates",isFolder:true,appFileID:0,creator:User.create({}),children});return root}return yield this.entityService.query(AppFile).where({id},(p=>x=>x.appFileID===p.id)).include((x=>x.creator)).include((x=>x.children)).firstOrDefault()}))}rootFolders(){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null)).include((x=>x.creator)).toArray()}))}createFolder({name,parentID}){return __awaiter(this,void 0,void 0,(function*(){const dateCreated=DateTime.utcNow;const r=yield this.entityService.save(AppFile.create({name,parentID,isFolder:true,contentType:"folder",dateCreated,dateUpdated:dateCreated}));return this.entityService.query(AppFile).where({id:r.appFileID},(p=>x=>x.appFileID===p.id)).include((x=>x.creator)).firstOrDefault()}))}expand(folder,showDeleted=false){return __awaiter(this,void 0,void 0,(function*(){const parentID=folder.appFileID;const files=yield this.entityService.query(AppFile).where({parentID,showDeleted},(p=>x=>x.parentID===p.parentID&&x.isFolder===true&&x.isDeleted===p.showDeleted)).toArray({hideActivityIndicator});const{children}=folder;for(const iterator of files){if(children.some((c=>c.appFileID===iterator.appFileID))){continue}children.add(iterator)}}))}files({search="",folder,cancelToken,showDeleted=false}){var _a;return __awaiter(this,void 0,void 0,(function*(){const parentID=folder===null||folder===void 0?void 0:folder.appFileID;if(!parentID){return folder===null||folder===void 0?void 0:folder.children}let q=this.entityService.query(AppFile).where({parentID,showDeleted},(p=>x=>x.parentID===p.parentID&&x.isDeleted===p.showDeleted));if(search){if(!/\%/.test(search)){search=search+"%"}q=q.where({search},(p=>x=>Sql.text.like(x.name,p.search)))}const files=yield q.orderByDescending((x=>x.isFolder)).thenBy((x=>x.name)).toArray({cancelToken});const results=[];for(const iterator of files){if(!iterator.isFolder){results.push(iterator);continue}const fx=folder.children.find((f=>f.appFileID===iterator.appFileID));if(fx){results.push(fx);fx.fileSize=iterator.fileSize;continue}(_a=iterator.children)!==null&&_a!==void 0?_a:iterator.children=[];folder.children.add(iterator);results.push(iterator)}return results}))}};__decorate([Inject,__metadata("design:type",EntityService)],CloudFileService.prototype,"entityService",void 0);CloudFileService=__decorate([DISingleton()],CloudFileService);_export("default",CloudFileService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../web/page/files/service/CloudFileService","../../controls/repeater/InfiniteRepeater","../../NumberFormats","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,InjectProperty,XNode,AtomRepeater,ContentPage,CloudFileService,InfiniteRepeater,toFileSize,Action,DriveListPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",DriveListPage=class DriveListPage extends ContentPage{constructor(){super(...arguments);this.rootFolders=[];this.version=1;this.search=""}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.selectedFolder=null;this.actionRenderer=()=>XNode.create("i",{class:"fas fa-plus","data-click-event":"create-folder"});this.selectedFolder=(_a=this.rootFolders[0])!==null&&_a!==void 0?_a:null;this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({for:"table",items:this.rootFolders,selectOnClick:true,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder)),"data-list-selection":"default","data-selection-updated-event":"on-selection-changed"},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.cloudFileService.drives({start,cancelToken,search:this.search,version:this.version}))),{itemRenderer:item=>XNode.create("tr",null,XNode.create("td",{text:item.name}),XNode.create("td",{text:item.creator.displayName}),XNode.create("td",{text:toFileSize(item.fileSize)}))})))}))}createFolder(){return __awaiter(this,void 0,void 0,(function*(){const name=prompt("Enter name of the folder you want to create");if(!name){return}const folder=yield this.cloudFileService.createFolder({name});this.rootFolders.add(folder);this.selectedFolder=folder}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],DriveListPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"create-folder"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],DriveListPage.prototype,"createFolder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage");System.register(["@web-atoms/core/dist/core/Command"],(function(_export,_context){"use strict";var Command,Commands,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands}],execute:function(){_export("default",CommonCommands=class CommonCommands extends Commands{});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailsPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled;return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){styled.css`
1374
+ `.installLocal();_export("default",MailsPage=class MailsPage extends MasterDetailPage{constructor(){super(...arguments);this.mails=[];this.search="";this.selectedThread=null;this.previousThread=null;this.version=1}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){const mailboxID=this.parameters.id;const mailbox=this.currentMailbox=yield this.mailService.mailbox(mailboxID);this.element.className=css;this.actionRenderer=()=>XNode.create("i",{class:"fas fa-plus","data-click-event":"compose-email"});document.title=(_a=mailbox.emailAddress)===null||_a===void 0?void 0:_a.emailAddress;this.titleRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-click-event":"search-mailbox","data-cursor":"pointer",text:mailbox.emailAddress.emailAddress}));this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({class:"threads","data-list-selection":"default","data-items-updated-event":"mails-available","data-selection-updated-event":"mail-selected",selectedItem:Bind.twoWays((()=>this.selectedThread)),selectOnClick:true,items:this.mails},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.mailService.list({start,size:200,search:this.search,mailboxID:this.currentMailbox.mailboxID,version:this.version,cancelToken}))),{itemRenderer:item=>XNode.create("div",{class:"mailbox-thread","data-unread":item.unread>0},item.emailAddress.name!==item.emailAddress.emailAddress&&XNode.create("div",{class:"name",text:item.emailAddress.name}),XNode.create("div",{class:"email-address",text:item.emailAddress.emailAddress}),item.unread&&XNode.create("div",{class:"unread",text:item.unread,title:`Unread ${item.unread} out of ${item.total}`}))})));this.registerDisposable(yield this.resolve(MailboxSocket).join(this.currentMailbox.mailboxID.toString(),{newMail:(_,emailAddressID,emailID)=>{this.version++}}))}))}mailsAvailable(){return __awaiter(this,void 0,void 0,(function*(){if(!this.selectedThread){this.selectedThread=this.mails[0];return}const st=this.mails.find((x=>x.mailboxID===this.selectedThread.mailboxID&&x.emailAddressID===this.selectedThread.emailAddressID));if(st!==this.selectedThread){this.selectedThread=st}}))}mailSelected(){var _a;return __awaiter(this,void 0,void 0,(function*(){if(!this.selectedThread){return}if(((_a=this.previousThread)===null||_a===void 0?void 0:_a.emailAddressID)===this.selectedThread.emailAddressID){return}this.previousThread=this.selectedThread;this.openDetail(ConversationPage,this.selectedThread)}))}composeEmail(){return __awaiter(this,void 0,void 0,(function*(){yield PageNavigator.pushPageForResultOrCancel(ComposeMailPage,{mailboxID:this.currentMailbox.mailboxID});this.version++}))}searchMailbox(){return __awaiter(this,void 0,void 0,(function*(){PageNavigator.pushPage(ChooseMailboxPage)}))}});__decorate([InjectProperty,__metadata("design:type",MailService)],MailsPage.prototype,"mailService",void 0);__decorate([Action({onEvent:"mails-available",defer:100}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"mailsAvailable",null);__decorate([Action({onEvent:"mail-selected",defer:100}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"mailSelected",null);__decorate([Action({onEvent:"compose-email"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"composeEmail",null);__decorate([Action({onEvent:"search-mailbox"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],MailsPage.prototype,"searchMailbox",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/mails/MailsPage");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","../../../../services/EntityService","../../../../model/model","@web-atoms/date-time/dist/DateTime","../../../../common/Sql","../../../../common/SocialMailApp"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,AppFile,User,DateTime,Sql,SocialMailApp,hideActivityIndicator,CloudFileService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_modelModel){AppFile=_modelModel.AppFile;User=_modelModel.User},function(_webAtomsDateTimeDistDateTime){DateTime=_webAtomsDateTimeDistDateTime.default},function(_commonSql){Sql=_commonSql.Sql},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default}],execute:function(){hideActivityIndicator=true;CloudFileService=class CloudFileService{top(){return __awaiter(this,void 0,void 0,(function*(){const userID=SocialMailApp.user.userID;const top=yield this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null)).orderByDescending({userID},(p=>x=>x.userPins.some((s=>p.userID===s.userID)))).thenByDescending((x=>x.dateUpdated)).include((x=>x.creator)).toPagedList({size:3,count:false});return top.items}))}drives({start=0,size=50,search="",version=1,cancelToken}){return __awaiter(this,void 0,void 0,(function*(){const userID=SocialMailApp.user.userID;let q=this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null));if(search){q=q.where({search},(p=>x=>Sql.text.includes(x.creator.userName,p.search)))}return q.include((x=>x.creator)).orderByDescending({userID},(p=>x=>x.userPins.some((s=>p.userID===s.userID)))).thenByDescending((x=>x.fileSize)).toPagedList({start,size,cancelToken})}))}root({id,templates=false}){return __awaiter(this,void 0,void 0,(function*(){if(templates){const children=yield this.entityService.query(AppFile).where((x=>x.templates.some((c=>true)))).toArray();const root=AppFile.create({name:"Templates",isFolder:true,appFileID:0,creator:User.create({}),children});return root}return yield this.entityService.query(AppFile).where({id},(p=>x=>x.appFileID===p.id)).include((x=>x.creator)).include((x=>x.children)).firstOrDefault()}))}rootFolders(){return __awaiter(this,void 0,void 0,(function*(){return this.entityService.query(AppFile).where((x=>x.isFolder===true&&x.parentID===null)).include((x=>x.creator)).toArray()}))}createFolder({name,parentID}){return __awaiter(this,void 0,void 0,(function*(){const dateCreated=DateTime.utcNow;const r=yield this.entityService.save(AppFile.create({name,parentID,isFolder:true,contentType:"folder",dateCreated,dateUpdated:dateCreated}));return this.entityService.query(AppFile).where({id:r.appFileID},(p=>x=>x.appFileID===p.id)).include((x=>x.creator)).firstOrDefault()}))}expand(folder,showDeleted=false){return __awaiter(this,void 0,void 0,(function*(){const parentID=folder.appFileID;const files=yield this.entityService.query(AppFile).where({parentID,showDeleted},(p=>x=>x.parentID===p.parentID&&x.isFolder===true&&x.isDeleted===p.showDeleted)).toArray({hideActivityIndicator});const{children}=folder;for(const iterator of files){if(children.some((c=>c.appFileID===iterator.appFileID))){continue}children.add(iterator)}}))}files({search="",folder,cancelToken,showDeleted=false}){var _a;return __awaiter(this,void 0,void 0,(function*(){const parentID=folder===null||folder===void 0?void 0:folder.appFileID;if(!parentID){return folder===null||folder===void 0?void 0:folder.children}let q=this.entityService.query(AppFile).where({parentID,showDeleted},(p=>x=>x.parentID===p.parentID&&x.isDeleted===p.showDeleted));if(search){if(!/\%/.test(search)){search=search+"%"}q=q.where({search},(p=>x=>Sql.text.like(x.name,p.search)))}const files=yield q.orderByDescending((x=>x.isFolder)).thenBy((x=>x.name)).toArray({cancelToken});const results=[];for(const iterator of files){if(!iterator.isFolder){results.push(iterator);continue}const fx=folder.children.find((f=>f.appFileID===iterator.appFileID));if(fx){results.push(fx);fx.fileSize=iterator.fileSize;continue}(_a=iterator.children)!==null&&_a!==void 0?_a:iterator.children=[];folder.children.add(iterator);results.push(iterator)}return results}))}};__decorate([Inject,__metadata("design:type",EntityService)],CloudFileService.prototype,"entityService",void 0);CloudFileService=__decorate([DISingleton()],CloudFileService);_export("default",CloudFileService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/page/files/service/CloudFileService");System.register(["tslib","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../../web/page/files/service/CloudFileService","../../controls/repeater/InfiniteRepeater","../../NumberFormats","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,Bind,InjectProperty,XNode,AtomRepeater,ContentPage,CloudFileService,InfiniteRepeater,toFileSize,Action,DriveListPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webPageFilesServiceCloudFileService){CloudFileService=_webPageFilesServiceCloudFileService.default},function(_controlsRepeaterInfiniteRepeater){InfiniteRepeater=_controlsRepeaterInfiniteRepeater.default},function(_NumberFormats){toFileSize=_NumberFormats.toFileSize},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){_export("default",DriveListPage=class DriveListPage extends ContentPage{constructor(){super(...arguments);this.rootFolders=[];this.version=1;this.search=""}init(){var _a;return __awaiter(this,void 0,void 0,(function*(){this.selectedFolder=null;this.actionRenderer=()=>XNode.create("i",{class:"fas fa-plus","data-click-event":"create-folder"});this.selectedFolder=(_a=this.rootFolders[0])!==null&&_a!==void 0?_a:null;this.renderer=XNode.create("div",null,XNode.create(AtomRepeater,Object.assign({for:"table",items:this.rootFolders,selectOnClick:true,selectedItem:Bind.twoWaysImmediate((()=>this.selectedFolder)),"data-list-selection":"default","data-selection-updated-event":"on-selection-changed"},InfiniteRepeater.pagedItems((start=>(c,e,cancelToken)=>this.cloudFileService.drives({start,cancelToken,search:this.search,version:this.version}))),{itemRenderer:item=>XNode.create("tr",null,XNode.create("td",{text:item.name}),XNode.create("td",{text:item.creator.displayName}),XNode.create("td",{text:toFileSize(item.fileSize)}))})))}))}createFolder(){return __awaiter(this,void 0,void 0,(function*(){const name=prompt("Enter name of the folder you want to create");if(!name){return}const folder=yield this.cloudFileService.createFolder({name});this.rootFolders.add(folder);this.selectedFolder=folder}))}});__decorate([InjectProperty,__metadata("design:type",CloudFileService)],DriveListPage.prototype,"cloudFileService",void 0);__decorate([Action({onEvent:"create-folder"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],DriveListPage.prototype,"createFolder",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/drives/DriveListPage");System.register(["@web-atoms/core/dist/core/Command"],(function(_export,_context){"use strict";var Command,Commands,CommonCommands;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default;Commands=_webAtomsCoreDistCoreCommand.Commands}],execute:function(){_export("default",CommonCommands=class CommonCommands extends Commands{});CommonCommands.openMailbox=Command.create({route:"/mailbox/{id}",routeOrder:50,openPage:()=>_context.import("../../web/page/mails/MailsPage")});CommonCommands.openDrives=Command.create({route:"/drives",routeOrder:100,openPage:()=>_context.import("../pages/drives/DriveListPage")})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/commands/CommonCommands");System.register(["@web-atoms/core/dist/style/styled"],(function(_export,_context){"use strict";var styled;return{setters:[function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default}],execute:function(){styled.css`
1375
1375
 
1376
1376
  display: grid;
1377
1377
  grid-template-rows: auto 1fr;
@@ -2052,7 +2052,7 @@ body {
2052
2052
 
2053
2053
  `.withId("global-styles").withOrder("medium").installGlobal()}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/style/GlobalStyle");System.register(["tslib","@web-atoms/core/dist/di/DISingleton","@web-atoms/core/dist/di/Inject","./EntityService","../model/model","../common/SocialMailApp"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,DISingleton,Inject,EntityService,LoginSession,SocialMailApp,UserService;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistDiDISingleton){DISingleton=_webAtomsCoreDistDiDISingleton.default},function(_webAtomsCoreDistDiInject){Inject=_webAtomsCoreDistDiInject.Inject},function(_EntityService){EntityService=_EntityService.default},function(_modelModel){LoginSession=_modelModel.LoginSession},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default}],execute:function(){UserService=class UserService{getUser(){var _a,_b;return __awaiter(this,void 0,void 0,(function*(){(_a=this.user)!==null&&_a!==void 0?_a:this.user=(_b=yield this.entityService.query(LoginSession,"currentUser").firstOrDefault())===null||_b===void 0?void 0:_b.user;SocialMailApp.user=this.user;return this.user}))}login(session){return __awaiter(this,void 0,void 0,(function*(){yield this.entityService.save(session);location.reload()}))}};__decorate([Inject,__metadata("design:type",EntityService)],UserService.prototype,"entityService",void 0);UserService=__decorate([DISingleton()],UserService);_export("default",UserService)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/services/UserService");System.register([],(function(_export,_context){"use strict";var Validators;return{setters:[],execute:function(){_export("Validators",Validators={checkPassword:password=>{const hasMinimumLength=password.length>=7;const hasNumber=/\d/.test(password);const hasSymbol=/[\@\#\$\%\^\&\*\!]/.test(password);return{hasMinimumLength,hasNumber,hasSymbol,isValid:hasMinimumLength&&hasNumber&&hasSymbol}},isValidPassword:password=>Validators.checkPassword(password).isValid})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/validators/Validators");System.register(["@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/web/controls/AtomControl","../../validators/Validators"],(function(_export,_context){"use strict";var Bind,XNode,AtomControl,Validators,PasswordStrength;_export("default",void 0);return{setters:[function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistWebControlsAtomControl){AtomControl=_webAtomsCoreDistWebControlsAtomControl.AtomControl},function(_validatorsValidators){Validators=_validatorsValidators.Validators}],execute:function(){_export("default",PasswordStrength=class PasswordStrength extends AtomControl{constructor(){super(...arguments);this.password="";this.validation={hasMinimumLength:false,hasNumber:false,hasSymbol:false,isValid:false}}preCreate(){this.render(XNode.create("div",{"data-layout":"vertical-flex",validation:Bind.oneWay((()=>Validators.checkPassword(this.password)))},XNode.create("div",{"data-layout":"row"},XNode.create("i",{"data-color":Bind.oneWay((()=>this.validation.hasMinimumLength?"green":"red")),class:Bind.oneWay((()=>this.validation.hasMinimumLength?"fas fa-check":"fas fa-times"))}),XNode.create("span",{text:"Password is at least 7 characters long."})),XNode.create("div",{"data-layout":"row"},XNode.create("i",{"data-color":Bind.oneWay((()=>this.validation.hasNumber?"green":"red")),class:Bind.oneWay((()=>this.validation.hasNumber?"fas fa-check":"fas fa-times"))}),XNode.create("span",{text:"Password has a number."})),XNode.create("div",{"data-layout":"row"},XNode.create("i",{"data-color":Bind.oneWay((()=>this.validation.hasSymbol?"green":"red")),class:Bind.oneWay((()=>this.validation.hasSymbol?"fas fa-check":"fas fa-times"))}),XNode.create("span",{text:"Password has a symbol."}))))}})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/password/PasswordStrength");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","@web-atoms/web-controls/dist/basic/Form","@web-atoms/web-controls/dist/basic/FormField","../../../model/model","@web-atoms/core/dist/core/Bind","@web-atoms/web-controls/dist/basic/PasswordBox","@web-atoms/core/dist/view-model/Action","@web-atoms/core/dist/core/InjectProperty","../../../services/UserService","../../controls/password/PasswordStrength","../../validators/Validators"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,ContentPage,Form,FormField,LoginSession,Bind,PasswordBox,Action,InjectProperty,UserService,PasswordStrength,Validators,LoginPage;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){ContentPage=_webAtomsWebControlsDistMobileAppMobileApp.ContentPage},function(_webAtomsWebControlsDistBasicForm){Form=_webAtomsWebControlsDistBasicForm.default},function(_webAtomsWebControlsDistBasicFormField){FormField=_webAtomsWebControlsDistBasicFormField.default},function(_modelModel){LoginSession=_modelModel.LoginSession},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsWebControlsDistBasicPasswordBox){PasswordBox=_webAtomsWebControlsDistBasicPasswordBox.default},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_servicesUserService){UserService=_servicesUserService.default},function(_controlsPasswordPasswordStrength){PasswordStrength=_controlsPasswordPasswordStrength.default},function(_validatorsValidators){Validators=_validatorsValidators.Validators}],execute:function(){_export("default",LoginPage=class LoginPage extends ContentPage{constructor(){super(...arguments);this.password=""}init(){return __awaiter(this,void 0,void 0,(function*(){this.model=LoginSession.create({});this.model.userName="";this.model.checkPassword="";this.render(XNode.create("div",null,XNode.create("div",{"data-layout":"center-all"},XNode.create(Form,null,XNode.create(FormField,{label:"Username"},XNode.create("input",{value:Bind.twoWaysImmediate((()=>this.model.userName))})),XNode.create(FormField,{label:"Username"},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.checkPassword))})),XNode.create("div",null,XNode.create("button",{"data-layout":"accent-button","data-submit-event":"login",text:"Login"}))))))}))}login(){var _a;return __awaiter(this,void 0,void 0,(function*(){try{yield this.userService.login(this.model);return}catch(error){if(!/change the password/i.test((_a=error.stack)!==null&&_a!==void 0?_a:error)){throw error}}this.model.newPassword="";this.renderer=XNode.create("div",null,XNode.create("div",{"data-layout":"center-all"},XNode.create(Form,null,XNode.create("div",null,"Update your password, your one time password is expired."),XNode.create(FormField,{label:"Password",required:true,error:Bind.oneWay((()=>Validators.isValidPassword(this.password)?"":"Password must contain one symbol, one number and should be minimum 7 characters"))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.password))})),XNode.create(PasswordStrength,{password:Bind.oneWay((()=>this.password))}),XNode.create(FormField,{label:"Password Again",required:true,error:Bind.oneWay((()=>this.model.newPassword!==this.password?"Passwords do not match":""))},XNode.create(PasswordBox,{value:Bind.twoWaysImmediate((()=>this.model.newPassword))})),XNode.create("div",{"data-layout":"command-row"},XNode.create("button",{"data-submit-event":"login",text:"Change Password & Login"})))))}))}});__decorate([InjectProperty,__metadata("design:type",UserService)],LoginPage.prototype,"userService",void 0);__decorate([Action({onEvent:"login"}),__metadata("design:type",Function),__metadata("design:paramtypes",[]),__metadata("design:returntype",Promise)],LoginPage.prototype,"login",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/pages/user/LoginPage");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode;function MenuItem({label,icon=void 0,click=undefined,title=label,description=void 0,href="",commandLink="",target=undefined}){return href||commandLink?XNode.create("a",{"data-layout":"menu-item",title,"data-click-event":commandLink?"route":void 0,href:href||commandLink,target,"event-click":click},icon&&XNode.create("i",{class:icon}),XNode.create("span",{text:label}),description&&XNode.create("small",{text:description})):XNode.create("div",{title,"data-layout":"menu-item","event-click":click},icon&&XNode.create("i",{class:icon}),XNode.create("span",{text:label}),description&&XNode.create("small",{text:description}))}_export("default",MenuItem);return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/menu/MenuItem");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/mobile-app/MobileApp","../../common/SocialMailApp","../../common/controls/menu/MenuItem","@web-atoms/core/dist/style/styled","../commands/AppCommands","@web-atoms/web-controls/dist/basic/Expander","../../common/pages/mailboxes/services/MailboxService","../page/files/service/CloudFileService","../../common/NumberFormats","@web-atoms/core/dist/view-model/Action"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,XNode,Drawer,SocialMailApp,MenuItem,styled,AppCommands,ExpanderMenu,MailboxService,CloudFileService,toFileSize,Action,AppDrawer,css;_export("default",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistMobileAppMobileApp){Drawer=_webAtomsWebControlsDistMobileAppMobileApp.Drawer},function(_commonSocialMailApp){SocialMailApp=_commonSocialMailApp.default},function(_commonControlsMenuMenuItem){MenuItem=_commonControlsMenuMenuItem.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_commandsAppCommands){AppCommands=_commandsAppCommands.default},function(_webAtomsWebControlsDistBasicExpander){ExpanderMenu=_webAtomsWebControlsDistBasicExpander.ExpanderMenu},function(_commonPagesMailboxesServicesMailboxService){MailboxService=_commonPagesMailboxesServicesMailboxService.default},function(_pageFilesServiceCloudFileService){CloudFileService=_pageFilesServiceCloudFileService.default},function(_commonNumberFormats){toFileSize=_commonNumberFormats.toFileSize},function(_webAtomsCoreDistViewModelAction){Action=_webAtomsCoreDistViewModelAction.default}],execute:function(){css=styled.css`
2054
2054
  min-width: 200px;
2055
- `.installLocal();_export("default",AppDrawer=class AppDrawer extends Drawer{init(){return __awaiter(this,void 0,void 0,(function*(){this.element.className=css;this.user=SocialMailApp.user;const{mailboxes,drives}=yield this.getItems();this.renderer=XNode.create("div",null,XNode.create("div",{"data-background-color":"accent"},XNode.create("div",{"data-padding":"large","data-font-size":"large","data-color":"white",text:"Social Mail"})),XNode.create(MenuItem,{icon:"fas fa-home",label:"Home",commandLink:AppCommands.openHome.displayRoute({})}),mailboxes.length&&XNode.create(ExpanderMenu,{isExpanded:true},XNode.create(MenuItem,{icon:"fas fa-envelope",label:"Mailboxes",commandLink:null}),...mailboxes.map((mb=>XNode.create(MenuItem,{commandLink:AppCommands.openMailbox.displayRoute({id:mb.mailboxID}),label:mb.emailAddress.name,description:mb.emailAddress.emailAddress,title:mb.emailAddress.emailAddress}))),XNode.create(MenuItem,{label:"All",commandLink:AppCommands.openMailboxList.displayRoute({})})),drives.length&&XNode.create(ExpanderMenu,{isExpanded:true},XNode.create(MenuItem,{icon:"fas fa-hard-drive",label:"Drives",commandLink:null}),...drives.map((d=>{var _a;return XNode.create(MenuItem,{commandLink:AppCommands.openFiles.displayRoute({id:d.appFileID}),label:d.name,description:`${(_a=d.creator)===null||_a===void 0?void 0:_a.displayName} ${BigInt(d.fileSize)>BigInt(0)?"("+toFileSize(d.fileSize)+")":""}`})}))),XNode.create(MenuItem,{icon:"fas fa-money-check-pen",label:"Templates",commandLink:AppCommands.openTemplates.displayRoute({templates:true})}))}))}getItems(){return __awaiter(this,void 0,void 0,(function*(){const ms=this.resolve(MailboxService);const fs=this.resolve(CloudFileService);const[mailboxes,drives]=yield Promise.all([ms.top(),fs.top()]);return{mailboxes,drives}}))}onClick(none,e){var _a;(_a=this.selected)===null||_a===void 0?void 0:_a.removeAttribute("data-selected");let start=e.target;while(start!==e.currentTarget){if(start.getAttribute("data-layout")==="menu-item"){start.setAttribute("data-selected","true");this.selected=start;break}start=start.parentElement}}});__decorate([Action({onEvent:"click"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,MouseEvent]),__metadata("design:returntype",void 0)],AppDrawer.prototype,"onClick",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/drawer/AppDrawer");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode,ModuleInfo;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("ModuleInfo",ModuleInfo=typeof moduleInfo==="undefined"?[]:[XNode.create("div",{title:`${moduleInfo.server.package}@${moduleInfo.server.version}`},moduleInfo.server.version),XNode.create("div",{title:`${moduleInfo.ui.package}@${moduleInfo.ui.version}`},moduleInfo.ui.version)])}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/ModuleInfo");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/core/dist/core/Route","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Command","./commands/AppCommands","../style/GlobalStyle","../services/UserService","../common/pages/user/LoginPage","./drawer/AppDrawer","../services/files/LocalFileService","../common/controls/ModuleInfo"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,Pack,MobileDesktopApp,Route,PageNavigator,Command,AppCommands,UserService,LoginPage,AppDrawer,LocalFileService,ModuleInfo,AppIndex;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistPack){Pack=_webAtomsCoreDistPack.default},function(_webAtomsWebControlsDistDesktopAppMobileDesktopApp){MobileDesktopApp=_webAtomsWebControlsDistDesktopAppMobileDesktopApp.default},function(_webAtomsCoreDistCoreRoute){Route=_webAtomsCoreDistCoreRoute.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default},function(_commandsAppCommands){AppCommands=_commandsAppCommands.default},function(_styleGlobalStyle){},function(_servicesUserService){UserService=_servicesUserService.default},function(_commonPagesUserLoginPage){LoginPage=_commonPagesUserLoginPage.default},function(_drawerAppDrawer){AppDrawer=_drawerAppDrawer.default},function(_servicesFilesLocalFileService){LocalFileService=_servicesFilesLocalFileService.default},function(_commonControlsModuleInfo){ModuleInfo=_commonControlsModuleInfo.ModuleInfo}],execute:function(){AppIndex=class AppIndex extends MobileDesktopApp{init(){return __awaiter(this,void 0,void 0,(function*(){AppCommands.install(this);this.resolve(LocalFileService);if(!(yield this.userService.getUser())){PageNavigator.openPage(LoginPage);return}this.drawerMenu=AppDrawer;if(!Command.invokeRoute()){AppCommands.openHome.dispatch()}if(this.desktopApp){this.desktopApp.statusBarRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-flex":"stretch-full"}),...ModuleInfo)}}))}};__decorate([InjectProperty,__metadata("design:type",UserService)],AppIndex.prototype,"userService",void 0);AppIndex=__decorate([Pack],AppIndex);_export("default",AppIndex);Route.encodeUrl=url=>{if(url.startsWith("#")){return url}if(/\d+\./.test(location.hostname)){return"#!"+url}return url}}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/AppIndex");System.register([],(function(_export,_context){"use strict";var AtomOnce;_export("AtomOnce",void 0);return{setters:[],execute:function(){_export("AtomOnce",AtomOnce=class AtomOnce{run(f){if(this.isRunning){return}let isAsync=false;try{this.isRunning=true;const p=f();if(p&&p.then&&p.catch){isAsync=true;p.then((()=>{this.isRunning=false})).catch((()=>{this.isRunning=false}))}}finally{if(!isAsync){this.isRunning=false}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/AtomOnce");System.register([],(function(_export,_context){"use strict";var StyleBuilder;function cssNumberToString(n,unit="px"){if(typeof n==="number"){if(n===0){return n+""}return n+unit}return n}_export({cssNumberToString,default:void 0});return{setters:[],execute:function(){_export("default",StyleBuilder=class StyleBuilder{static get newStyle(){return new StyleBuilder}constructor(style){this.style=style;this.style=this.style||{}}toStyle(){return this.style}size(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({width,height})}roundBorder(radius){radius=cssNumberToString(radius);return this.merge({borderRadius:radius,padding:radius})}border(borderWidth,borderColor,borderStyle="solid"){borderWidth=cssNumberToString(borderWidth);return this.merge({borderWidth,borderStyle,borderColor})}center(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({position:"absolute",left:0,right:0,top:0,bottom:0,width,height,margin:"auto"})}absolute(left,top,right,bottom){left=cssNumberToString(left);top=cssNumberToString(top);if(right!==undefined){right=cssNumberToString(right);bottom=cssNumberToString(bottom);return this.merge({position:"absolute",left,top,right,bottom})}return this.merge({position:"absolute",left,top})}merge(style){return new StyleBuilder(Object.assign(Object.assign({},this.style),style))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/StyleBuilder");System.register(["tslib","../../App","../../di/Inject","../../di/RegisterSingleton","../../services/BusyIndicatorService","../../services/NavigationService","../controls/AtomControl","../styles/StyleBuilder"],(function(_export,_context){"use strict";var __decorate,__metadata,App,Inject,RegisterSingleton,BusyIndicatorService,NavigationService,AtomControl,cssNumberToString,WebBusyIndicatorService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_App){App=_App.App},function(_diInject){Inject=_diInject.Inject},function(_diRegisterSingleton){RegisterSingleton=_diRegisterSingleton.RegisterSingleton},function(_servicesBusyIndicatorService){BusyIndicatorService=_servicesBusyIndicatorService.BusyIndicatorService},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_controlsAtomControl){AtomControl=_controlsAtomControl.AtomControl},function(_stylesStyleBuilder){cssNumberToString=_stylesStyleBuilder.cssNumberToString}],execute:function(){_export("WebBusyIndicatorService",WebBusyIndicatorService=class WebBusyIndicatorService extends BusyIndicatorService{constructor(){super(...arguments);this.zIndex=5e4;this.indicators=0}createIndicator(){const host=document.createElement("div");const popup=new AtomControl(this.app,host);host.className="indicator-host";const span=document.createElement("i");const divStyle=host.style;divStyle.position="absolute";divStyle.overflow="hidden";divStyle.left=divStyle.right=divStyle.bottom=divStyle.top="0";divStyle.zIndex=this.zIndex+++"";const spanStyle=span.style;spanStyle.position="absolute";spanStyle.margin="auto";spanStyle.width="16px";spanStyle.height="16px";spanStyle.overflow="hidden";spanStyle.maxHeight="100%";spanStyle.maxWidth="100%";spanStyle.left=spanStyle.right=spanStyle.bottom=spanStyle.top="0";span.className="fas fa-spinner fa-spin";host.appendChild(span);const ws=this.navigationService;const e=ws.getHostForElement();if(e){e.appendChild(host)}else{document.body.appendChild(host);ws.refreshScreen();popup.bind(host,"styleLeft",[["this","scrollLeft"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleTop",[["this","scrollTop"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleWidth",[["this","width"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleHeight",[["this","height"]],false,cssNumberToString,ws.screen)}popup.registerDisposable({dispose:()=>{host.remove()}});return popup}});__decorate([Inject,__metadata("design:type",NavigationService)],WebBusyIndicatorService.prototype,"navigationService",void 0);__decorate([Inject,__metadata("design:type",App)],WebBusyIndicatorService.prototype,"app",void 0);_export("WebBusyIndicatorService",WebBusyIndicatorService=__decorate([RegisterSingleton],WebBusyIndicatorService))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/services/WebBusyIndicatorService");System.register(["tslib"],(function(_export,_context){"use strict";var __awaiter,Atom;_export("Atom",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter}],execute:function(){_export("Atom",Atom=class Atom{static superProperty(tc,target,name){let c=tc;do{c=Object.getPrototypeOf(c);if(!c){throw new Error("No property descriptor found for "+name)}const pd=Object.getOwnPropertyDescriptor(c.prototype,name);if(!pd){continue}return pd.get.apply(target)}while(true)}static get(target,path){const segments=path.split(".");for(const iterator of segments){if(target===undefined||target===null){return target}target=target[iterator]}return target}static delay(n,ct){return new Promise(((resolve,reject)=>{const h={};h.id=setTimeout((()=>{resolve()}),n);if(ct){ct.registerForCancel((()=>{clearTimeout(h.id);reject(new Error("cancelled"))}))}}))}static encodeParameters(p){if(!p){return""}let s="";for(const key in p){if(p.hasOwnProperty(key)){const element=p[key];let v=element;if(v===undefined||v===null){continue}if(v instanceof Date){v=v.toISOString()}else if(typeof element==="object"){v=JSON.stringify(element)}if(s){s+="&"}s+=`${key}=${encodeURIComponent(v)}`}}return s}static url(url,query,hash){if(!url){return url}let p=this.encodeParameters(query);if(p){if(url.indexOf("?")===-1){url+="?"}else{url+="&"}url+=p}p=this.encodeParameters(hash);if(p){if(url.indexOf("#")===-1){url+="#"}else{url+="&"}url+=p}return url}static postAsync(app,f){return new Promise(((resolve,reject)=>{app.callLater((()=>__awaiter(this,void 0,void 0,(function*(){try{resolve(yield f())}catch(error){reject(error)}}))))}))}});Atom.designMode=false}}}));AmdLoader.instance.setup("@web-atoms/core/dist/Atom");System.register([],(function(_export,_context){"use strict";var FormattedError;_export("default",void 0);return{setters:[],execute:function(){_export("default",FormattedError=class FormattedError{constructor(msg){const e=new Error(msg.toString());e.formattedMessage=msg;e.__proto__=FormattedError.prototype;return e}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/FormattedError");System.register([],(function(_export,_context){"use strict";function registerInit(target,fx){const t=target;const inits=t._$_inits=t._$_inits||[];inits.push(fx)}_export("registerInit",registerInit);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/baseTypes");System.register(["tslib","../App","../Atom","../core/AtomBinder","../core/AtomDisposableList","../core/AtomWatcher","../core/BindableProperty","../di/Inject","./baseTypes"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,__param,App,Atom,AtomBinder,AtomDisposableList,AtomWatcher,BindableProperty,Inject,registerInit,AtomViewModel;function runDecoratorInits(){const v=this.constructor.prototype;if(!v){return}const ris=v._$_inits;if(ris){for(const ri of ris){ri.call(this,this)}}}function privateInit(){return __awaiter(this,void 0,void 0,(function*(){try{yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){runDecoratorInits.apply(this)}))));yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){yield this.init();this.onReady()}))));if(this.postInit){for(const i of this.postInit){i()}this.postInit=null}}finally{const pi=this.pendingInits;this.pendingInits=null;for(const iterator of pi){iterator()}}}))}function waitForReady(vm){return __awaiter(this,void 0,void 0,(function*(){while(vm.pendingInits){yield Atom.delay(100)}}))}function Receive(...channel){return(target,key)=>{registerInit(target,(vm=>{const fx=vm[key];const a=(ch,d)=>{const p=fx.call(vm,ch,d);if(p&&p.then&&p.catch){p.catch((e=>{console.warn(e)}))}};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,a))}}))}}function BindableReceive(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=(cx,m)=>{vm[key]=m};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,fx))}}));return bp}}function BindableBroadcast(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=t=>{const v=vm[key];for(const c of channel){vm.app.broadcast(c,v)}};const d=new AtomWatcher(vm,[key.split(".")],fx);d.init();vm.registerDisposable(d)}));return bp}}function Watch(target,key,descriptor){registerInit(target,(vm=>{const ivm=vm;if(descriptor&&descriptor.get){ivm.setupWatch(descriptor.get,(()=>{vm.refresh(key.toString())}));return}ivm.setupWatch(vm[key])}))}function CachedWatch(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const ivm=vm;const fieldName=`_${key}`;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){const c=ivm[fieldName]||(ivm[fieldName]={value:getMethod.apply(ivm)});return c.value}});ivm.setupWatch(getMethod,(()=>{ivm[fieldName]=null;AtomBinder.refreshValue(ivm,key)}))}))}function Validate(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const initialized={i:false};const ivm=vm;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){if(vm.mShouldValidate&&initialized.i){return getMethod.apply(this)}return null}});ivm.setupWatch(getMethod,(()=>{initialized.i=true;vm.refresh(key.toString())}),true,key.toString());return}))}_export({waitForReady,Receive,BindableReceive,BindableBroadcast,Watch,CachedWatch,Validate});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__param=_tslib.__param},function(_App){App=_App.App},function(_Atom){Atom=_Atom.Atom},function(_coreAtomBinder){AtomBinder=_coreAtomBinder.AtomBinder},function(_coreAtomDisposableList){AtomDisposableList=_coreAtomDisposableList.AtomDisposableList},function(_coreAtomWatcher){AtomWatcher=_coreAtomWatcher.AtomWatcher},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_diInject){Inject=_diInject.Inject},function(_baseTypes){registerInit=_baseTypes.registerInit}],execute:function(){_export("AtomViewModel",AtomViewModel=class AtomViewModel{get isReady(){return this.pendingInits===null}get errors(){const e=[];if(!this.mShouldValidate){return e}for(const v of this.validations){if(!v.initialized){return e}const error=this[v.name];if(error){e.push({name:v.name,error})}}return e}get parent(){return this.mParent}set parent(v){if(this.mParent&&this.mParent.mChildren){this.mParent.mChildren.remove(this)}this.mParent=v;if(v){const c=v.mChildren||(v.mChildren=[]);c.add(this);this.registerDisposable({dispose:()=>{c.remove(this)}})}}get isValid(){let valid=true;const validateWasFalse=this.mShouldValidate===false;this.mShouldValidate=true;for(const v of this.validations){if(!v.initialized){v.watcher.init(true);v.initialized=true}if(this[v.name]){if(validateWasFalse){AtomBinder.refreshValue(this,v.name)}valid=false}}if(this.mChildren){for(const child of this.mChildren){if(!child.isValid){valid=false}}}AtomBinder.refreshValue(this,"errors");return valid}constructor(app){this.app=app;this.disposables=null;this.validations=[];this.pendingInits=[];this.mShouldValidate=false;this.app.runAsync((()=>privateInit.apply(this)))}resetValidations(resetChildren=true){this.mShouldValidate=false;for(const v of this.validations){this.refresh(v.name)}if(resetChildren&&this.mChildren){for(const iterator of this.mChildren){iterator.resetValidations(resetChildren)}}}runAfterInit(f){if(this.pendingInits){this.pendingInits.push(f);return}f()}refresh(name){AtomBinder.refreshValue(this,name)}init(){return __awaiter(this,void 0,void 0,(function*(){}))}dispose(){if(this.disposables){this.disposables.dispose()}}registerDisposable(d){this.disposables=this.disposables||new AtomDisposableList;return this.disposables.add(d)}onReady(){}setupWatch(ft,proxy,forValidation,name){const d=new AtomWatcher(this,ft,proxy,this);if(forValidation){this.validations=this.validations||[];this.validations.push({name,watcher:d,initialized:false})}else{d.init()}return this.registerDisposable(d)}onPropertyChanged(name){}});_export("AtomViewModel",AtomViewModel=__decorate([__param(0,Inject),__metadata("design:paramtypes",[App])],AtomViewModel))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomViewModel");System.register(["tslib","../services/NavigationService","./AtomViewModel"],(function(_export,_context){"use strict";var __awaiter,NavigationService,AtomViewModel,AtomWindowViewModel;_export("AtomWindowViewModel",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_AtomViewModel){AtomViewModel=_AtomViewModel.AtomViewModel}],execute:function(){_export("AtomWindowViewModel",AtomWindowViewModel=class AtomWindowViewModel extends AtomViewModel{close(result){this.app.broadcast(`atom-window-close:${this.windowName}`,result)}cancel(){return __awaiter(this,void 0,void 0,(function*(){if(this.closeWarning){const navigationService=this.app.resolve(NavigationService);if(!(yield navigationService.confirm(this.closeWarning,"Are you sure?"))){return false}}this.app.broadcast(`atom-window-cancel:${this.windowName}`,"cancelled");return true}))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomWindowViewModel");System.register(["@web-atoms/core/src/web/images/close-button-hover.svg","../styles/AtomStyle"],(function(_export,_context){"use strict";var closeButtonHover,AtomStyle,AtomWindowStyle;_export("AtomWindowStyle",void 0);return{setters:[function(_webAtomsCoreSrcWebImagesCloseButtonHoverSvg){closeButtonHover=_webAtomsCoreSrcWebImagesCloseButtonHoverSvg.default},function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomWindowStyle",AtomWindowStyle=class AtomWindowStyle extends AtomStyle{get root(){return Object.assign(Object.assign({},this.frameHost),{subclasses:{" .close-button":this.closeButton," .command-bar-presenter":this.commandBarPresenter," .command-bar":this.commandBar," .content-presenter":this.contentPresenter," .content":this.content," .frame":this.frame," .title":this.title," .title-host":this.titleHost," .title-presenter":this.titlePresenter}})}get frameHost(){return{position:"absolute",left:0,right:0,top:0,bottom:0,backgroundColor:"#50505080"}}get frame(){return{position:"absolute",minHeight:"100px",minWidth:"300px",margin:"auto",border:"solid 1px #808080",borderRadius:"5px",backgroundColor:"white"}}get titlePresenter(){return{position:"relative",left:0,right:0,top:0,height:"37px"}}get titleHost(){return{position:"absolute",left:0,right:0,padding:"7px",minHeight:"32px",backgroundColor:"#404040",color:"white",top:0,borderTopRightRadius:"4px",borderTopLeftRadius:"4px"}}get title(){return{margin:"auto"}}get closeButton(){return{position:"absolute",right:"6px",top:"7px",width:"0",height:"0",padding:"9px",border:"none",backgroundColor:"transparent",backgroundImage:closeButtonHover}}get content(){return{}}get contentPresenter(){return{position:"relative",padding:"10px",background:"white"}}get commandBarPresenter(){return{left:0,right:0,bottom:0,padding:"5px",backgroundColor:"#d4d4d4",textAlign:"right",borderBottomRightRadius:"4px",borderBottomLeftRadius:"4px"}}get commandBar(){return{subclasses:{" button":{borderRadius:"3px",marginLeft:"5px",marginRight:"5px",padding:"4px 16px",backgroundColor:"whitesmoke",border:"1px solid gray"}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomWindowStyle");System.register(["../../core/Colors","./AtomWindowStyle"],(function(_export,_context){"use strict";var Colors,AtomWindowStyle,AtomAlertWindowStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomWindowStyle){AtomWindowStyle=_AtomWindowStyle.AtomWindowStyle}],execute:function(){_export("default",AtomAlertWindowStyle=class AtomAlertWindowStyle extends AtomWindowStyle{get titleHost(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"titleHost")),{color:Colors.black,backgroundColor:Colors.white})}get contentPresenter(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"contentPresenter")),{padding:"0px 10px 30px 10px",textAlign:"center",color:Colors.rgba(51,51,51)})}get commandBar(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"commandBar")),{textAlign:"center",subclasses:{" button":this.buttonStyle," .yes-button":{backgroundColor:Colors.rgba(0,128,0)}," .no-button":{backgroundColor:Colors.rgba(255,0,0)}}})}get buttonStyle(){return{border:"none",color:Colors.white,width:"50%",height:"40px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomAlertWindowStyle");System.register(["./AtomControl"],(function(_export,_context){"use strict";var AtomControl,AtomTemplate;_export("AtomTemplate",void 0);return{setters:[function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("AtomTemplate",AtomTemplate=class AtomTemplate extends AtomControl{})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomTemplate");System.register(["../../App","../../core/Bind","../../core/XNode","../styles/AtomWindowStyle","./AtomControl","./AtomTemplate"],(function(_export,_context){"use strict";var App,Bind,XNode,AtomWindowStyle,AtomControl,AtomTemplate,AtomWindowFrameTemplate,AtomWindowTitleTemplate,AtomWindow;function getTemplateParent(e){const tp=e._templateParent;if(tp){return tp}const p=e._logicalParent||e.parentElement;if(p){return getTemplateParent(p)}}_export({getTemplateParent,AtomWindowFrameTemplate:void 0,AtomWindow:void 0});return{setters:[function(_App){App=_App.App},function(_coreBind){Bind=_coreBind.default},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomWindowStyle){AtomWindowStyle=_stylesAtomWindowStyle.AtomWindowStyle},function(_AtomControl){AtomControl=_AtomControl.AtomControl},function(_AtomTemplate){AtomTemplate=_AtomTemplate.AtomTemplate}],execute:function(){_export("AtomWindowFrameTemplate",AtomWindowFrameTemplate=class AtomWindowFrameTemplate extends AtomTemplate{get templateParent(){return getTemplateParent(this.element)}preCreate(){this.titlePresenter=null;this.commandPresenter=null;this.contentPresenter=null;super.preCreate()}create(){this.render(XNode.create("div",{class:"frame",styleWidth:Bind.oneWay((()=>this.templateParent.width||undefined)),styleHeight:Bind.oneWay((()=>this.templateParent.height||undefined)),styleLeft:Bind.oneWay((()=>this.templateParent.x>=0?`${this.templateParent.x}px`:undefined)),styleTop:Bind.oneWay((()=>this.templateParent.y>=0?`${this.templateParent.y}px`:undefined)),styleMarginTop:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginLeft:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginRight:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginBottom:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined))},XNode.create("div",{class:"title-presenter",presenter:Bind.presenter("titlePresenter")}),XNode.create("div",{class:"content-presenter",presenter:Bind.presenter("contentPresenter")}),XNode.create("div",{class:"command-bar-presenter",presenter:Bind.presenter("commandPresenter")})))}});AtomWindowTitleTemplate=class AtomWindowTitleTemplate extends AtomControl{get templateParent(){return getTemplateParent(this.element)}create(){this.render(XNode.create("div",{class:"title-host"},XNode.create("span",{class:"title",text:Bind.oneWay((()=>this.templateParent.title))}),XNode.create("button",{class:"close-button",eventClick:Bind.event((()=>this.templateParent.close()))})))}};_export("AtomWindow",AtomWindow=class AtomWindow extends AtomControl{constructor(){super(...arguments);this.title="";this.width="";this.height="";this.x=-1;this.y=-1;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;this.isReady=false}get templateParent(){return getTemplateParent(this.element)}onPropertyChanged(name){switch(name){case"windowTemplate":case"commandTemplate":case"frameTemplate":this.invalidate();break}}close(){const vm=this.viewModel;if(vm.cancel){this.app.runAsync((()=>vm.cancel()));return}const message=`atom-window-cancel:${this.id}`;const device=this.app.resolve(App);device.broadcast(message,"cancelled")}onUpdateUI(){if(!(this.windowTemplate&&this.frameTemplate)){return}if(this.isReady){return}this.bind(this.element,"title",[["viewModel","title"]]);const frame=new this.frameTemplate(this.app);const fe=frame.element;const titleContent=new this.titleTemplate(this.app);titleContent.element._templateParent=this;frame.titlePresenter.appendChild(titleContent.element);this.setupDragging(frame.titlePresenter);this.element.classList.add("frame-host");fe._logicalParent=this.element;fe._templateParent=this;if(!frame.contentPresenter){throw new Error("ContentPresenter must be set inside frameTemplate before creating window")}const content=new this.windowTemplate(this.app);content.element._templateParent=this;this.setElementClass(content.element,{content:1});frame.contentPresenter.appendChild(content.element);if(this.commandTemplate){if(!frame.commandPresenter){throw new Error("CommandPresenter must be set inside frameTemplate"+"before creating window if command template is present")}const command=new this.commandTemplate(this.app);command.element._templateParent=this;this.setElementClass(command.element,{"command-bar":1});frame.commandPresenter.appendChild(command.element)}this.append(frame);setTimeout((()=>{this.centerFrame(frame.element)}),100);this.isReady=true}preCreate(){this.defaultControlStyle=AtomWindowStyle;this.title=null;this.width="";this.height="";this.x=-1;this.y=-1;this.windowTemplate=null;this.commandTemplate=null;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;super.preCreate();this.render(XNode.create("div",{styleClass:Bind.oneTime((()=>this.controlStyle.name))}))}centerFrame(e){if(!this.element){return}const parent=this.element.parentElement;if(parent===window||parent===document.body){return}if(parent.offsetWidth<=0||parent.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}if(e.offsetWidth<=0||e.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}const x=(parent.offsetWidth-e.offsetWidth)/2;const y=(parent.offsetHeight-e.offsetHeight)/2;this.x=x;this.y=y;e.style.opacity="1";this.element.style.removeProperty("opacity")}setupDragging(tp){this.bindEvent(tp,"mousedown",(startEvent=>{startEvent.preventDefault();const disposables=[];const offset={x:tp.parentElement.offsetLeft,y:tp.parentElement.offsetTop};const rect={x:startEvent.clientX,y:startEvent.clientY};const cursor=tp.style.cursor;tp.style.cursor="move";disposables.push(this.bindEvent(document.body,"mousemove",(moveEvent=>{const{clientX,clientY}=moveEvent;const dx=clientX-rect.x;const dy=clientY-rect.y;offset.x+=dx;offset.y+=dy;this.x=offset.x;this.y=offset.y;rect.x=clientX;rect.y=clientY})));disposables.push(this.bindEvent(document.body,"mouseup",(endEvent=>{tp.style.cursor=cursor;for(const iterator of disposables){iterator.dispose()}})))}))}});AtomWindow.windowTemplate=XNode.prepare("windowTemplate",true,true);AtomWindow.commandTemplate=XNode.prepare("commandTemplate",true,true);AtomWindow.titleTemplate=XNode.prepare("titleTemplate",true,true);AtomWindow.frameTemplate=XNode.prepare("frameTemplate",true,true)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomWindow");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../../view-model/AtomWindowViewModel","../styles/AtomAlertWindowStyle","./AtomWindow"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomWindowViewModel,AtomAlertWindowStyle,AtomWindow,AtomAlertWindow,AtomAlertViewModel;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_viewModelAtomWindowViewModel){AtomWindowViewModel=_viewModelAtomWindowViewModel.AtomWindowViewModel},function(_stylesAtomAlertWindowStyle){AtomAlertWindowStyle=_stylesAtomAlertWindowStyle.default},function(_AtomWindow){AtomWindow=_AtomWindow.AtomWindow}],execute:function(){_export("default",AtomAlertWindow=class AtomAlertWindow extends AtomWindow{create(){this.defaultControlStyle=AtomAlertWindowStyle;this.viewModel=this.resolve(AtomAlertViewModel);this.render(XNode.create(AtomWindow,{title:Bind.oneWay((()=>this.viewModel.title))},XNode.create(AtomWindow.windowTemplate,null,XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message))})),XNode.create(AtomWindow.commandTemplate,null,XNode.create("div",null,XNode.create("button",{class:"yes-button",styleDisplay:Bind.oneWay((()=>this.viewModel.okTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.okTitle)),eventClick:()=>this.viewModel.onOkClicked()}),XNode.create("button",{class:"no-button",styleMarginBottom:Bind.oneWay((()=>this.viewModel.cancelTitle?"0":"10px")),styleDisplay:Bind.oneWay((()=>this.viewModel.cancelTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.cancelTitle)),eventClick:()=>this.viewModel.onCancelClicked()})))))}});AtomAlertViewModel=class AtomAlertViewModel extends AtomWindowViewModel{onOkClicked(){this.close(true)}onCancelClicked(){this.cancel()}};__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"title",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"message",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"okTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"cancelTitle",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomAlertWindow");System.register(["../../core/Colors","./AtomStyle"],(function(_export,_context){"use strict";var Colors,AtomStyle,AtomNotificationStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomStyle){AtomStyle=_AtomStyle.AtomStyle}],execute:function(){_export("default",AtomNotificationStyle=class AtomNotificationStyle extends AtomStyle{get root(){return{padding:"5px",borderRadius:"5px",border:"solid 1px lightgray",fontFamily:"Verdana, Geneva, sans-serif",fontSize:"16px",subclasses:{".error":{borderColor:Colors.red,color:Colors.red},".warning":{backgroundColor:Colors.lightYellow}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomNotificationStyle");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../styles/AtomNotificationStyle","./AtomControl"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomNotificationStyle,AtomControl,AtomNotification;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomNotificationStyle){AtomNotificationStyle=_stylesAtomNotificationStyle.default},function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("default",AtomNotification=class AtomNotification extends AtomControl{constructor(){super(...arguments);this.timeout=5e3;this.timeoutKey=null}onPropertyChanged(name){switch(name){case"timeout":this.setupTimeout();break}}create(){this.defaultControlStyle=AtomNotificationStyle;this.render(XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message)),timeout:Bind.oneWay((()=>this.viewModel.timeout||5e3)),styleClass:Bind.oneWay((()=>({[this.controlStyle.name]:1,error:this.viewModel.type&&/error/i.test(this.viewModel.type),warning:this.viewModel.type&&/warn/i.test(this.viewModel.type)})))}))}setupTimeout(){if(this.timeoutKey){clearTimeout(this.timeoutKey)}this.timeoutKey=setTimeout((()=>{if(this.element){this.app.broadcast(`atom-window-close:${this.id}`,"")}}),this.timeout)}});__decorate([BindableProperty,__metadata("design:type",Number)],AtomNotification.prototype,"timeout",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomNotification");System.register(["../styles/AtomStyle"],(function(_export,_context){"use strict";var AtomStyle,AtomPopupStyle;_export("AtomPopupStyle",void 0);return{setters:[function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomPopupStyle",AtomPopupStyle=class AtomPopupStyle extends AtomStyle{get root(){return{backgroundColor:"white",border:"solid 1px lightgray",padding:"5px",borderRadius:"5px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomPopupStyle");System.register(["../../core/XNode","../../style/styled","./PopupService"],(function(_export,_context){"use strict";var XNode,styled,PopupWindow,css;function NotificationPopup({message,type}){return class Notification extends PopupWindow{create(){if(message instanceof XNode){this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)}},message));return}this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)},formattedText:message}))}}}_export("default",NotificationPopup);return{setters:[function(_coreXNode){XNode=_coreXNode.default},function(_styleStyled){styled=_styleStyled.default},function(_PopupService){PopupWindow=_PopupService.PopupWindow}],execute:function(){css=styled.css`
2055
+ `.installLocal();_export("default",AppDrawer=class AppDrawer extends Drawer{init(){return __awaiter(this,void 0,void 0,(function*(){this.element.className=css;this.user=SocialMailApp.user;const{mailboxes,drives}=yield this.getItems();this.renderer=XNode.create("div",null,XNode.create("div",{"data-background-color":"accent"},XNode.create("div",{"data-padding":"large","data-font-size":"large","data-color":"white",text:"Social Mail"})),XNode.create(MenuItem,{icon:"fas fa-home",label:"Home",commandLink:AppCommands.openHome.displayRoute({})}),mailboxes.length&&XNode.create(ExpanderMenu,{isExpanded:true},XNode.create(MenuItem,{icon:"fas fa-envelope",label:"Mailboxes",commandLink:null}),...mailboxes.map((mb=>XNode.create(MenuItem,{commandLink:AppCommands.openMailbox.displayRoute({id:mb.mailboxID}),label:mb.emailAddress.name,description:mb.emailAddress.emailAddress,title:mb.emailAddress.emailAddress}))),XNode.create(MenuItem,{label:"All",commandLink:AppCommands.openMailboxList.displayRoute({})})),drives.length&&XNode.create(ExpanderMenu,{isExpanded:true},XNode.create(MenuItem,{icon:"fas fa-hard-drive",label:"Drives",commandLink:null}),...drives.map((d=>{var _a;return XNode.create(MenuItem,{commandLink:AppCommands.openFiles.displayRoute({id:d.appFileID}),label:d.name,description:`${(_a=d.creator)===null||_a===void 0?void 0:_a.displayName} ${BigInt(d.fileSize)>BigInt(0)?"("+toFileSize(d.fileSize)+")":""}`})}))),XNode.create(MenuItem,{icon:"fas fa-money-check-pen",label:"Templates",commandLink:AppCommands.openTemplates.displayRoute({templates:true})}),XNode.create(MenuItem,{icon:"fas fa-envelopes-bulk",label:"All Mailboxes",commandLink:AppCommands.openMailboxList.displayRoute({})}))}))}getItems(){return __awaiter(this,void 0,void 0,(function*(){const ms=this.resolve(MailboxService);const fs=this.resolve(CloudFileService);const[mailboxes,drives]=yield Promise.all([ms.top(),fs.top()]);return{mailboxes,drives}}))}onClick(none,e){var _a;(_a=this.selected)===null||_a===void 0?void 0:_a.removeAttribute("data-selected");let start=e.target;while(start!==e.currentTarget){if(start.getAttribute("data-layout")==="menu-item"){start.setAttribute("data-selected","true");this.selected=start;break}start=start.parentElement}}});__decorate([Action({onEvent:"click"}),__metadata("design:type",Function),__metadata("design:paramtypes",[Object,MouseEvent]),__metadata("design:returntype",void 0)],AppDrawer.prototype,"onClick",null)}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/drawer/AppDrawer");System.register(["@web-atoms/core/dist/core/XNode"],(function(_export,_context){"use strict";var XNode,ModuleInfo;return{setters:[function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default}],execute:function(){_export("ModuleInfo",ModuleInfo=typeof moduleInfo==="undefined"?[]:[XNode.create("div",{title:`${moduleInfo.server.package}@${moduleInfo.server.version}`},moduleInfo.server.version),XNode.create("div",{title:`${moduleInfo.ui.package}@${moduleInfo.ui.version}`},moduleInfo.ui.version)])}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/controls/ModuleInfo");System.register(["tslib","@web-atoms/core/dist/core/InjectProperty","@web-atoms/core/dist/core/XNode","@web-atoms/core/dist/Pack","@web-atoms/web-controls/dist/desktop-app/MobileDesktopApp","@web-atoms/core/dist/core/Route","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Command","./commands/AppCommands","../style/GlobalStyle","../services/UserService","../common/pages/user/LoginPage","./drawer/AppDrawer","../services/files/LocalFileService","../common/controls/ModuleInfo"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,InjectProperty,XNode,Pack,MobileDesktopApp,Route,PageNavigator,Command,AppCommands,UserService,LoginPage,AppDrawer,LocalFileService,ModuleInfo,AppIndex;return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_webAtomsCoreDistCoreInjectProperty){InjectProperty=_webAtomsCoreDistCoreInjectProperty.default},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsCoreDistPack){Pack=_webAtomsCoreDistPack.default},function(_webAtomsWebControlsDistDesktopAppMobileDesktopApp){MobileDesktopApp=_webAtomsWebControlsDistDesktopAppMobileDesktopApp.default},function(_webAtomsCoreDistCoreRoute){Route=_webAtomsCoreDistCoreRoute.default},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreCommand){Command=_webAtomsCoreDistCoreCommand.default},function(_commandsAppCommands){AppCommands=_commandsAppCommands.default},function(_styleGlobalStyle){},function(_servicesUserService){UserService=_servicesUserService.default},function(_commonPagesUserLoginPage){LoginPage=_commonPagesUserLoginPage.default},function(_drawerAppDrawer){AppDrawer=_drawerAppDrawer.default},function(_servicesFilesLocalFileService){LocalFileService=_servicesFilesLocalFileService.default},function(_commonControlsModuleInfo){ModuleInfo=_commonControlsModuleInfo.ModuleInfo}],execute:function(){AppIndex=class AppIndex extends MobileDesktopApp{init(){return __awaiter(this,void 0,void 0,(function*(){AppCommands.install(this);this.resolve(LocalFileService);if(!(yield this.userService.getUser())){PageNavigator.openPage(LoginPage);return}this.drawerMenu=AppDrawer;if(!Command.invokeRoute()){AppCommands.openHome.dispatch()}if(this.desktopApp){this.desktopApp.statusBarRenderer=()=>XNode.create("div",{"data-layout":"row"},XNode.create("div",{"data-flex":"stretch-full"}),...ModuleInfo)}}))}};__decorate([InjectProperty,__metadata("design:type",UserService)],AppIndex.prototype,"userService",void 0);AppIndex=__decorate([Pack],AppIndex);_export("default",AppIndex);Route.encodeUrl=url=>{if(url.startsWith("#")){return url}if(/\d+\./.test(location.hostname)){return"#!"+url}return url}}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/web/AppIndex");System.register([],(function(_export,_context){"use strict";var AtomOnce;_export("AtomOnce",void 0);return{setters:[],execute:function(){_export("AtomOnce",AtomOnce=class AtomOnce{run(f){if(this.isRunning){return}let isAsync=false;try{this.isRunning=true;const p=f();if(p&&p.then&&p.catch){isAsync=true;p.then((()=>{this.isRunning=false})).catch((()=>{this.isRunning=false}))}}finally{if(!isAsync){this.isRunning=false}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/AtomOnce");System.register([],(function(_export,_context){"use strict";var StyleBuilder;function cssNumberToString(n,unit="px"){if(typeof n==="number"){if(n===0){return n+""}return n+unit}return n}_export({cssNumberToString,default:void 0});return{setters:[],execute:function(){_export("default",StyleBuilder=class StyleBuilder{static get newStyle(){return new StyleBuilder}constructor(style){this.style=style;this.style=this.style||{}}toStyle(){return this.style}size(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({width,height})}roundBorder(radius){radius=cssNumberToString(radius);return this.merge({borderRadius:radius,padding:radius})}border(borderWidth,borderColor,borderStyle="solid"){borderWidth=cssNumberToString(borderWidth);return this.merge({borderWidth,borderStyle,borderColor})}center(width,height){width=cssNumberToString(width);height=cssNumberToString(height);return this.merge({position:"absolute",left:0,right:0,top:0,bottom:0,width,height,margin:"auto"})}absolute(left,top,right,bottom){left=cssNumberToString(left);top=cssNumberToString(top);if(right!==undefined){right=cssNumberToString(right);bottom=cssNumberToString(bottom);return this.merge({position:"absolute",left,top,right,bottom})}return this.merge({position:"absolute",left,top})}merge(style){return new StyleBuilder(Object.assign(Object.assign({},this.style),style))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/StyleBuilder");System.register(["tslib","../../App","../../di/Inject","../../di/RegisterSingleton","../../services/BusyIndicatorService","../../services/NavigationService","../controls/AtomControl","../styles/StyleBuilder"],(function(_export,_context){"use strict";var __decorate,__metadata,App,Inject,RegisterSingleton,BusyIndicatorService,NavigationService,AtomControl,cssNumberToString,WebBusyIndicatorService;return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_App){App=_App.App},function(_diInject){Inject=_diInject.Inject},function(_diRegisterSingleton){RegisterSingleton=_diRegisterSingleton.RegisterSingleton},function(_servicesBusyIndicatorService){BusyIndicatorService=_servicesBusyIndicatorService.BusyIndicatorService},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_controlsAtomControl){AtomControl=_controlsAtomControl.AtomControl},function(_stylesStyleBuilder){cssNumberToString=_stylesStyleBuilder.cssNumberToString}],execute:function(){_export("WebBusyIndicatorService",WebBusyIndicatorService=class WebBusyIndicatorService extends BusyIndicatorService{constructor(){super(...arguments);this.zIndex=5e4;this.indicators=0}createIndicator(){const host=document.createElement("div");const popup=new AtomControl(this.app,host);host.className="indicator-host";const span=document.createElement("i");const divStyle=host.style;divStyle.position="absolute";divStyle.overflow="hidden";divStyle.left=divStyle.right=divStyle.bottom=divStyle.top="0";divStyle.zIndex=this.zIndex+++"";const spanStyle=span.style;spanStyle.position="absolute";spanStyle.margin="auto";spanStyle.width="16px";spanStyle.height="16px";spanStyle.overflow="hidden";spanStyle.maxHeight="100%";spanStyle.maxWidth="100%";spanStyle.left=spanStyle.right=spanStyle.bottom=spanStyle.top="0";span.className="fas fa-spinner fa-spin";host.appendChild(span);const ws=this.navigationService;const e=ws.getHostForElement();if(e){e.appendChild(host)}else{document.body.appendChild(host);ws.refreshScreen();popup.bind(host,"styleLeft",[["this","scrollLeft"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleTop",[["this","scrollTop"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleWidth",[["this","width"]],false,cssNumberToString,ws.screen);popup.bind(host,"styleHeight",[["this","height"]],false,cssNumberToString,ws.screen)}popup.registerDisposable({dispose:()=>{host.remove()}});return popup}});__decorate([Inject,__metadata("design:type",NavigationService)],WebBusyIndicatorService.prototype,"navigationService",void 0);__decorate([Inject,__metadata("design:type",App)],WebBusyIndicatorService.prototype,"app",void 0);_export("WebBusyIndicatorService",WebBusyIndicatorService=__decorate([RegisterSingleton],WebBusyIndicatorService))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/services/WebBusyIndicatorService");System.register(["tslib"],(function(_export,_context){"use strict";var __awaiter,Atom;_export("Atom",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter}],execute:function(){_export("Atom",Atom=class Atom{static superProperty(tc,target,name){let c=tc;do{c=Object.getPrototypeOf(c);if(!c){throw new Error("No property descriptor found for "+name)}const pd=Object.getOwnPropertyDescriptor(c.prototype,name);if(!pd){continue}return pd.get.apply(target)}while(true)}static get(target,path){const segments=path.split(".");for(const iterator of segments){if(target===undefined||target===null){return target}target=target[iterator]}return target}static delay(n,ct){return new Promise(((resolve,reject)=>{const h={};h.id=setTimeout((()=>{resolve()}),n);if(ct){ct.registerForCancel((()=>{clearTimeout(h.id);reject(new Error("cancelled"))}))}}))}static encodeParameters(p){if(!p){return""}let s="";for(const key in p){if(p.hasOwnProperty(key)){const element=p[key];let v=element;if(v===undefined||v===null){continue}if(v instanceof Date){v=v.toISOString()}else if(typeof element==="object"){v=JSON.stringify(element)}if(s){s+="&"}s+=`${key}=${encodeURIComponent(v)}`}}return s}static url(url,query,hash){if(!url){return url}let p=this.encodeParameters(query);if(p){if(url.indexOf("?")===-1){url+="?"}else{url+="&"}url+=p}p=this.encodeParameters(hash);if(p){if(url.indexOf("#")===-1){url+="#"}else{url+="&"}url+=p}return url}static postAsync(app,f){return new Promise(((resolve,reject)=>{app.callLater((()=>__awaiter(this,void 0,void 0,(function*(){try{resolve(yield f())}catch(error){reject(error)}}))))}))}});Atom.designMode=false}}}));AmdLoader.instance.setup("@web-atoms/core/dist/Atom");System.register([],(function(_export,_context){"use strict";var FormattedError;_export("default",void 0);return{setters:[],execute:function(){_export("default",FormattedError=class FormattedError{constructor(msg){const e=new Error(msg.toString());e.formattedMessage=msg;e.__proto__=FormattedError.prototype;return e}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/core/FormattedError");System.register([],(function(_export,_context){"use strict";function registerInit(target,fx){const t=target;const inits=t._$_inits=t._$_inits||[];inits.push(fx)}_export("registerInit",registerInit);return{setters:[],execute:function(){}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/baseTypes");System.register(["tslib","../App","../Atom","../core/AtomBinder","../core/AtomDisposableList","../core/AtomWatcher","../core/BindableProperty","../di/Inject","./baseTypes"],(function(_export,_context){"use strict";var __awaiter,__decorate,__metadata,__param,App,Atom,AtomBinder,AtomDisposableList,AtomWatcher,BindableProperty,Inject,registerInit,AtomViewModel;function runDecoratorInits(){const v=this.constructor.prototype;if(!v){return}const ris=v._$_inits;if(ris){for(const ri of ris){ri.call(this,this)}}}function privateInit(){return __awaiter(this,void 0,void 0,(function*(){try{yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){runDecoratorInits.apply(this)}))));yield Atom.postAsync(this.app,(()=>__awaiter(this,void 0,void 0,(function*(){yield this.init();this.onReady()}))));if(this.postInit){for(const i of this.postInit){i()}this.postInit=null}}finally{const pi=this.pendingInits;this.pendingInits=null;for(const iterator of pi){iterator()}}}))}function waitForReady(vm){return __awaiter(this,void 0,void 0,(function*(){while(vm.pendingInits){yield Atom.delay(100)}}))}function Receive(...channel){return(target,key)=>{registerInit(target,(vm=>{const fx=vm[key];const a=(ch,d)=>{const p=fx.call(vm,ch,d);if(p&&p.then&&p.catch){p.catch((e=>{console.warn(e)}))}};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,a))}}))}}function BindableReceive(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=(cx,m)=>{vm[key]=m};const ivm=vm;for(const c of channel){ivm.registerDisposable(ivm.app.subscribe(c,fx))}}));return bp}}function BindableBroadcast(...channel){return(target,key)=>{const bp=BindableProperty(target,key);registerInit(target,(vm=>{const fx=t=>{const v=vm[key];for(const c of channel){vm.app.broadcast(c,v)}};const d=new AtomWatcher(vm,[key.split(".")],fx);d.init();vm.registerDisposable(d)}));return bp}}function Watch(target,key,descriptor){registerInit(target,(vm=>{const ivm=vm;if(descriptor&&descriptor.get){ivm.setupWatch(descriptor.get,(()=>{vm.refresh(key.toString())}));return}ivm.setupWatch(vm[key])}))}function CachedWatch(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const ivm=vm;const fieldName=`_${key}`;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){const c=ivm[fieldName]||(ivm[fieldName]={value:getMethod.apply(ivm)});return c.value}});ivm.setupWatch(getMethod,(()=>{ivm[fieldName]=null;AtomBinder.refreshValue(ivm,key)}))}))}function Validate(target,key,descriptor){const getMethod=descriptor.get;descriptor.get=()=>null;registerInit(target,(vm=>{const initialized={i:false};const ivm=vm;Object.defineProperty(ivm,key,{enumerable:true,configurable:true,get(){if(vm.mShouldValidate&&initialized.i){return getMethod.apply(this)}return null}});ivm.setupWatch(getMethod,(()=>{initialized.i=true;vm.refresh(key.toString())}),true,key.toString());return}))}_export({waitForReady,Receive,BindableReceive,BindableBroadcast,Watch,CachedWatch,Validate});return{setters:[function(_tslib){__awaiter=_tslib.__awaiter;__decorate=_tslib.__decorate;__metadata=_tslib.__metadata;__param=_tslib.__param},function(_App){App=_App.App},function(_Atom){Atom=_Atom.Atom},function(_coreAtomBinder){AtomBinder=_coreAtomBinder.AtomBinder},function(_coreAtomDisposableList){AtomDisposableList=_coreAtomDisposableList.AtomDisposableList},function(_coreAtomWatcher){AtomWatcher=_coreAtomWatcher.AtomWatcher},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_diInject){Inject=_diInject.Inject},function(_baseTypes){registerInit=_baseTypes.registerInit}],execute:function(){_export("AtomViewModel",AtomViewModel=class AtomViewModel{get isReady(){return this.pendingInits===null}get errors(){const e=[];if(!this.mShouldValidate){return e}for(const v of this.validations){if(!v.initialized){return e}const error=this[v.name];if(error){e.push({name:v.name,error})}}return e}get parent(){return this.mParent}set parent(v){if(this.mParent&&this.mParent.mChildren){this.mParent.mChildren.remove(this)}this.mParent=v;if(v){const c=v.mChildren||(v.mChildren=[]);c.add(this);this.registerDisposable({dispose:()=>{c.remove(this)}})}}get isValid(){let valid=true;const validateWasFalse=this.mShouldValidate===false;this.mShouldValidate=true;for(const v of this.validations){if(!v.initialized){v.watcher.init(true);v.initialized=true}if(this[v.name]){if(validateWasFalse){AtomBinder.refreshValue(this,v.name)}valid=false}}if(this.mChildren){for(const child of this.mChildren){if(!child.isValid){valid=false}}}AtomBinder.refreshValue(this,"errors");return valid}constructor(app){this.app=app;this.disposables=null;this.validations=[];this.pendingInits=[];this.mShouldValidate=false;this.app.runAsync((()=>privateInit.apply(this)))}resetValidations(resetChildren=true){this.mShouldValidate=false;for(const v of this.validations){this.refresh(v.name)}if(resetChildren&&this.mChildren){for(const iterator of this.mChildren){iterator.resetValidations(resetChildren)}}}runAfterInit(f){if(this.pendingInits){this.pendingInits.push(f);return}f()}refresh(name){AtomBinder.refreshValue(this,name)}init(){return __awaiter(this,void 0,void 0,(function*(){}))}dispose(){if(this.disposables){this.disposables.dispose()}}registerDisposable(d){this.disposables=this.disposables||new AtomDisposableList;return this.disposables.add(d)}onReady(){}setupWatch(ft,proxy,forValidation,name){const d=new AtomWatcher(this,ft,proxy,this);if(forValidation){this.validations=this.validations||[];this.validations.push({name,watcher:d,initialized:false})}else{d.init()}return this.registerDisposable(d)}onPropertyChanged(name){}});_export("AtomViewModel",AtomViewModel=__decorate([__param(0,Inject),__metadata("design:paramtypes",[App])],AtomViewModel))}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomViewModel");System.register(["tslib","../services/NavigationService","./AtomViewModel"],(function(_export,_context){"use strict";var __awaiter,NavigationService,AtomViewModel,AtomWindowViewModel;_export("AtomWindowViewModel",void 0);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_servicesNavigationService){NavigationService=_servicesNavigationService.NavigationService},function(_AtomViewModel){AtomViewModel=_AtomViewModel.AtomViewModel}],execute:function(){_export("AtomWindowViewModel",AtomWindowViewModel=class AtomWindowViewModel extends AtomViewModel{close(result){this.app.broadcast(`atom-window-close:${this.windowName}`,result)}cancel(){return __awaiter(this,void 0,void 0,(function*(){if(this.closeWarning){const navigationService=this.app.resolve(NavigationService);if(!(yield navigationService.confirm(this.closeWarning,"Are you sure?"))){return false}}this.app.broadcast(`atom-window-cancel:${this.windowName}`,"cancelled");return true}))}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/view-model/AtomWindowViewModel");System.register(["@web-atoms/core/src/web/images/close-button-hover.svg","../styles/AtomStyle"],(function(_export,_context){"use strict";var closeButtonHover,AtomStyle,AtomWindowStyle;_export("AtomWindowStyle",void 0);return{setters:[function(_webAtomsCoreSrcWebImagesCloseButtonHoverSvg){closeButtonHover=_webAtomsCoreSrcWebImagesCloseButtonHoverSvg.default},function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomWindowStyle",AtomWindowStyle=class AtomWindowStyle extends AtomStyle{get root(){return Object.assign(Object.assign({},this.frameHost),{subclasses:{" .close-button":this.closeButton," .command-bar-presenter":this.commandBarPresenter," .command-bar":this.commandBar," .content-presenter":this.contentPresenter," .content":this.content," .frame":this.frame," .title":this.title," .title-host":this.titleHost," .title-presenter":this.titlePresenter}})}get frameHost(){return{position:"absolute",left:0,right:0,top:0,bottom:0,backgroundColor:"#50505080"}}get frame(){return{position:"absolute",minHeight:"100px",minWidth:"300px",margin:"auto",border:"solid 1px #808080",borderRadius:"5px",backgroundColor:"white"}}get titlePresenter(){return{position:"relative",left:0,right:0,top:0,height:"37px"}}get titleHost(){return{position:"absolute",left:0,right:0,padding:"7px",minHeight:"32px",backgroundColor:"#404040",color:"white",top:0,borderTopRightRadius:"4px",borderTopLeftRadius:"4px"}}get title(){return{margin:"auto"}}get closeButton(){return{position:"absolute",right:"6px",top:"7px",width:"0",height:"0",padding:"9px",border:"none",backgroundColor:"transparent",backgroundImage:closeButtonHover}}get content(){return{}}get contentPresenter(){return{position:"relative",padding:"10px",background:"white"}}get commandBarPresenter(){return{left:0,right:0,bottom:0,padding:"5px",backgroundColor:"#d4d4d4",textAlign:"right",borderBottomRightRadius:"4px",borderBottomLeftRadius:"4px"}}get commandBar(){return{subclasses:{" button":{borderRadius:"3px",marginLeft:"5px",marginRight:"5px",padding:"4px 16px",backgroundColor:"whitesmoke",border:"1px solid gray"}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomWindowStyle");System.register(["../../core/Colors","./AtomWindowStyle"],(function(_export,_context){"use strict";var Colors,AtomWindowStyle,AtomAlertWindowStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomWindowStyle){AtomWindowStyle=_AtomWindowStyle.AtomWindowStyle}],execute:function(){_export("default",AtomAlertWindowStyle=class AtomAlertWindowStyle extends AtomWindowStyle{get titleHost(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"titleHost")),{color:Colors.black,backgroundColor:Colors.white})}get contentPresenter(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"contentPresenter")),{padding:"0px 10px 30px 10px",textAlign:"center",color:Colors.rgba(51,51,51)})}get commandBar(){return Object.assign(Object.assign({},this.getBaseProperty(AtomAlertWindowStyle,"commandBar")),{textAlign:"center",subclasses:{" button":this.buttonStyle," .yes-button":{backgroundColor:Colors.rgba(0,128,0)}," .no-button":{backgroundColor:Colors.rgba(255,0,0)}}})}get buttonStyle(){return{border:"none",color:Colors.white,width:"50%",height:"40px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomAlertWindowStyle");System.register(["./AtomControl"],(function(_export,_context){"use strict";var AtomControl,AtomTemplate;_export("AtomTemplate",void 0);return{setters:[function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("AtomTemplate",AtomTemplate=class AtomTemplate extends AtomControl{})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomTemplate");System.register(["../../App","../../core/Bind","../../core/XNode","../styles/AtomWindowStyle","./AtomControl","./AtomTemplate"],(function(_export,_context){"use strict";var App,Bind,XNode,AtomWindowStyle,AtomControl,AtomTemplate,AtomWindowFrameTemplate,AtomWindowTitleTemplate,AtomWindow;function getTemplateParent(e){const tp=e._templateParent;if(tp){return tp}const p=e._logicalParent||e.parentElement;if(p){return getTemplateParent(p)}}_export({getTemplateParent,AtomWindowFrameTemplate:void 0,AtomWindow:void 0});return{setters:[function(_App){App=_App.App},function(_coreBind){Bind=_coreBind.default},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomWindowStyle){AtomWindowStyle=_stylesAtomWindowStyle.AtomWindowStyle},function(_AtomControl){AtomControl=_AtomControl.AtomControl},function(_AtomTemplate){AtomTemplate=_AtomTemplate.AtomTemplate}],execute:function(){_export("AtomWindowFrameTemplate",AtomWindowFrameTemplate=class AtomWindowFrameTemplate extends AtomTemplate{get templateParent(){return getTemplateParent(this.element)}preCreate(){this.titlePresenter=null;this.commandPresenter=null;this.contentPresenter=null;super.preCreate()}create(){this.render(XNode.create("div",{class:"frame",styleWidth:Bind.oneWay((()=>this.templateParent.width||undefined)),styleHeight:Bind.oneWay((()=>this.templateParent.height||undefined)),styleLeft:Bind.oneWay((()=>this.templateParent.x>=0?`${this.templateParent.x}px`:undefined)),styleTop:Bind.oneWay((()=>this.templateParent.y>=0?`${this.templateParent.y}px`:undefined)),styleMarginTop:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginLeft:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginRight:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined)),styleMarginBottom:Bind.oneWay((()=>this.templateParent.x>=0?"0":undefined))},XNode.create("div",{class:"title-presenter",presenter:Bind.presenter("titlePresenter")}),XNode.create("div",{class:"content-presenter",presenter:Bind.presenter("contentPresenter")}),XNode.create("div",{class:"command-bar-presenter",presenter:Bind.presenter("commandPresenter")})))}});AtomWindowTitleTemplate=class AtomWindowTitleTemplate extends AtomControl{get templateParent(){return getTemplateParent(this.element)}create(){this.render(XNode.create("div",{class:"title-host"},XNode.create("span",{class:"title",text:Bind.oneWay((()=>this.templateParent.title))}),XNode.create("button",{class:"close-button",eventClick:Bind.event((()=>this.templateParent.close()))})))}};_export("AtomWindow",AtomWindow=class AtomWindow extends AtomControl{constructor(){super(...arguments);this.title="";this.width="";this.height="";this.x=-1;this.y=-1;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;this.isReady=false}get templateParent(){return getTemplateParent(this.element)}onPropertyChanged(name){switch(name){case"windowTemplate":case"commandTemplate":case"frameTemplate":this.invalidate();break}}close(){const vm=this.viewModel;if(vm.cancel){this.app.runAsync((()=>vm.cancel()));return}const message=`atom-window-cancel:${this.id}`;const device=this.app.resolve(App);device.broadcast(message,"cancelled")}onUpdateUI(){if(!(this.windowTemplate&&this.frameTemplate)){return}if(this.isReady){return}this.bind(this.element,"title",[["viewModel","title"]]);const frame=new this.frameTemplate(this.app);const fe=frame.element;const titleContent=new this.titleTemplate(this.app);titleContent.element._templateParent=this;frame.titlePresenter.appendChild(titleContent.element);this.setupDragging(frame.titlePresenter);this.element.classList.add("frame-host");fe._logicalParent=this.element;fe._templateParent=this;if(!frame.contentPresenter){throw new Error("ContentPresenter must be set inside frameTemplate before creating window")}const content=new this.windowTemplate(this.app);content.element._templateParent=this;this.setElementClass(content.element,{content:1});frame.contentPresenter.appendChild(content.element);if(this.commandTemplate){if(!frame.commandPresenter){throw new Error("CommandPresenter must be set inside frameTemplate"+"before creating window if command template is present")}const command=new this.commandTemplate(this.app);command.element._templateParent=this;this.setElementClass(command.element,{"command-bar":1});frame.commandPresenter.appendChild(command.element)}this.append(frame);setTimeout((()=>{this.centerFrame(frame.element)}),100);this.isReady=true}preCreate(){this.defaultControlStyle=AtomWindowStyle;this.title=null;this.width="";this.height="";this.x=-1;this.y=-1;this.windowTemplate=null;this.commandTemplate=null;this.titleTemplate=AtomWindowTitleTemplate;this.frameTemplate=AtomWindowFrameTemplate;super.preCreate();this.render(XNode.create("div",{styleClass:Bind.oneTime((()=>this.controlStyle.name))}))}centerFrame(e){if(!this.element){return}const parent=this.element.parentElement;if(parent===window||parent===document.body){return}if(parent.offsetWidth<=0||parent.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}if(e.offsetWidth<=0||e.offsetHeight<=0){setTimeout((()=>{this.centerFrame(e)}),100);return}const x=(parent.offsetWidth-e.offsetWidth)/2;const y=(parent.offsetHeight-e.offsetHeight)/2;this.x=x;this.y=y;e.style.opacity="1";this.element.style.removeProperty("opacity")}setupDragging(tp){this.bindEvent(tp,"mousedown",(startEvent=>{startEvent.preventDefault();const disposables=[];const offset={x:tp.parentElement.offsetLeft,y:tp.parentElement.offsetTop};const rect={x:startEvent.clientX,y:startEvent.clientY};const cursor=tp.style.cursor;tp.style.cursor="move";disposables.push(this.bindEvent(document.body,"mousemove",(moveEvent=>{const{clientX,clientY}=moveEvent;const dx=clientX-rect.x;const dy=clientY-rect.y;offset.x+=dx;offset.y+=dy;this.x=offset.x;this.y=offset.y;rect.x=clientX;rect.y=clientY})));disposables.push(this.bindEvent(document.body,"mouseup",(endEvent=>{tp.style.cursor=cursor;for(const iterator of disposables){iterator.dispose()}})))}))}});AtomWindow.windowTemplate=XNode.prepare("windowTemplate",true,true);AtomWindow.commandTemplate=XNode.prepare("commandTemplate",true,true);AtomWindow.titleTemplate=XNode.prepare("titleTemplate",true,true);AtomWindow.frameTemplate=XNode.prepare("frameTemplate",true,true)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomWindow");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../../view-model/AtomWindowViewModel","../styles/AtomAlertWindowStyle","./AtomWindow"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomWindowViewModel,AtomAlertWindowStyle,AtomWindow,AtomAlertWindow,AtomAlertViewModel;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_viewModelAtomWindowViewModel){AtomWindowViewModel=_viewModelAtomWindowViewModel.AtomWindowViewModel},function(_stylesAtomAlertWindowStyle){AtomAlertWindowStyle=_stylesAtomAlertWindowStyle.default},function(_AtomWindow){AtomWindow=_AtomWindow.AtomWindow}],execute:function(){_export("default",AtomAlertWindow=class AtomAlertWindow extends AtomWindow{create(){this.defaultControlStyle=AtomAlertWindowStyle;this.viewModel=this.resolve(AtomAlertViewModel);this.render(XNode.create(AtomWindow,{title:Bind.oneWay((()=>this.viewModel.title))},XNode.create(AtomWindow.windowTemplate,null,XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message))})),XNode.create(AtomWindow.commandTemplate,null,XNode.create("div",null,XNode.create("button",{class:"yes-button",styleDisplay:Bind.oneWay((()=>this.viewModel.okTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.okTitle)),eventClick:()=>this.viewModel.onOkClicked()}),XNode.create("button",{class:"no-button",styleMarginBottom:Bind.oneWay((()=>this.viewModel.cancelTitle?"0":"10px")),styleDisplay:Bind.oneWay((()=>this.viewModel.cancelTitle?"":"none")),text:Bind.oneWay((()=>this.viewModel.cancelTitle)),eventClick:()=>this.viewModel.onCancelClicked()})))))}});AtomAlertViewModel=class AtomAlertViewModel extends AtomWindowViewModel{onOkClicked(){this.close(true)}onCancelClicked(){this.cancel()}};__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"title",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"message",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"okTitle",void 0);__decorate([BindableProperty,__metadata("design:type",String)],AtomAlertViewModel.prototype,"cancelTitle",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomAlertWindow");System.register(["../../core/Colors","./AtomStyle"],(function(_export,_context){"use strict";var Colors,AtomStyle,AtomNotificationStyle;_export("default",void 0);return{setters:[function(_coreColors){Colors=_coreColors.default},function(_AtomStyle){AtomStyle=_AtomStyle.AtomStyle}],execute:function(){_export("default",AtomNotificationStyle=class AtomNotificationStyle extends AtomStyle{get root(){return{padding:"5px",borderRadius:"5px",border:"solid 1px lightgray",fontFamily:"Verdana, Geneva, sans-serif",fontSize:"16px",subclasses:{".error":{borderColor:Colors.red,color:Colors.red},".warning":{backgroundColor:Colors.lightYellow}}}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomNotificationStyle");System.register(["tslib","../../core/Bind","../../core/BindableProperty","../../core/XNode","../styles/AtomNotificationStyle","./AtomControl"],(function(_export,_context){"use strict";var __decorate,__metadata,Bind,BindableProperty,XNode,AtomNotificationStyle,AtomControl,AtomNotification;_export("default",void 0);return{setters:[function(_tslib){__decorate=_tslib.__decorate;__metadata=_tslib.__metadata},function(_coreBind){Bind=_coreBind.default},function(_coreBindableProperty){BindableProperty=_coreBindableProperty.BindableProperty},function(_coreXNode){XNode=_coreXNode.default},function(_stylesAtomNotificationStyle){AtomNotificationStyle=_stylesAtomNotificationStyle.default},function(_AtomControl){AtomControl=_AtomControl.AtomControl}],execute:function(){_export("default",AtomNotification=class AtomNotification extends AtomControl{constructor(){super(...arguments);this.timeout=5e3;this.timeoutKey=null}onPropertyChanged(name){switch(name){case"timeout":this.setupTimeout();break}}create(){this.defaultControlStyle=AtomNotificationStyle;this.render(XNode.create("div",{formattedText:Bind.oneWay((()=>this.viewModel.message)),timeout:Bind.oneWay((()=>this.viewModel.timeout||5e3)),styleClass:Bind.oneWay((()=>({[this.controlStyle.name]:1,error:this.viewModel.type&&/error/i.test(this.viewModel.type),warning:this.viewModel.type&&/warn/i.test(this.viewModel.type)})))}))}setupTimeout(){if(this.timeoutKey){clearTimeout(this.timeoutKey)}this.timeoutKey=setTimeout((()=>{if(this.element){this.app.broadcast(`atom-window-close:${this.id}`,"")}}),this.timeout)}});__decorate([BindableProperty,__metadata("design:type",Number)],AtomNotification.prototype,"timeout",void 0)}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/controls/AtomNotification");System.register(["../styles/AtomStyle"],(function(_export,_context){"use strict";var AtomStyle,AtomPopupStyle;_export("AtomPopupStyle",void 0);return{setters:[function(_stylesAtomStyle){AtomStyle=_stylesAtomStyle.AtomStyle}],execute:function(){_export("AtomPopupStyle",AtomPopupStyle=class AtomPopupStyle extends AtomStyle{get root(){return{backgroundColor:"white",border:"solid 1px lightgray",padding:"5px",borderRadius:"5px"}}})}}}));AmdLoader.instance.setup("@web-atoms/core/dist/web/styles/AtomPopupStyle");System.register(["../../core/XNode","../../style/styled","./PopupService"],(function(_export,_context){"use strict";var XNode,styled,PopupWindow,css;function NotificationPopup({message,type}){return class Notification extends PopupWindow{create(){if(message instanceof XNode){this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)}},message));return}this.render(XNode.create("div",{styleClass:{[css]:1,error:/error/i.test(type),warning:/warn/i.test(type)},formattedText:message}))}}}_export("default",NotificationPopup);return{setters:[function(_coreXNode){XNode=_coreXNode.default},function(_styleStyled){styled=_styleStyled.default},function(_PopupService){PopupWindow=_PopupService.PopupWindow}],execute:function(){css=styled.css`
2056
2056
  padding: 5px;
2057
2057
  font-size: larger;
2058
2058
  & .error {