@social-mail/social-mail-client 1.2.611 → 1.2.613

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.
@@ -1332,7 +1332,7 @@ html, body {
1332
1332
  }
1333
1333
  }
1334
1334
  }
1335
- `.installGlobal("[data-page-type=master-detail]");findItem=(content,item)=>{var _a,_b,_c;for(const iterator of descendentElementIterator(content)){const repeater=iterator===null||iterator===void 0?void 0:iterator.atomControl;if(!(repeater instanceof AtomRepeater)){continue}const index=(_b=(_a=repeater.items)===null||_a===void 0?void 0:_a.indexOf(item))!==null&&_b!==void 0?_b:-1;if(index===-1){continue}const element=(_c=repeater.element)===null||_c===void 0?void 0:_c.querySelector(`[data-item-index="${index}"]`);if(element){return element}}};_export("default",MasterDetailPage=class MasterDetailPage extends ContentPage{constructor(){super(...arguments);this.showClose=true;this.scrollEveryNewTarget=false;this.lookupItemForHighlight=true;this.highlightAttributeValue=["data-filter","drop-shadow-accent"]}get highlightAttribute(){return this.highlightAttributeValue}set highlightAttribute(value){var _a;if(!value){this.highlightAttributeValue=["data-filter","drop-shadow-accent"];return}if(typeof value==="string"){const tokens=value.split("=");let key=tokens[0];let v=(_a=tokens[1])!==null&&_a!==void 0?_a:"true";if(v.endsWith("]")){v=v.substring(0,v.length-1)}if(key.startsWith("[")){key=key.substring(1)}value=[key,v]}this.highlightAttributeValue=value}openDetail(page,parameters,highlightElementOrItem){if(isMobileView){PageNavigator.pushPage(page,parameters);return}const content=this.element.querySelector(`[data-page-element="content"]`);content.setAttribute("data-mode","desktop");let highlightElement;if(highlightElementOrItem instanceof HTMLElement){highlightElement=highlightElementOrItem}if(!highlightElement&&this.lookupItemForHighlight){highlightElement=findItem(content,highlightElementOrItem)}const lastTargetElement=this.lastTargetElement;if(lastTargetElement){const[key]=this.highlightAttributeValue;lastTargetElement.removeAttribute(key)}this.lastTargetElement=highlightElement;if(!this.closeButton&&this.showClose){const closeButton=document.createElement("i");closeButton.setAttribute("data-element","close");closeButton.className="fas fa-times-circle";this.closeButton=closeButton;content.appendChild(closeButton);closeButton.addEventListener("click",(()=>this.closeDetail()))}let lastDetail=this.lastDetail;if(lastDetail){const{element}=lastDetail;lastDetail.dispose();element.remove();if(this.scrollEveryNewTarget){this.scrollTargetIntoView()}}else{this.scrollTargetIntoView()}this.updateTargetSelector(highlightElement);const P=page;lastDetail=new P(this.app);content.appendChild(lastDetail.element);lastDetail.element.setAttribute("data-element","detail");this.lastDetail=lastDetail;lastDetail.parameters=parameters;const close=()=>this.closeDetail();lastDetail.cancel=close;lastDetail.close=close;this.app.runAsync((()=>{var _a,_b;return(_b=(_a=this.lastDetail)===null||_a===void 0?void 0:_a.init)===null||_b===void 0?void 0:_b.call(_a)}))}scrollTargetIntoView(dispose=false){const lastTargetElement=this.lastTargetElement;if(lastTargetElement){setTimeout((()=>{if(lastTargetElement.isConnected){lastTargetElement.scrollIntoView()}if(dispose){this.lastTargetElement=void 0;this.updateTargetSelector(lastTargetElement,true,dispose)}}),100)}}updateTargetSelector(lastTargetElement,remove=false,delay=false){if(!lastTargetElement){return}const[key,value]=this.highlightAttributeValue;if(remove){if(delay){setTimeout((()=>{lastTargetElement.removeAttribute(key)}),1e3)}else{lastTargetElement.removeAttribute(key)}return}lastTargetElement.setAttribute(key,value)}preCreate(){super.preCreate();this.element.setAttribute("data-page-type","master-detail")}closeDetail(){const lastDetail=this.lastDetail;if(lastDetail){const{element}=lastDetail;lastDetail.dispose();element.remove();this.lastDetail=void 0}const closeButton=this.closeButton;if(closeButton){closeButton.remove();this.closeButton=void 0}const content=this.element.querySelector(`[data-page-element="content"]`);content.removeAttribute("data-mode");this.scrollTargetIntoView(true)}})}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/mobile-app/MasterDetailPage");System.register([],(function(_export,_context){"use strict";var k,m,b,kb,mb,gb,tb,pb,toCompactFixed,toKMBString,toFileSize,formatNumber;return{setters:[],execute:function(){k=1e3;m=k*k;b=m*k;kb=1024;mb=kb*kb;gb=mb*kb;tb=gb*kb;pb=tb*kb;_export("toCompactFixed",toCompactFixed=(n,decimals)=>{let text=n.toFixed(decimals);if(decimals>0){while(text.endsWith("0")){text=text.substring(0,text.length-1)}if(text.endsWith(".")){text=text.substring(0,text.length-1)}}return text});_export("toKMBString",toKMBString=(n,decimals=0,def="")=>{if(!n){return def+""}if(n>=b){return toCompactFixed(n/b,decimals)+"B"}if(n>=m){return toCompactFixed(n/m,decimals)+"M"}if(n>=k){return toCompactFixed(n/k,decimals)+"K"}return toCompactFixed(n,0)});_export("toFileSize",toFileSize=(n,decimals=0,def="")=>{n=Number(n);if(n===0){return"0 B"}if(!n){return def+""}if(n>=pb){return toCompactFixed(n/pb,decimals)+" PB"}if(n>=tb){return toCompactFixed(n/tb,decimals)+" TB"}if(n>=gb){return toCompactFixed(n/gb,decimals)+" GB"}if(n>=mb){return toCompactFixed(n/mb,decimals)+" MB"}if(n>=kb){return toCompactFixed(n/kb,decimals)+" KB"}return toCompactFixed(n,0)});_export("formatNumber",formatNumber=(n,{prefix="",suffix="",def="",numberToText=toKMBString}={})=>{if(!n){return def}const text=numberToText(n);return prefix+text+suffix})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/NumberFormats");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/basic/Expander","../buttons/IconButton","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/web/services/PopupService","../../../services/EntityService","@web-atoms/core/dist/style/styled","../../../model/model"],(function(_export,_context){"use strict";var __awaiter,XNode,AtomRepeater,Expander,AddIconTextButton,DeleteIconButton,PageNavigator,Bind,PopupService,EntityService,styled,modelEntitySchemas,hasKeys;function CollectionEditor({model,collection,addPage,pageResultToItem,addItemDefaults,itemFactory,editPage,label,itemRenderer,autoFocus=false}){var _a;let repeater;const items=(_a=model[collection])!==null&&_a!==void 0?_a:model[collection]=[];const schema=modelEntitySchemas[model.$type];const relation=schema.schema.relations.find((x=>x.name===collection));itemFactory!==null&&itemFactory!==void 0?itemFactory:itemFactory=()=>relation.relatedModel.create(addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{});const onAddItem=()=>__awaiter(this,void 0,void 0,(function*(){const es=repeater.app.resolve(EntityService);let newItem;if(addPage){const result=yield PageNavigator.pushPageForResult(addPage,addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{});newItem=pageResultToItem?pageResultToItem(result):result}else{newItem=itemFactory===null||itemFactory===void 0?void 0:itemFactory()}if(!newItem){return}if(newItem===null||newItem===void 0?void 0:newItem.then){newItem=yield newItem}if(hasKeys(model,schema)){const draft=Object.assign(Object.assign({},model),{[collection]:[newItem]});let clone=es.cloner(draft);clone=clone.include((x=>x[collection]));yield es.save(clone.copy)}repeater.items.add(newItem)}));const deleteItem=item=>__awaiter(this,void 0,void 0,(function*(){if(!(yield PopupService.confirm({message:"Are you sure you want to delete this?",title:"Confirm"}))){return}if(typeof item.$deleted==="undefined"){items.remove(item);return}item.$deleted=true;const es=repeater.app.resolve(EntityService);const copy=es.cloner(item).copy;yield es.save(copy);items.remove(item)}));return XNode.create(Expander,{"data-collection-editor":"editor",isExpanded:true},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:label})),XNode.create("div",null,XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>repeater=c)),"data-layout":"data-grid","event-delete-collection-item":ce=>deleteItem(ce.detail),items,footer:true,itemRenderer:item=>{const node=itemRenderer(item);node.children.push(XNode.create("span",null,XNode.create(DeleteIconButton,{"data-click-event":"delete-collection-item"})));return node}}),XNode.create("div",null,XNode.create(AddIconTextButton,{"event-click":onAddItem,text:"Add New"}))))}_export("default",CollectionEditor);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistBasicExpander){Expander=_webAtomsWebControlsDistBasicExpander.default},function(_buttonsIconButton){AddIconTextButton=_buttonsIconButton.AddIconTextButton;DeleteIconButton=_buttonsIconButton.DeleteIconButton},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_modelModel){modelEntitySchemas=_modelModel.modelEntitySchemas}],execute:function(){styled.css`
1335
+ `.installGlobal("[data-page-type=master-detail]");findItem=(content,item)=>{var _a,_b,_c;for(const iterator of descendentElementIterator(content)){const repeater=iterator===null||iterator===void 0?void 0:iterator.atomControl;if(!(repeater instanceof AtomRepeater)){continue}const index=(_b=(_a=repeater.items)===null||_a===void 0?void 0:_a.indexOf(item))!==null&&_b!==void 0?_b:-1;if(index===-1){continue}const element=(_c=repeater.element)===null||_c===void 0?void 0:_c.querySelector(`[data-item-index="${index}"]`);if(element){return element}}};_export("default",MasterDetailPage=class MasterDetailPage extends ContentPage{constructor(){super(...arguments);this.showClose=true;this.scrollEveryNewTarget=false;this.lookupItemForHighlight=true;this.highlightAttributeValue=["data-filter","drop-shadow-accent"]}get highlightAttribute(){return this.highlightAttributeValue}set highlightAttribute(value){var _a;if(!value){this.highlightAttributeValue=["data-filter","drop-shadow-accent"];return}if(typeof value==="string"){const tokens=value.split("=");let key=tokens[0];let v=(_a=tokens[1])!==null&&_a!==void 0?_a:"true";if(v.endsWith("]")){v=v.substring(0,v.length-1)}if(key.startsWith("[")){key=key.substring(1)}value=[key,v]}this.highlightAttributeValue=value}openDetail(page,parameters,highlightElementOrItem){if(isMobileView){PageNavigator.pushPage(page,parameters);return}const content=this.element.querySelector(`[data-page-element="content"]`);content.setAttribute("data-mode","desktop");let highlightElement;if(highlightElementOrItem instanceof HTMLElement){highlightElement=highlightElementOrItem}if(!highlightElement&&this.lookupItemForHighlight){highlightElement=findItem(content,highlightElementOrItem)}const lastTargetElement=this.lastTargetElement;if(lastTargetElement){const[key]=this.highlightAttributeValue;lastTargetElement.removeAttribute(key)}this.lastTargetElement=highlightElement;if(!this.closeButton&&this.showClose){const closeButton=document.createElement("i");closeButton.setAttribute("data-element","close");closeButton.className="fas fa-times-circle";this.closeButton=closeButton;content.appendChild(closeButton);closeButton.addEventListener("click",(()=>this.closeDetail()))}let lastDetail=this.lastDetail;if(lastDetail){const{element}=lastDetail;lastDetail.dispose();element.remove();if(this.scrollEveryNewTarget){this.scrollTargetIntoView()}}else{this.scrollTargetIntoView()}this.updateTargetSelector(highlightElement);const P=page;lastDetail=new P(this.app);content.appendChild(lastDetail.element);lastDetail.element.setAttribute("data-element","detail");this.lastDetail=lastDetail;lastDetail.parameters=parameters;const close=()=>this.closeDetail();lastDetail.cancel=close;lastDetail.close=close;this.app.runAsync((()=>{var _a,_b;return(_b=(_a=this.lastDetail)===null||_a===void 0?void 0:_a.init)===null||_b===void 0?void 0:_b.call(_a)}))}scrollTargetIntoView(dispose=false){const lastTargetElement=this.lastTargetElement;if(lastTargetElement){setTimeout((()=>{if(lastTargetElement.isConnected){lastTargetElement.scrollIntoView()}if(dispose){this.lastTargetElement=void 0;this.updateTargetSelector(lastTargetElement,true,dispose)}}),100)}}updateTargetSelector(lastTargetElement,remove=false,delay=false){if(!lastTargetElement){return}const[key,value]=this.highlightAttributeValue;if(remove){if(delay){setTimeout((()=>{lastTargetElement.removeAttribute(key)}),1e3)}else{lastTargetElement.removeAttribute(key)}return}lastTargetElement.setAttribute(key,value)}preCreate(){super.preCreate();this.element.setAttribute("data-page-type","master-detail")}closeDetail(){const lastDetail=this.lastDetail;if(lastDetail){const{element}=lastDetail;lastDetail.dispose();element.remove();this.lastDetail=void 0}const closeButton=this.closeButton;if(closeButton){closeButton.remove();this.closeButton=void 0}const content=this.element.querySelector(`[data-page-element="content"]`);content.removeAttribute("data-mode");this.scrollTargetIntoView(true)}})}}}));AmdLoader.instance.setup("@web-atoms/web-controls/dist/mobile-app/MasterDetailPage");System.register([],(function(_export,_context){"use strict";var k,m,b,kb,mb,gb,tb,pb,toCompactFixed,toKMBString,toFileSize,formatNumber;return{setters:[],execute:function(){k=1e3;m=k*k;b=m*k;kb=1024;mb=kb*kb;gb=mb*kb;tb=gb*kb;pb=tb*kb;_export("toCompactFixed",toCompactFixed=(n,decimals)=>{let text=n.toFixed(decimals);if(decimals>0){while(text.endsWith("0")){text=text.substring(0,text.length-1)}if(text.endsWith(".")){text=text.substring(0,text.length-1)}}return text});_export("toKMBString",toKMBString=(n,decimals=0,def="")=>{if(!n){return def+""}if(typeof n==="string"){n=Number(n)}if(n>=b){return toCompactFixed(n/b,decimals)+"B"}if(n>=m){return toCompactFixed(n/m,decimals)+"M"}if(n>=k){return toCompactFixed(n/k,decimals)+"K"}return toCompactFixed(n,0)});_export("toFileSize",toFileSize=(n,decimals=0,def="")=>{n=Number(n);if(n===0){return"0 B"}if(!n){return def+""}if(n>=pb){return toCompactFixed(n/pb,decimals)+" PB"}if(n>=tb){return toCompactFixed(n/tb,decimals)+" TB"}if(n>=gb){return toCompactFixed(n/gb,decimals)+" GB"}if(n>=mb){return toCompactFixed(n/mb,decimals)+" MB"}if(n>=kb){return toCompactFixed(n/kb,decimals)+" KB"}return toCompactFixed(n,0)});_export("formatNumber",formatNumber=(n,{prefix="",suffix="",def="",numberToText=toKMBString}={})=>{if(!n){return def}const text=numberToText(n);return prefix+text+suffix})}}}));AmdLoader.instance.setup("@social-mail/social-mail-client/dist/common/NumberFormats");System.register(["tslib","@web-atoms/core/dist/core/XNode","@web-atoms/web-controls/dist/basic/AtomRepeater","@web-atoms/web-controls/dist/basic/Expander","../buttons/IconButton","@web-atoms/web-controls/dist/PageNavigator","@web-atoms/core/dist/core/Bind","@web-atoms/core/dist/web/services/PopupService","../../../services/EntityService","@web-atoms/core/dist/style/styled","../../../model/model"],(function(_export,_context){"use strict";var __awaiter,XNode,AtomRepeater,Expander,AddIconTextButton,DeleteIconButton,PageNavigator,Bind,PopupService,EntityService,styled,modelEntitySchemas,hasKeys;function CollectionEditor({model,collection,addPage,pageResultToItem,addItemDefaults,itemFactory,editPage,label,itemRenderer,autoFocus=false}){var _a;let repeater;const items=(_a=model[collection])!==null&&_a!==void 0?_a:model[collection]=[];const schema=modelEntitySchemas[model.$type];const relation=schema.schema.relations.find((x=>x.name===collection));itemFactory!==null&&itemFactory!==void 0?itemFactory:itemFactory=()=>relation.relatedModel.create(addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{});const onAddItem=()=>__awaiter(this,void 0,void 0,(function*(){const es=repeater.app.resolve(EntityService);let newItem;if(addPage){const result=yield PageNavigator.pushPageForResult(addPage,addItemDefaults!==null&&addItemDefaults!==void 0?addItemDefaults:{});newItem=pageResultToItem?pageResultToItem(result):result}else{newItem=itemFactory===null||itemFactory===void 0?void 0:itemFactory()}if(!newItem){return}if(newItem===null||newItem===void 0?void 0:newItem.then){newItem=yield newItem}if(hasKeys(model,schema)){const draft=Object.assign(Object.assign({},model),{[collection]:[newItem]});let clone=es.cloner(draft);clone=clone.include((x=>x[collection]));yield es.save(clone.copy)}repeater.items.add(newItem)}));const deleteItem=item=>__awaiter(this,void 0,void 0,(function*(){if(!(yield PopupService.confirm({message:"Are you sure you want to delete this?",title:"Confirm"}))){return}if(typeof item.$deleted==="undefined"){items.remove(item);return}item.$deleted=true;const es=repeater.app.resolve(EntityService);const copy=es.cloner(item).copy;yield es.save(copy);items.remove(item)}));return XNode.create(Expander,{"data-collection-editor":"editor",isExpanded:true},XNode.create("div",{"data-layout":"row"},XNode.create("span",{text:label})),XNode.create("div",null,XNode.create(AtomRepeater,{presenter:Bind.presenter((c=>repeater=c)),"data-layout":"data-grid","event-delete-collection-item":ce=>deleteItem(ce.detail),items,footer:true,itemRenderer:item=>{const node=itemRenderer(item);node.children.push(XNode.create("span",null,XNode.create(DeleteIconButton,{"data-click-event":"delete-collection-item"})));return node}}),XNode.create("div",null,XNode.create(AddIconTextButton,{"event-click":onAddItem,text:"Add New"}))))}_export("default",CollectionEditor);return{setters:[function(_tslib){__awaiter=_tslib.__awaiter},function(_webAtomsCoreDistCoreXNode){XNode=_webAtomsCoreDistCoreXNode.default},function(_webAtomsWebControlsDistBasicAtomRepeater){AtomRepeater=_webAtomsWebControlsDistBasicAtomRepeater.default},function(_webAtomsWebControlsDistBasicExpander){Expander=_webAtomsWebControlsDistBasicExpander.default},function(_buttonsIconButton){AddIconTextButton=_buttonsIconButton.AddIconTextButton;DeleteIconButton=_buttonsIconButton.DeleteIconButton},function(_webAtomsWebControlsDistPageNavigator){PageNavigator=_webAtomsWebControlsDistPageNavigator.default},function(_webAtomsCoreDistCoreBind){Bind=_webAtomsCoreDistCoreBind.default},function(_webAtomsCoreDistWebServicesPopupService){PopupService=_webAtomsCoreDistWebServicesPopupService.default},function(_servicesEntityService){EntityService=_servicesEntityService.default},function(_webAtomsCoreDistStyleStyled){styled=_webAtomsCoreDistStyleStyled.default},function(_modelModel){modelEntitySchemas=_modelModel.modelEntitySchemas}],execute:function(){styled.css`
1336
1336
  margin: 10px;
1337
1337
  padding: 10px;
1338
1338
  border: solid 1px lightgray;