@evs-chris/raui
Advanced tools
Comparing version
@@ -159,3 +159,5 @@ // TODO: support for non-numeric formats? | ||
var selectGroup = function () { | ||
var group = groupForPos(groups, node.selectionStart); | ||
var group; | ||
if (node.selectionStart === node.value.length && node.selectionEnd === node.value.length) { group = groups[0]; } | ||
else { group = groupForPos(groups, node.selectionStart); } | ||
document.activeElement === node && node.setSelectionRange(group.start, group.end); | ||
@@ -162,0 +164,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
var nonDigits=/[^\d]+/;var nonDisplay=/[^\d_]+/;var blankChar="_";var map={y:0,M:1,d:2,H:3,m:4,s:5,S:6};export function padl(str,total,char){if(char===void 0)char="0";var v=str==null?"":""+str;for(var i=v.length;i<total;i++){v=char+v}return v}export function padr(str,total,char){if(char===void 0)char="0";var v=str==null?"":""+str;for(var i=v.length;i<total;i++){v+=char}return v}export var defaults={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function date(){var now=new Date;return new Date(now.getFullYear()+"-"+padl(now.getMonth()+1,2)+"-"+padl(now.getDate(),2)+"T"+defaults.time)}};export default function plugin(options){if(options===void 0)options={};var defaultMask=options.mask||defaults.mask;var defaultTime=options.time||defaults.time;var defaultDate=options.date||defaults.date;if(typeof defaultDate!=="function"){var dt=defaultDate;defaultDate=function(){return dt}}return function(ref){var instance=ref.instance;instance.decorators[options.name||"date"]=function(node,optsin,other){if(optsin===void 0)optsin={};var opts=Object.assign({},options,typeof optsin==="string"?{value:optsin}:0,typeof other==="string"?{mask:other}:0,typeof optsin==="object"?optsin:0);var ctx=this.getContext(node);var mask=opts.mask||defaultMask;var handles={observers:[],listeners:[]};if(node.tagName!=="INPUT"){console.warn("Attempted to add a date decorator a "+node.tagName);return noop}if(!mask){return noop}var groups=[];var match,last=0;while(match=dateRE.exec(mask)){var group={mask:match[0],type:match[0][0],length:match[0].length,start:match.index,end:match.index+match[0].length,chunk:groups.length,prefix:mask.substring(last,match.index),groups:groups,value:null,display:padr("",match[0].length,blankChar)};last=group.end;groups.push(group)}groups.suffix=mask.substring(groups[groups.length-1].end);groups.last=null;if(groups.slice(1).find(function(g){return!g.prefix})){console.warn("Attempted to add a date decorator missing interstitial between fields '"+mask+"'");return noop}if(opts.min>opts.max){delete opts.min}if(typeof opts.value==="string"){handles.observers.push(ctx.observe(opts.value,function(v){if(!v&&opts.null===false){v=defaultDate()}groups.value=v;receiveValue(groups,v);groups.last=v;updateDisplay(groups,node);if(opts.min&&v<opts.min||opts.max&&v>opts.max){groups.last=null;setTimeout(sendValue)}},{defer:true}))}else{if(opts.date||opts.null===false){groups.value=getDateValue(opts.date||defaultDate())}updateDisplay(groups,node)}function sendValue(focused){if(groups.value===null&&groups.last===null||+groups.value===+groups.last){return 1}if(focused&&opts.lazy!==false){return}if(opts.null===false&&groups.value===null){return receiveValue(groups,groups.last)&&1||1}if(opts.min&&groups.value<opts.min){receiveValue(groups,opts.min);updateDisplay(groups,node)}else if(opts.max&&groups.value>opts.max){receiveValue(groups,opts.max);updateDisplay(groups,node)}groups.last=groups.value;if(typeof opts.value==="string"){handles.observers.forEach(function(h){return h.silence()});ctx.set(opts.value,groups.value);handles.observers.forEach(function(h){return h.resume()})}}handles.listeners.push(ctx.listen("input",function(){var pos=node.selectionStart;var start=node.value;readInput(groups,node,mask);var active=groupForPos(groups,pos);var accepted=updateValues(groups,active,pos);applyValues(groups,sendValue,true);updateDisplay(groups,node);if(active&&(start.length>=mask.length&&pos===active.end||accepted)&&active!==groups[groups.length-1]){var next=groups[groups.indexOf(active)+1];node.setSelectionRange(next.start,next.end)}else{node.setSelectionRange(pos,pos)}}));handles.listeners.push(ctx.listen("blur",function(){if(sendValue(false)){receiveValue(groups,groups.value)}updateDisplay(groups,node)}));var selectGroup=function(){var group=groupForPos(groups,node.selectionStart);document.activeElement===node&&node.setSelectionRange(group.start,group.end)};handles.listeners.push(ctx.listen("click",selectGroup));handles.listeners.push(ctx.listen("focus",selectGroup));handles.listeners.push(ctx.listen("keydown",function(ev){switch(ev.key){case"Enter":case"Tab":{var g=groupForPos(groups,node.selectionStart);var idx=groups.indexOf(g);if(updateValues(groups,g,node.selectionStart,true)){updateDisplay(groups,node);applyValues(groups,sendValue,ev.shiftKey&&idx>0||!ev.shiftKey&&idx+1<groups.length)}if(ev.shiftKey&&idx>0){node.setSelectionRange(groups[idx-1].start,groups[idx-1].end);ev.preventDefault();ev.stopPropagation()}else if(!ev.shiftKey&&idx+1<groups.length){node.setSelectionRange(groups[idx+1].start,groups[idx+1].end);ev.preventDefault();ev.stopPropagation()}break}case"ArrowUp":case"ArrowDown":{var ref=[node.selectionStart,node.selectionEnd];var s=ref[0];var e=ref[1];var g$1=groupForPos(groups,s);if(g$1.value===null){g$1.value=1}bumpValue(g$1,ev.key==="ArrowDown");g$1.input=g$1.display=displayForGroup(g$1);applyValues(groups,sendValue,true);updateDisplay(groups,node);ev.preventDefault();ev.stopPropagation();node.setSelectionRange(s,e);break}}}));return{teardown:function teardown(){handles.observers.forEach(function(o){return o.cancel()});handles.listeners.forEach(function(o){return o.cancel()})}}}}}function readInput(groups,node,mask){var val=node.value;var pos=node.selectionStart;var active=groupForPos(groups,pos);var gidx=0;var group=groups[gidx];var next=groups[gidx+1];groups.forEach(function(g){return g.input=""});for(var i=0;i<val.length;i++){if(next&&val[i]===next.prefix[0]&&(active!==group||group.input.length>=group.length||val.length-i<mask.length-group.end+(group.length-group.input.length))){if(next.prefix.length>1){i+=next.prefix.length-1}if(val[i+1]===next.prefix[0]){i+=next.prefix.length}group=groups[++gidx];next=groups[gidx+1]}else{group.input+=val[i]}}}function updateValues(groups,target,pos,leave){if(pos===void 0)pos=0;if(leave===void 0)leave=false;var accepted=false;for(var i=0;i<groups.length;i++){var g=groups[i];var v=g.input.replace(nonDigits,"");var hasSep=groups[i+1]&&groups[i+1].prefix&&nonDisplay.test(g.input);if(v.length>g.length&&g===target){var drop=v.length-target.length;v=v.substr(0,pos-target.start)+v.substr(pos-target.start+drop)}else{v=v.substr(0,g.length)}g.input=v;if(v===""){g.value=null;g.display=displayForGroup(g)}else if(g!==target){g.value=+v;if(g.type==="M"){g.value--}g.display=displayForGroup(g)}else{if(g.type==="M"&&+v>1||g.type==="d"&&+v>3||g.type==="H"&&+v>2||(g.type==="m"||g.type==="s")&&+v>6){g.value=+v;if(g.type==="M"){g.value--}g.display=padl(v,g.length);accepted=true}else if(g.type==="y"&&v.length===2&&(hasSep||leave)){var n=(new Date).getFullYear();var cen=Math.floor(n/100)*100;var val=Math.abs(n-(cen+ +v))<20?cen+ +v:cen-100+ +v;g.value=val;g.input=g.display=padl(val,g.length);accepted=true}else{g.display=padr(v,g.length,blankChar);g.value=+v}}}return accepted}function receiveValue(groups,v){v=groups.value=v&&getDateValue(v);var parts=v?[v.getFullYear(),v.getMonth(),v.getDate(),v.getHours(),v.getMinutes(),v.getSeconds(),v.getMilliseconds()]:[null,null,null,null,null,null,null];groups.forEach(function(g){g.value=parts[map[g.type]];g.input=g.display=displayForGroup(g)})}function applyValues(groups,send,focused){var v=groups.value||origin;var parts=[v.getFullYear(),v.getMonth(),v.getDate(),v.getHours(),v.getMinutes(),v.getSeconds(),v.getMilliseconds()];groups.forEach(function(g){var vv=g.value;if(vv!==null&&g.type==="M"){if(vv<0){vv=0}else if(vv>11){vv=11}}else if(vv!==null&&(g.type==="m"||g.type==="s")){if(vv<0){vv=0}else if(vv>59){vv=59}}else if(vv!==null&&g.type==="H"){if(vv<0){vv=0}else if(vv>23){vv=23}}else if(vv!==null&&g.type==="h"){if(vv<1){vv=1}else if(vv>12){vv=12}}if(vv!==g.value){g.value=vv;g.display=displayForGroup(g)}parts[map[g.type]]=g.value});if(parts[0]!==null&&parts[1]!==null&&parts[2]!==null){var d=groups.find(function(g){return g.type==="d"});if(d){if(parts[2]<1){d.value=parts[2]=1;d.display=displayForGroup(d)}else{var last=lastDay(new Date(parts[0],parts[1],1));if(parts[2]>last){d.value=parts[2]=last;d.display=displayForGroup(d)}}}}if(groups.find(function(g){return g.value===null})||parts[0]===0||parts[1]>11||parts[1]<0||parts[2]===0){groups.value=null}else{parts.unshift(null);groups.value=new(Date.bind.apply(Date,parts))}send(focused)}function updateDisplay(groups,node){node.value=groups.reduce(function(a,c){return a+c.prefix+c.display},"")+groups.suffix}function groupForPos(groups,pos){return groups.find(function(g){return pos>=g.start&&pos<=g.end})}function displayForGroup(group){if(group.value===null){return padl("",group.length,blankChar)}switch(group.type){case"y":if(!group.value){return padl("",group.length,blankChar)}return group.length<=2?(""+group.value).substr(2,2):""+padl(group.value,group.length);case"M":if(!~group.value){return padl("",group.length,blankChar)}if(group.length===1){return""+(group.value+1)}else if(group.length===2){return(group.value<9?"0":"")+(group.value+1)}else if(group.length===3){return months[group.value].substr(0,3)}else{return months[group.value]}case"d":if(!group.value){return padl("",group.length,blankChar)}if(group.length===1){return""+group.value}else if(group.length===2){return(group.value<=9?"0":"")+group.value}else if(group.length===3){return days[group.groups.value.getDay()].substr(0,3)}else{return days[group.groups.value.getDay()]}case"H":case"h":case"m":case"s":if(group.length===1){return""+group.value}else{return padl(group.value,group.length)}case"S":if(group.length===1){return""+group.value}else{return padl(group.value,3)}}}var dateRE=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g;var months=["January","February","March","April","May","June","July","August","September","October","November","December"];var days=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var noop={teardown:function teardown(){}};function bumpValue(group,down){switch(group.type){case"y":group.value=group.value+(down?-1:1);break;case"M":group.value=down?group.value<1?11:group.value-1:group.value>10?0:group.value+1;break;case"d":{var groups=group.groups;var last=lastDay(new Date((groups.find(function(g){return g.type==="y"})||{value:1}).value,(groups.find(function(g){return g.type==="M"})||{value:1}).value),1);if(down){group.value=group.value<2?last:group.value-1}else{group.value=group.value+1>last?1:group.value+1}break}case"H":group.value=down?group.value<1?23:group.value-1:group.value>22?0:group.value+1;break;case"h":group.value=down?group.value<1?12:group.value-1:group.value>11?1:group.value+1;break;case"m":case"s":group.value=down?group.value<1?59:group.value-1:group.value>58?0:group.value+1;break;case"S":group.value=down?group.value<1?999:group.value-1:group.value>998?0:group.value+1;break}}function lastDay(date){return new Date(new Date(date.getFullYear(),date.getMonth()+1,1)-864e5).getDate()}var origin=new Date("0000-01-01T00:00:00");function getDateValue(thing){var v=thing;if(typeof v==="function"){v=thing()}if(typeof v==="string"){try{v=new Date(v)}catch(e){return defaultDate()}}if(v instanceof Date){return v}else{return origin}} | ||
var nonDigits=/[^\d]+/;var nonDisplay=/[^\d_]+/;var blankChar="_";var map={y:0,M:1,d:2,H:3,m:4,s:5,S:6};export function padl(str,total,char){if(char===void 0)char="0";var v=str==null?"":""+str;for(var i=v.length;i<total;i++){v=char+v}return v}export function padr(str,total,char){if(char===void 0)char="0";var v=str==null?"":""+str;for(var i=v.length;i<total;i++){v+=char}return v}export var defaults={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function date(){var now=new Date;return new Date(now.getFullYear()+"-"+padl(now.getMonth()+1,2)+"-"+padl(now.getDate(),2)+"T"+defaults.time)}};export default function plugin(options){if(options===void 0)options={};var defaultMask=options.mask||defaults.mask;var defaultTime=options.time||defaults.time;var defaultDate=options.date||defaults.date;if(typeof defaultDate!=="function"){var dt=defaultDate;defaultDate=function(){return dt}}return function(ref){var instance=ref.instance;instance.decorators[options.name||"date"]=function(node,optsin,other){if(optsin===void 0)optsin={};var opts=Object.assign({},options,typeof optsin==="string"?{value:optsin}:0,typeof other==="string"?{mask:other}:0,typeof optsin==="object"?optsin:0);var ctx=this.getContext(node);var mask=opts.mask||defaultMask;var handles={observers:[],listeners:[]};if(node.tagName!=="INPUT"){console.warn("Attempted to add a date decorator a "+node.tagName);return noop}if(!mask){return noop}var groups=[];var match,last=0;while(match=dateRE.exec(mask)){var group={mask:match[0],type:match[0][0],length:match[0].length,start:match.index,end:match.index+match[0].length,chunk:groups.length,prefix:mask.substring(last,match.index),groups:groups,value:null,display:padr("",match[0].length,blankChar)};last=group.end;groups.push(group)}groups.suffix=mask.substring(groups[groups.length-1].end);groups.last=null;if(groups.slice(1).find(function(g){return!g.prefix})){console.warn("Attempted to add a date decorator missing interstitial between fields '"+mask+"'");return noop}if(opts.min>opts.max){delete opts.min}if(typeof opts.value==="string"){handles.observers.push(ctx.observe(opts.value,function(v){if(!v&&opts.null===false){v=defaultDate()}groups.value=v;receiveValue(groups,v);groups.last=v;updateDisplay(groups,node);if(opts.min&&v<opts.min||opts.max&&v>opts.max){groups.last=null;setTimeout(sendValue)}},{defer:true}))}else{if(opts.date||opts.null===false){groups.value=getDateValue(opts.date||defaultDate())}updateDisplay(groups,node)}function sendValue(focused){if(groups.value===null&&groups.last===null||+groups.value===+groups.last){return 1}if(focused&&opts.lazy!==false){return}if(opts.null===false&&groups.value===null){return receiveValue(groups,groups.last)&&1||1}if(opts.min&&groups.value<opts.min){receiveValue(groups,opts.min);updateDisplay(groups,node)}else if(opts.max&&groups.value>opts.max){receiveValue(groups,opts.max);updateDisplay(groups,node)}groups.last=groups.value;if(typeof opts.value==="string"){handles.observers.forEach(function(h){return h.silence()});ctx.set(opts.value,groups.value);handles.observers.forEach(function(h){return h.resume()})}}handles.listeners.push(ctx.listen("input",function(){var pos=node.selectionStart;var start=node.value;readInput(groups,node,mask);var active=groupForPos(groups,pos);var accepted=updateValues(groups,active,pos);applyValues(groups,sendValue,true);updateDisplay(groups,node);if(active&&(start.length>=mask.length&&pos===active.end||accepted)&&active!==groups[groups.length-1]){var next=groups[groups.indexOf(active)+1];node.setSelectionRange(next.start,next.end)}else{node.setSelectionRange(pos,pos)}}));handles.listeners.push(ctx.listen("blur",function(){if(sendValue(false)){receiveValue(groups,groups.value)}updateDisplay(groups,node)}));var selectGroup=function(){var group;if(node.selectionStart===node.value.length&&node.selectionEnd===node.value.length){group=groups[0]}else{group=groupForPos(groups,node.selectionStart)}document.activeElement===node&&node.setSelectionRange(group.start,group.end)};handles.listeners.push(ctx.listen("click",selectGroup));handles.listeners.push(ctx.listen("focus",selectGroup));handles.listeners.push(ctx.listen("keydown",function(ev){switch(ev.key){case"Enter":case"Tab":{var g=groupForPos(groups,node.selectionStart);var idx=groups.indexOf(g);if(updateValues(groups,g,node.selectionStart,true)){updateDisplay(groups,node);applyValues(groups,sendValue,ev.shiftKey&&idx>0||!ev.shiftKey&&idx+1<groups.length)}if(ev.shiftKey&&idx>0){node.setSelectionRange(groups[idx-1].start,groups[idx-1].end);ev.preventDefault();ev.stopPropagation()}else if(!ev.shiftKey&&idx+1<groups.length){node.setSelectionRange(groups[idx+1].start,groups[idx+1].end);ev.preventDefault();ev.stopPropagation()}break}case"ArrowUp":case"ArrowDown":{var ref=[node.selectionStart,node.selectionEnd];var s=ref[0];var e=ref[1];var g$1=groupForPos(groups,s);if(g$1.value===null){g$1.value=1}bumpValue(g$1,ev.key==="ArrowDown");g$1.input=g$1.display=displayForGroup(g$1);applyValues(groups,sendValue,true);updateDisplay(groups,node);ev.preventDefault();ev.stopPropagation();node.setSelectionRange(s,e);break}}}));return{teardown:function teardown(){handles.observers.forEach(function(o){return o.cancel()});handles.listeners.forEach(function(o){return o.cancel()})}}}}}function readInput(groups,node,mask){var val=node.value;var pos=node.selectionStart;var active=groupForPos(groups,pos);var gidx=0;var group=groups[gidx];var next=groups[gidx+1];groups.forEach(function(g){return g.input=""});for(var i=0;i<val.length;i++){if(next&&val[i]===next.prefix[0]&&(active!==group||group.input.length>=group.length||val.length-i<mask.length-group.end+(group.length-group.input.length))){if(next.prefix.length>1){i+=next.prefix.length-1}if(val[i+1]===next.prefix[0]){i+=next.prefix.length}group=groups[++gidx];next=groups[gidx+1]}else{group.input+=val[i]}}}function updateValues(groups,target,pos,leave){if(pos===void 0)pos=0;if(leave===void 0)leave=false;var accepted=false;for(var i=0;i<groups.length;i++){var g=groups[i];var v=g.input.replace(nonDigits,"");var hasSep=groups[i+1]&&groups[i+1].prefix&&nonDisplay.test(g.input);if(v.length>g.length&&g===target){var drop=v.length-target.length;v=v.substr(0,pos-target.start)+v.substr(pos-target.start+drop)}else{v=v.substr(0,g.length)}g.input=v;if(v===""){g.value=null;g.display=displayForGroup(g)}else if(g!==target){g.value=+v;if(g.type==="M"){g.value--}g.display=displayForGroup(g)}else{if(g.type==="M"&&+v>1||g.type==="d"&&+v>3||g.type==="H"&&+v>2||(g.type==="m"||g.type==="s")&&+v>6){g.value=+v;if(g.type==="M"){g.value--}g.display=padl(v,g.length);accepted=true}else if(g.type==="y"&&v.length===2&&(hasSep||leave)){var n=(new Date).getFullYear();var cen=Math.floor(n/100)*100;var val=Math.abs(n-(cen+ +v))<20?cen+ +v:cen-100+ +v;g.value=val;g.input=g.display=padl(val,g.length);accepted=true}else{g.display=padr(v,g.length,blankChar);g.value=+v}}}return accepted}function receiveValue(groups,v){v=groups.value=v&&getDateValue(v);var parts=v?[v.getFullYear(),v.getMonth(),v.getDate(),v.getHours(),v.getMinutes(),v.getSeconds(),v.getMilliseconds()]:[null,null,null,null,null,null,null];groups.forEach(function(g){g.value=parts[map[g.type]];g.input=g.display=displayForGroup(g)})}function applyValues(groups,send,focused){var v=groups.value||origin;var parts=[v.getFullYear(),v.getMonth(),v.getDate(),v.getHours(),v.getMinutes(),v.getSeconds(),v.getMilliseconds()];groups.forEach(function(g){var vv=g.value;if(vv!==null&&g.type==="M"){if(vv<0){vv=0}else if(vv>11){vv=11}}else if(vv!==null&&(g.type==="m"||g.type==="s")){if(vv<0){vv=0}else if(vv>59){vv=59}}else if(vv!==null&&g.type==="H"){if(vv<0){vv=0}else if(vv>23){vv=23}}else if(vv!==null&&g.type==="h"){if(vv<1){vv=1}else if(vv>12){vv=12}}if(vv!==g.value){g.value=vv;g.display=displayForGroup(g)}parts[map[g.type]]=g.value});if(parts[0]!==null&&parts[1]!==null&&parts[2]!==null){var d=groups.find(function(g){return g.type==="d"});if(d){if(parts[2]<1){d.value=parts[2]=1;d.display=displayForGroup(d)}else{var last=lastDay(new Date(parts[0],parts[1],1));if(parts[2]>last){d.value=parts[2]=last;d.display=displayForGroup(d)}}}}if(groups.find(function(g){return g.value===null})||parts[0]===0||parts[1]>11||parts[1]<0||parts[2]===0){groups.value=null}else{parts.unshift(null);groups.value=new(Date.bind.apply(Date,parts))}send(focused)}function updateDisplay(groups,node){node.value=groups.reduce(function(a,c){return a+c.prefix+c.display},"")+groups.suffix}function groupForPos(groups,pos){return groups.find(function(g){return pos>=g.start&&pos<=g.end})}function displayForGroup(group){if(group.value===null){return padl("",group.length,blankChar)}switch(group.type){case"y":if(!group.value){return padl("",group.length,blankChar)}return group.length<=2?(""+group.value).substr(2,2):""+padl(group.value,group.length);case"M":if(!~group.value){return padl("",group.length,blankChar)}if(group.length===1){return""+(group.value+1)}else if(group.length===2){return(group.value<9?"0":"")+(group.value+1)}else if(group.length===3){return months[group.value].substr(0,3)}else{return months[group.value]}case"d":if(!group.value){return padl("",group.length,blankChar)}if(group.length===1){return""+group.value}else if(group.length===2){return(group.value<=9?"0":"")+group.value}else if(group.length===3){return days[group.groups.value.getDay()].substr(0,3)}else{return days[group.groups.value.getDay()]}case"H":case"h":case"m":case"s":if(group.length===1){return""+group.value}else{return padl(group.value,group.length)}case"S":if(group.length===1){return""+group.value}else{return padl(group.value,3)}}}var dateRE=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g;var months=["January","February","March","April","May","June","July","August","September","October","November","December"];var days=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var noop={teardown:function teardown(){}};function bumpValue(group,down){switch(group.type){case"y":group.value=group.value+(down?-1:1);break;case"M":group.value=down?group.value<1?11:group.value-1:group.value>10?0:group.value+1;break;case"d":{var groups=group.groups;var last=lastDay(new Date((groups.find(function(g){return g.type==="y"})||{value:1}).value,(groups.find(function(g){return g.type==="M"})||{value:1}).value),1);if(down){group.value=group.value<2?last:group.value-1}else{group.value=group.value+1>last?1:group.value+1}break}case"H":group.value=down?group.value<1?23:group.value-1:group.value>22?0:group.value+1;break;case"h":group.value=down?group.value<1?12:group.value-1:group.value>11?1:group.value+1;break;case"m":case"s":group.value=down?group.value<1?59:group.value-1:group.value>58?0:group.value+1;break;case"S":group.value=down?group.value<1?999:group.value-1:group.value>998?0:group.value+1;break}}function lastDay(date){return new Date(new Date(date.getFullYear(),date.getMonth()+1,1)-864e5).getDate()}var origin=new Date("0000-01-01T00:00:00");function getDateValue(thing){var v=thing;if(typeof v==="function"){v=thing()}if(typeof v==="string"){try{v=new Date(v)}catch(e){return defaultDate()}}if(v instanceof Date){return v}else{return origin}} |
@@ -246,3 +246,3 @@ import globalRegister from './globalRegister'; | ||
}); } | ||
if (label) { body.unshift(label.f); } | ||
if (label) { body.unshift.apply(body, Array.isArray(label.f) ? label.f : [label.f]); } | ||
else { body.unshift('\xa0'); } | ||
@@ -249,0 +249,0 @@ |
@@ -1,1 +0,1 @@ | ||
import globalRegister from"./globalRegister";import Ractive from"ractive";export function style(data){var primary=Object.assign({},data("raui.primary"),data("raui.form.primary"));var active=Object.assign({},data("raui.primary.active"),data("raui.form.primary.active"));var boxy=data("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(primary.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(primary.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(primary.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(boxy?primary.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(active.fg||primary.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(active.fg||primary.fga||"#07e")+";\n "+(!boxy?"box-shadow: 0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n 0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+";":"")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(boxy?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(primary.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(boxy?primary.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(boxy?"\n border-radius: "+(primary.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(boxy?"":":disabled")+",\n label.field select"+(boxy?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(boxy?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(!boxy?"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(primary.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(primary.bc||"#ccc")+",\n -0.0625em 0.0625em "+(primary.bc||"#ccc")+",\n 0.0625em -0.0625em "+(primary.bc||"#ccc")+",\n -0.0625em -0.0625em "+(primary.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n 0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+";\n }":"")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(primary.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(primary.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(primary.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(primary.fga||"#07e")+";\n background-color: "+(primary.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(primary.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(primary.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(primary.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(primary.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(primary.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(primary.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(primary.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(primary.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(primary.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(primary.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(primary.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(boxy?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(active.fg||primary.fga||"#07e")+";\n "+(!boxy?"box-shadow: 0 0.0625em 0 0 "+(active.fg||primary.fga||"#07e")+";":"")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(active.fg||primary.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(primary.fg||"#222")+";\n text-align: "+(boxy?"center":"left")+";\n padding: 0.5em "+(boxy?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(boxy?"\n border-radius: "+(primary.radius||"0.2em")+";\n border-color: "+(primary.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(primary.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(boxy?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(boxy?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(boxy?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(primary.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(boxy?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(primary.radius||"0.2em")+" "+(primary.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(primary.radius||"0.2em")+" 0 0 "+(primary.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(boxy?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(primary.fga||"#07e")+";\n color: "+(primary.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "}function noop(){}function focused(ev){if(!~this.className.indexOf("focus")){this.className+=" focus"}}function blurred(ev){this.className=this.className.replace(/\bfocus\b/g,"").trim()}export function field(node){var ctx=this.getContext(node);var isField,isCheck,isRadio,isArea,isSelect,isFile,isButton,isPlain,isInput;var change,attrs,desc,last;function invalidate(){var val=setup().split(/\s+/).filter(function(c){return!!c});isField=!!~val.indexOf("field");if(!isField){val.push("field");isField=true}isCheck=node.querySelector("input[type=checkbox]");if(isCheck&&!~val.indexOf("check")){val.push("check")}isRadio=node.querySelector("input[type=radio]");if(isRadio&&!~val.indexOf("radio")){val.push("radio")}var checkable=isCheck||isRadio;if(checkable&&checkable.checked&&!~val.indexOf("checked")){val.push("checked")}if(checkable&&checkable.disabled&&!~val.indexOf("disabled")){val.push("disabled")}if(!checkable&&change){change.cancel();change=0;if(attrs){attrs.disconnect();attrs=0}delete checkable._form_callback;if(last){delete last.checked;desc=last=undefined}}else if(checkable){checkable._form_callback=function(ev,init){if(init===void 0)init=true;if(init&&checkable.type==="radio"&&checkable.name){var list=[];list.push.apply(list,document.querySelectorAll("input[type=radio][name="+checkable.name+"]"));list=list.filter(function(i){return i!==checkable});list.forEach(function(l){return l._form_callback&&l._form_callback(ev,false)})}var checked=checkable.checked;if(checked&&!~node.className.indexOf("checked")){node.className+=" checked"}else if(!checked&&~node.className.indexOf("checked")){node.className=node.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim()}};if(MutationObserver){attrs=new MutationObserver(function(){var val;val=checkable.disabled;if(val&&!~node.className.indexOf("disabled")){node.className+=" disabled"}else if(!val&&~node.className.indexOf("disabled")){node.className=node.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim()}});attrs.observe(checkable,{attributes:true})}change=this.getContext(checkable).listen("change",checkable._form_callback);desc=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(checkable),"checked");if(desc&&desc.configurable){last=checkable;Object.defineProperty(checkable,"checked",{get:desc.get,set:function set(v){desc.set.call(last,v);checkable._form_callback()},enumerable:true,configurable:true})}}isArea=!!node.querySelector("textarea");if(isArea&&!~val.indexOf("textarea")){val.push("textarea")}isSelect=!!node.querySelector("select");if(isSelect&&!~val.indexOf("select")){val.push("select")}isFile=!!node.querySelector("input[type=file]");if(isFile&&!~val.indexOf("file")){val.push("file")}isButton=node.querySelector("button");isButton=!!isButton&&isButton.parentNode===node;if(isButton&&!~val.indexOf("button")){val.push("button")}isPlain=!!node.querySelector("div");if(isPlain&&!~val.indexOf("plain")){val.push("plain")}isInput=!isCheck&&!isRadio&&!isFile&&!!node.querySelector("input");if(isInput&&!~val.indexOf("input")){val.push("input")}node.className=val.join(" ")}function setup(){var cls=node.className;if(!isField){cls=cls.replace(/\bfield\b/g,"").trim()}if(!isCheck){cls=cls.replace(/\bcheck(ed)?\b/g,"").trim()}if(!isRadio){cls=cls.replace(/\bradio\b/g,"").trim()}if(!isArea){cls=cls.replace(/\btextarea\b/g,"").trim()}if(!isSelect){cls=cls.replace(/\bselect\b/g,"").trim()}if(!isFile){cls=cls.replace(/\bfile\b/g,"").trim()}if(!isButton){cls=cls.replace(/\bbutton\b/g,"").trim()}if(!isPlain){cls=cls.replace(/\bplain\b/g,"").trim()}if(!isInput){cls=cls.replace(/\binput\b/g,"").trim()}cls=cls.replace(/ +/g," ");return cls}var focus=ctx.listen("focusin",focused);var blur=ctx.listen("focusout",blurred);invalidate.call(this);return{update:noop,invalidate:invalidate.bind(this),teardown:function teardown(){var cls=setup();cls=cls.replace(/\bfocus\b/g,"").trim();focus.cancel();blur.cancel();change&&change.cancel();if(attrs){attrs.disconnect()}if(last){delete last.checked;desc=last=undefined}node.className=cls}}}field.style=style;function findDeep(els,el){if(!els){return false}for(var i=0;i<els.length;i++){if(els[i].e===el){return true}if(els[i].f&&findDeep(els[i].f,el)){return true}}return false}export var macro=Ractive.macro(function(handle){var body=[];var attrs=(handle.template.m||[]).slice();var content=handle.template.f||[];var value=attrs.find(function(a){return a.n==="value"});var type=attrs.find(function(a){return a.n==="type"});var tip=attrs.find(function(a){return a.n==="tip"});if(tip){attrs.splice(attrs.indexOf(tip),1)}if(type&&typeof macro.types[type.f]==="function"){body.push.apply(body,macro.types[type.f](attrs,content,handle))}else if(value){var el={t:7,e:"input",m:[value]};if(findDeep(content,"option")){el.e="select";el.f=content}if(type){el.m.push(type);if(type.f==="checkbox"||type.f==="radio"){var target=attrs.find(function(a){return a.n==="target"});if(target){el.m.push(Object.assign({},target,{n:"name"}))}else{el.m.splice(el.m.indexOf(value),1,Object.assign({},value,{n:"checked"}))}}}el.m=el.m.concat(attrs.filter(function(a){return a.t===73||a.t===73||a.n==="placeholder"}));body.push(el);var btns=content.filter(function(e){return e.e==="button"||findDeep(e.f,"button")});if(btns.length){body.push.apply(body,btns);body=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:body}]}}else{var els=content.filter(function(e){return e.e});if(els.find(function(e){return e.e==="button"})&&els.length>1){body=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:content}]}else{body.push.apply(body,content)}}var label=attrs.find(function(a){return a.n==="label"});if(tip){body.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(!label?" field-solo-tip":""),g:1},{t:13,n:"title",f:tip.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"})}if(label){body.unshift(label.f)}else{body.unshift(" ")}var outer={t:7,e:"label",m:[{t:71,n:"field"}].concat(attrs.filter(function(a){return a.t!==13&&a.t!==73||a.n!=="value"&&a.n!=="type"&&a.n!=="inline"&&a.n!=="label"&&a.n!=="placeholder"&&a.n!=="target"})),f:body};if(attrs.find(function(a){return a.n==="inline"})){outer.m.push({t:13,n:"class",f:"inline"})}handle.setTemplate([outer])});macro.types={};export function autofocus(node){if(typeof node.focus==="function"){node.focus()}return{teardown:noop}}export function plugin(opts){if(opts===void 0)opts={};return function(ref){var Ractive=ref.Ractive;var instance=ref.instance;if(!Ractive.isInstance(instance)){if(opts.includeStyle){if(instance===Ractive){Ractive.addCSS("form-decorator",style)}else{var css=instance.css;instance.css=function(data){var res=typeof css!=="function"?css||"":css(data);return res+style(data)}}}}instance.partials[opts.name||"field"]=macro;instance.decorators[opts.name||"field"]=field;instance.decorators[opts.autofocusName||"autofocus"]=autofocus}}globalRegister("field","decorators",field);globalRegister("field","partials",macro);globalRegister("autofocus","decorators",autofocus);export default plugin; | ||
import globalRegister from"./globalRegister";import Ractive from"ractive";export function style(data){var primary=Object.assign({},data("raui.primary"),data("raui.form.primary"));var active=Object.assign({},data("raui.primary.active"),data("raui.form.primary.active"));var boxy=data("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(primary.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(primary.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(primary.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(boxy?primary.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(active.fg||primary.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(active.fg||primary.fga||"#07e")+";\n "+(!boxy?"box-shadow: 0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n 0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+";":"")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(boxy?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(primary.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(boxy?primary.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(boxy?"\n border-radius: "+(primary.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(boxy?"":":disabled")+",\n label.field select"+(boxy?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(boxy?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(!boxy?"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(primary.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(primary.bc||"#ccc")+",\n -0.0625em 0.0625em "+(primary.bc||"#ccc")+",\n 0.0625em -0.0625em "+(primary.bc||"#ccc")+",\n -0.0625em -0.0625em "+(primary.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em 0.0625em "+(active.fg||primary.fga||"#07e")+",\n 0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+",\n -0.0625em -0.0625em "+(active.fg||primary.fga||"#07e")+";\n }":"")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(primary.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(primary.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(primary.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(primary.fga||"#07e")+";\n background-color: "+(primary.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(primary.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(primary.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(primary.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(primary.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(primary.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(primary.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(primary.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(primary.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(primary.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(primary.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(primary.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(primary.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(boxy?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(active.fg||primary.fga||"#07e")+";\n "+(!boxy?"box-shadow: 0 0.0625em 0 0 "+(active.fg||primary.fga||"#07e")+";":"")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(active.fg||primary.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(primary.fg||"#222")+";\n text-align: "+(boxy?"center":"left")+";\n padding: 0.5em "+(boxy?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(boxy?"\n border-radius: "+(primary.radius||"0.2em")+";\n border-color: "+(primary.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(primary.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(boxy?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(boxy?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(boxy?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(primary.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(boxy?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(primary.radius||"0.2em")+" "+(primary.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(primary.radius||"0.2em")+" 0 0 "+(primary.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(boxy?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(primary.fga||"#07e")+";\n color: "+(primary.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "}function noop(){}function focused(ev){if(!~this.className.indexOf("focus")){this.className+=" focus"}}function blurred(ev){this.className=this.className.replace(/\bfocus\b/g,"").trim()}export function field(node){var ctx=this.getContext(node);var isField,isCheck,isRadio,isArea,isSelect,isFile,isButton,isPlain,isInput;var change,attrs,desc,last;function invalidate(){var val=setup().split(/\s+/).filter(function(c){return!!c});isField=!!~val.indexOf("field");if(!isField){val.push("field");isField=true}isCheck=node.querySelector("input[type=checkbox]");if(isCheck&&!~val.indexOf("check")){val.push("check")}isRadio=node.querySelector("input[type=radio]");if(isRadio&&!~val.indexOf("radio")){val.push("radio")}var checkable=isCheck||isRadio;if(checkable&&checkable.checked&&!~val.indexOf("checked")){val.push("checked")}if(checkable&&checkable.disabled&&!~val.indexOf("disabled")){val.push("disabled")}if(!checkable&&change){change.cancel();change=0;if(attrs){attrs.disconnect();attrs=0}delete checkable._form_callback;if(last){delete last.checked;desc=last=undefined}}else if(checkable){checkable._form_callback=function(ev,init){if(init===void 0)init=true;if(init&&checkable.type==="radio"&&checkable.name){var list=[];list.push.apply(list,document.querySelectorAll("input[type=radio][name="+checkable.name+"]"));list=list.filter(function(i){return i!==checkable});list.forEach(function(l){return l._form_callback&&l._form_callback(ev,false)})}var checked=checkable.checked;if(checked&&!~node.className.indexOf("checked")){node.className+=" checked"}else if(!checked&&~node.className.indexOf("checked")){node.className=node.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim()}};if(MutationObserver){attrs=new MutationObserver(function(){var val;val=checkable.disabled;if(val&&!~node.className.indexOf("disabled")){node.className+=" disabled"}else if(!val&&~node.className.indexOf("disabled")){node.className=node.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim()}});attrs.observe(checkable,{attributes:true})}change=this.getContext(checkable).listen("change",checkable._form_callback);desc=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(checkable),"checked");if(desc&&desc.configurable){last=checkable;Object.defineProperty(checkable,"checked",{get:desc.get,set:function set(v){desc.set.call(last,v);checkable._form_callback()},enumerable:true,configurable:true})}}isArea=!!node.querySelector("textarea");if(isArea&&!~val.indexOf("textarea")){val.push("textarea")}isSelect=!!node.querySelector("select");if(isSelect&&!~val.indexOf("select")){val.push("select")}isFile=!!node.querySelector("input[type=file]");if(isFile&&!~val.indexOf("file")){val.push("file")}isButton=node.querySelector("button");isButton=!!isButton&&isButton.parentNode===node;if(isButton&&!~val.indexOf("button")){val.push("button")}isPlain=!!node.querySelector("div");if(isPlain&&!~val.indexOf("plain")){val.push("plain")}isInput=!isCheck&&!isRadio&&!isFile&&!!node.querySelector("input");if(isInput&&!~val.indexOf("input")){val.push("input")}node.className=val.join(" ")}function setup(){var cls=node.className;if(!isField){cls=cls.replace(/\bfield\b/g,"").trim()}if(!isCheck){cls=cls.replace(/\bcheck(ed)?\b/g,"").trim()}if(!isRadio){cls=cls.replace(/\bradio\b/g,"").trim()}if(!isArea){cls=cls.replace(/\btextarea\b/g,"").trim()}if(!isSelect){cls=cls.replace(/\bselect\b/g,"").trim()}if(!isFile){cls=cls.replace(/\bfile\b/g,"").trim()}if(!isButton){cls=cls.replace(/\bbutton\b/g,"").trim()}if(!isPlain){cls=cls.replace(/\bplain\b/g,"").trim()}if(!isInput){cls=cls.replace(/\binput\b/g,"").trim()}cls=cls.replace(/ +/g," ");return cls}var focus=ctx.listen("focusin",focused);var blur=ctx.listen("focusout",blurred);invalidate.call(this);return{update:noop,invalidate:invalidate.bind(this),teardown:function teardown(){var cls=setup();cls=cls.replace(/\bfocus\b/g,"").trim();focus.cancel();blur.cancel();change&&change.cancel();if(attrs){attrs.disconnect()}if(last){delete last.checked;desc=last=undefined}node.className=cls}}}field.style=style;function findDeep(els,el){if(!els){return false}for(var i=0;i<els.length;i++){if(els[i].e===el){return true}if(els[i].f&&findDeep(els[i].f,el)){return true}}return false}export var macro=Ractive.macro(function(handle){var body=[];var attrs=(handle.template.m||[]).slice();var content=handle.template.f||[];var value=attrs.find(function(a){return a.n==="value"});var type=attrs.find(function(a){return a.n==="type"});var tip=attrs.find(function(a){return a.n==="tip"});if(tip){attrs.splice(attrs.indexOf(tip),1)}if(type&&typeof macro.types[type.f]==="function"){body.push.apply(body,macro.types[type.f](attrs,content,handle))}else if(value){var el={t:7,e:"input",m:[value]};if(findDeep(content,"option")){el.e="select";el.f=content}if(type){el.m.push(type);if(type.f==="checkbox"||type.f==="radio"){var target=attrs.find(function(a){return a.n==="target"});if(target){el.m.push(Object.assign({},target,{n:"name"}))}else{el.m.splice(el.m.indexOf(value),1,Object.assign({},value,{n:"checked"}))}}}el.m=el.m.concat(attrs.filter(function(a){return a.t===73||a.t===73||a.n==="placeholder"}));body.push(el);var btns=content.filter(function(e){return e.e==="button"||findDeep(e.f,"button")});if(btns.length){body.push.apply(body,btns);body=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:body}]}}else{var els=content.filter(function(e){return e.e});if(els.find(function(e){return e.e==="button"})&&els.length>1){body=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:content}]}else{body.push.apply(body,content)}}var label=attrs.find(function(a){return a.n==="label"});if(tip){body.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(!label?" field-solo-tip":""),g:1},{t:13,n:"title",f:tip.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"})}if(label){body.unshift.apply(body,Array.isArray(label.f)?label.f:[label.f])}else{body.unshift(" ")}var outer={t:7,e:"label",m:[{t:71,n:"field"}].concat(attrs.filter(function(a){return a.t!==13&&a.t!==73||a.n!=="value"&&a.n!=="type"&&a.n!=="inline"&&a.n!=="label"&&a.n!=="placeholder"&&a.n!=="target"})),f:body};if(attrs.find(function(a){return a.n==="inline"})){outer.m.push({t:13,n:"class",f:"inline"})}handle.setTemplate([outer])});macro.types={};export function autofocus(node){if(typeof node.focus==="function"){node.focus()}return{teardown:noop}}export function plugin(opts){if(opts===void 0)opts={};return function(ref){var Ractive=ref.Ractive;var instance=ref.instance;if(!Ractive.isInstance(instance)){if(opts.includeStyle){if(instance===Ractive){Ractive.addCSS("form-decorator",style)}else{var css=instance.css;instance.css=function(data){var res=typeof css!=="function"?css||"":css(data);return res+style(data)}}}}instance.partials[opts.name||"field"]=macro;instance.decorators[opts.name||"field"]=field;instance.decorators[opts.autofocusName||"autofocus"]=autofocus}}globalRegister("field","decorators",field);globalRegister("field","partials",macro);globalRegister("autofocus","decorators",autofocus);export default plugin; |
@@ -20,3 +20,3 @@ import Ractive from 'ractive'; | ||
export var Menu = /*@__PURE__*/(function (Ractive) { | ||
function Menu(opt) { | ||
function Menu(opts) { | ||
Ractive.call(this, opts); | ||
@@ -23,0 +23,0 @@ this.refs = {}; |
@@ -1,1 +0,1 @@ | ||
import Ractive from"ractive";import expand from"./transition-expand";import clickout from"./event-clickout";import globalRegister from"./globalRegister";function findRef(items,ref){for(var i=0;i<items.length;i++){if(items[i].ref===ref){return[items[i]]}else if(items[i].items){var res=findRef(items[i].items,ref);if(res){res.unshift(items[i]);return res}}}}export var Menu=function(Ractive){function Menu(opt){Ractive.call(this,opts);this.refs={}}if(Ractive)Menu.__proto__=Ractive;Menu.prototype=Object.create(Ractive&&Ractive.prototype);Menu.prototype.constructor=Menu;Menu.prototype.addItem=function addItem(item,idx){if(typeof idx==="number"){this.splice("items",idx,0,item)}else{this.push("items",item)}return new Handle(this,null,item)};Menu.prototype.visibleItems=function visibleItems(items){var this$1=this;return items.filter(function(i){return i.condition!==false&&(typeof i.condition!=="string"||this$1.get(i.condition)!==false)}).length};Menu.prototype.getHandle=function getHandle(what){var this$1=this;var ctx;if(typeof what==="string"){if(this.refs[what]){ctx=this.refs[what].ctx}else{var el=this.find(what);if(el){ctx=this.getContext(el)}else{var path=findRef(this.get("items"),what);if(path){return path.reduce(function(a,c){return new Handle(this$1,a,c)},null)}}}}else if(what&&what.parentNode){ctx=this.getContext(what)}else if(what&&what.decorators){ctx=what}if(ctx){var path$1=[ctx.get()];var str="../../";while(ctx.resolve(str)!==""){path$1.unshift(ctx.get(str));str+="../../"}return path$1.reduce(function(a,c){return new Handle(this$1,a,c)},null)}};Menu.prototype.popAllIn=function popAllIn(path){if(!path){path=""}var item=this.get(path);if(item&&item.items){for(var i=0;i<item.items.length;i++){this.popAllIn((path?path+".":"")+"items."+i)}}if(item.open&&item.popout){this.set((path?path+".":"")+"open",false)}};Menu.prototype.popSiblingsIn=function popSiblingsIn(ctx){var me=ctx.resolve();var items=ctx.get("../");if(items){for(var i=0;i<items.length;i++){if(me===ctx.resolve("../"+i)){continue}if(items[i].open&&items[i].popout){ctx.toggle("../"+i+".open")}}}};Menu.prototype._actioned=function _actioned(){this.fire("action");this.popAllIn()};Menu.prototype._itemRendered=function _itemRendered(ctx){var this$1=this;setTimeout(function(){return this$1.fire("item",ctx,this$1.getHandle(ctx))});return""};Menu.prototype.childActive=function childActive(path){var item=this.get(path);if(item&&item.items){for(var i=0;i<item.items.length;i++){if(this.get(path+".items."+i+".active")===true||typeof item.items[i].active==="function"&&item.items[i].active()||this.get(path+".items."+i+".activeRef")&&this.get(item.items[i].activeRef)||this.childActive(path+".items."+i)){return true}}}};return Menu}(Ractive);Ractive.extendWith(Menu,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-wrapper",g:1},{t:16,r:"extra-attributes"},{n:"class-rmenu-vertical",t:13,f:[{t:2,x:{r:["~/horizontal"],s:"!_0"}}]},{n:"class-rmenu-horizontal",t:13,f:[{t:2,r:"~/horizontal"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-inner",g:1}],f:[{t:8,r:"items"}]}]}]}],e:{"!_0":function(_0){return!_0},"_0||_1":function(_0,_1){return _0||_1},'_0&&(_1||_2==="section")':function(_0,_1,_2){return _0&&(_1||_2==="section")},"_0?_3.active(_1.getHandle((_2))):_3.active()":function(_0,_1,_2,_3){return _0?_3.active(_1.getHandle(_2)):_3.active()},'typeof _0==="function"':function(_0){return typeof _0==="function"},'typeof _0==="boolean"':function(_0){return typeof _0==="boolean"},"_0.childActive(_1)":function(_0,_1){return _0.childActive(_1)},"_0!=null":function(_0){return _0!=null},"[_0.action(),_1._actioned()]":function(_0,_1){return[_0.action(),_1._actioned()]},"[_0._actioned()]":function(_0){return[_0._actioned()]},'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]':function(_0,_1,_2){return[_0&&_1.popSiblingsIn(_2),_2.toggle(".open"),false]},"_0||(_1&&_2[_1])":function(_0,_1,_2){return _0||_1&&_2[_1]},'[{axis:"x"}]':function(){return[{axis:"x"}]},"_2&&_0&&_1.visibleItems(_2)":function(_0,_1,_2){return _2&&_0&&_1.visibleItems(_2)},"[_0.popAllIn(_1),false]":function(_0,_1){return[_0.popAllIn(_1),false]},'!_0||_0==="item"':function(_0){return!_0||_0==="item"},'_0==="section"':function(_0){return _0==="section"},'_0==="container"':function(_0){return _0==="container"},'(!_0||_0==="item")&&_1':function(_0,_1){return(!_0||_0==="item")&&_1},"[_0.popAllIn(_1)]":function(_0,_1){return[_0.popAllIn(_1)]},"[_0]":function(_0){return[_0]},'typeof _0==="string"':function(_0){return typeof _0==="string"},'_0||"item"':function(_0){return _0||"item"},"_0._itemRendered((_1))":function(_0,_1){return _0._itemRendered(_1)},'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())':function(_0,_1,_2){return _1===undefined||typeof _1==="boolean"&&_1||typeof _1==="string"&&_0[_1]||typeof _1==="function"&&_2.condition()}},p:{container:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:3,r:".content"}]}],n:50,r:".pad"},{t:4,f:[{t:3,r:".content"}],n:51,l:1}],n:50,r:".content"},{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:16,r:".contentPartial"}]}],n:50,r:".pad"},{t:4,f:[{t:16,r:".contentPartial"}],n:51,l:1}],n:50,r:".contentPartial",l:1}],section:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1}],f:[{t:4,f:[{t:2,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}]}],n:50,x:{r:[".title",".titlePartial"],s:"_0||_1"}}," ",{t:8,r:"children"}],children:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-items",g:1},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:[".popout"],s:"!_0"}},{t:4,f:[{n:"pop",t:72,v:"t0"}],n:51,l:1},{n:"class-rmenu-shrink",t:13,f:[{t:2,r:".shrink"}]}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popitems",g:1}],f:[{t:8,r:"items"}]}],n:50,r:".popout"},{t:4,f:[{t:8,r:"items"}],n:51,l:1}]}],n:50,x:{r:[".items.length",".open",".type"],s:'_0&&(_1||_2==="section")'}}],item:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".activeRef"}]}}]}],n:50,r:".activeRef"},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:[".active.length","@this","@context","."],s:"_0?_3.active(_1.getHandle((_2))):_3.active()"}}]}],n:50,x:{r:[".active"],s:'typeof _0==="function"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,r:".active"}]}],n:50,x:{r:[".active"],s:'typeof _0==="boolean"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:["@this","@keypath"],s:"_0.childActive(_1)"}}]}],n:50,r:".popout",l:1},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,r:".disabled"}]}],n:50,x:{r:[".disabled"],s:"_0!=null"}},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".disabledRef"}]}}]}],n:50,r:".disabledRef",l:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-left",g:1}],f:[{t:3,r:".left"}]}],n:50,r:".left"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-left",g:1}],f:[{t:16,r:".leftPartial"}]}],n:50,r:".leftPartial",l:1}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1},{t:4,f:[{t:4,f:[{n:["click"],t:70,f:{r:[".","@this"],s:"[_0.action(),_1._actioned()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}},{t:4,f:[{t:16,r:".actionPartial"},{n:["click"],t:70,f:{r:["@this"],s:"[_0._actioned()]"}}],n:50,r:".actionPartial",l:1},{t:4,f:[{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}}],n:50,r:".items.length",l:1}],n:51,x:{r:[".disabled",".disabledRef","~/"],s:"_0||(_1&&_2[_1])"}}],f:[{t:4,f:[{t:3,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-right",g:1}],f:[{t:3,r:".right"}]}],n:50,r:".right"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-right",g:1}],f:[{t:16,r:".rightPartial"}]}],n:50,r:".rightPartial",l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-expand",g:1},{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}},{n:"expand",t:72,f:{r:[],s:'[{axis:"x"}]'},v:"t0"}]}],n:50,x:{r:[".items.length","@this",".items"],s:"_2&&_0&&_1.visibleItems(_2)"}}]}," ",{t:8,r:"children"}],items:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popout-close",g:1},{n:["click"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1),false]"}}],f:["❌ Close"]}],n:50,r:".shrink"}," ",{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-entry",g:1},{t:4,f:[{n:"class-rmenu-item",t:13}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}},{t:4,f:[{n:"class-rmenu-section",t:13}],n:50,x:{r:[".type"],s:'_0==="section"'},l:1},{t:4,f:[{n:"class-rmenu-container",t:13}],n:50,x:{r:[".type"],s:'_0==="container"'},l:1},{n:"class-rmenu-expanded",t:13,f:[{t:2,r:".open"}]},{n:"class-rmenu-popout",t:13,f:[{t:2,x:{r:[".type",".popout"],s:'(!_0||_0==="item")&&_1'}}]},{t:4,f:[{n:"pop",t:72,v:"t0"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1)]"}}],n:50,r:".open"}," "],n:50,r:".popout"},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:["~/noExpand"],s:"!_0"},l:1},{t:4,f:[{t:8,r:".refPartial"}],n:50,r:".refPartial"},{t:4,f:[{n:"ref",t:71,f:{r:[".ref"],s:"[_0]"}}],n:50,x:{r:[".ref"],s:'typeof _0==="string"'},l:1},{t:4,f:[{t:16,r:".extra"}],n:50,r:".extra"}],f:[{t:8,x:{r:[".type"],s:'_0||"item"'}}," ",{t:4,f:[{t:2,x:{r:["@this","@context"],s:"_0._itemRendered((_1))"}}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}}]}],n:50,x:{r:["~/",".condition","."],s:'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())'}}],n:52,r:".items"}]}},css:function(data){return[function(data){var primary=Object.assign({},data("raui.primary"),data("raui.menu.primary"));primary.popout=Object.assign({},data("raui.menu.popout"),data("raui.menu.primary.popout"));var base="\n .rmenu-wrapper {\n position: relative;\n z-index: 1;\n }\n .rmenu-wrapper.rmenu-vertical {\n min-height: 100%;\n }\n .rmenu {\n "+(data("raui.menu.font")?"font-family: "+data("raui.menu.font")+";":"")+"\n color: "+(primary.bg||"#fff")+";\n background-color: "+(primary.fg||"#222")+";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n .rmenu-wrapper.alt > .rmenu {\n color: "+(primary.fga||"#222")+";\n background-color: "+(primary.bg||"#fff")+";\n }\n .rmenu-inner {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-item {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n transition: border 0.2s ease-in-out;\n }\n .rmenu-item:hover > .rmenu-main {\n background-color: "+(primary.fga||"#07e")+";\n color: "+(primary.bg||"#fff")+";\n }\n .rmenu-disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n .rmenu-popout {\n border: none;\n }\n .rmenu-expanded {\n border-top: 0.0625em solid "+(primary.bc||"#ccc")+";\n border-bottom: 0.0625em solid "+(primary.bc||"#ccc")+";\n }\n .rmenu-popout.rmenu-expanded {\n border: none;\n }\n .rmenu-popout .rmenu-popout.rmenu-expanded {\n background-color: "+(primary.popout.bga||primary.bg||"#fff")+";\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n }\n .rmenu-popitems {\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-main {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n user-select: none;\n transition: 0.3s ease-in-out;\n transition-property: color, background-color;\n display: flex;\n align-items: center;\n min-height: 1em;\n }\n .rmenu-main.rmenu-active, .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(primary.fga||"#07e")+";\n background-color: "+(primary.bg||"#fff")+";\n }\n .rmenu-popout .rmenu-entry .rmenu-main.rmenu-active, .rmenu-popout .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(primary.popout.bg||primary.bg||"#fff")+";\n background-color: "+(primary.popout.fga||primary.fga||"#07e")+";\n }\n .rmenu-wrapper.alt .rmenu-main.rmenu.active {\n color: "+(primary.bg||"#fff")+";\n background-color: "+(primary.fg||"#222")+";\n }\n .rmenu-popout .rmenu-items .rmenu-item:hover > .rmenu-main {\n background-color: "+(primary.popout.bga||"#f4f4f4")+";\n color: "+(primary.popout.fg||"#222")+";\n }\n \n .rmenu-items {\n display: block;\n }\n .rmenu-right {\n padding-right: 0.4em; \n }\n .rmenu-left {\n padding-left: 0.4em;\n }\n .rmenu-expand {\n width: 1.5em;\n height: 1.5em;\n padding-left: 0.5em;\n cursor: pointer;\n position: relative;\n }\n .rmenu-expand:before {\n position: absolute;\n display: inline-block;\n top: 0.35em;\n content: ' ';\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out;\n box-sizing: border-box;\n border-width: 0.25em;\n border-style: solid;\n border-left-color: transparent;\n border-top-color: transparent;\n }\n .rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-135deg);\n top: 0.65em;\n }\n \n .rmenu-popout > .rmenu-items {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: "+(primary.popout.bg||primary.bg||"#fff")+";\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n box-sizing: border-box;\n border-right: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n z-index: -1;\n transition: box-shadow 0.2s ease-in-out;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: 100%;\n z-index: initial;\n box-shadow: 0.2em 0 0.2em rgba(0, 0, 0, 0.2);\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: calc(100% + 1px);\n }\n \n .rmenu-popout > .rmenu-items.rmenu-shrink {\n left: 100%;\n z-index: 1;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink,\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink {\n left: 0;\n }\n \n .rmenu-popout > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-45deg);\n top: 0.4em;\n }\n \n .rmenu-popout.rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(135deg);\n left: 0.75em;\n }\n \n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items {\n height: 100%;\n width: calc(100% + 1px);\n top: 0px;\n }\n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items.rmenu-shrink {\n height: 100%;\n }\n \n .rmenu-popout-close {\n color: "+(primary.popout.fga||primary.fga||"#07e")+";\n display: block;\n padding: 0.5em;\n cursor: pointer;\n }\n \n .rmenu-title {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n padding: 0.5em;\n flex-grow: 1;\n }\n .rmenu-disabled > .rmenu-title {\n cursor: not-allowed;\n }\n .rmenu-item h1, .rmenu-item h2, .rmenu-item h3, .rmenu-item h4 {\n margin: 0;\n }\n \n .rmenu-section {\n padding: 0 0 0.75em 0;\n }\n .rmenu-section > .rmenu-main {\n cursor: default;\n font-size: 0.75em;\n opacity: 0.7;\n margin-bottom: 0.25em;\n }\n .rmenu-section > .rmenu-main .rmenu-title {\n cursor: default;\n }\n .rmenu-popout .rmenu-section:first-child > .rmenu-main {\n padding-top: 0;\n }\n .rmenu-popout .rmenu-section > .rmenu-main > .rmenu-title {\n font-size: 1.5em;\n text-align: center;\n padding: 0.75em;\n opacity: 1;\n font-weight: bold;\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n background-color: "+(primary.popout.bga||primary.bga||"#f4f4f4")+";\n border-bottom: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n border-top: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n }\n \n .rmenu-container {\n box-sizing: border-box;\n }\n \n .rmenu-container-pad {\n padding: 0.3em 0.3em 0.8em 0.3em;\n }\n ";return base}.call(this,data)].join(" ")},cssId:"menu",noCssTransform:true,noIntro:true,nestedTransitions:false,on:{construct:construct,config:function config(){if(this._items){this.set("items",(this.get("items")||[]).concat(this._items),{shuffle:true})}}},attributes:["noExpand"],use:[expand(),clickout()],decorators:{ref:function ref(node,name){var r=this;var nm=name;if(!r.refs){r.refs={}}var handle={update:function update(name){if(r.refs[nm]===handle){delete r.refs[nm]}nm=name;r.refs[nm]=handle},teardown:function teardown(){if(r.refs[nm]===handle){delete r.refs[nm]}}};handle.ctx=r.getContext(node);r.refs[nm]=handle;return handle}},transitions:{pop:function pop(t,params){var p=t.processParams(params,{duration:200,easing:"easeInOut"});var ctx=this.getContext(t.node);var shrink=ctx.get(".shrink");if(t.isIntro){var rect=t.node.getBoundingClientRect();function findParent(){var n=t.node.parentNode;while(n&&n.classList){if(n.classList.contains("rmenu")){return n}else if(n.parentNode.classList.contains("rmenu-popout")){return n}n=n.parentNode}}if(rect.left+rect.width>window.innerWidth){setTimeout(function(){return ctx.set(".shrink",true)});shrink=true;findParent().style.overflowX="hidden"}else if(shrink){setTimeout(function(){return ctx.set(".shrink",false)});findParent().style.overflowX="";shrink=false}else{findParent().style.overflowX=""}}else{setTimeout(function(){return ctx.set("shrink",false)})}if(t.isIntro){if(shrink){t.setStyle("left","100%");return t.animateStyle("left",0,p)}else{t.setStyle("left",0);t.setStyle("z-index",-1);return t.animateStyle("left","100%",p)}}else{if(shrink){t.setStyle("left",0);return t.animateStyle("left","100%",p)}else{t.setStyle("left","100%");t.setStyle("z-index",-1);return t.animateStyle("left",0,p)}}}}});var justSpace=/^\s*$/;function construct(){var cmp=this.component;if(!cmp){return}var tpl=cmp.template.f||[];var attrs=cmp.template.m?cmp.template.m.slice():[];var t=cmp.template;cmp.template={e:t.e,f:t.f,t:t.t,m:attrs};function item(el){if(el.e!=="item"&&el.e!=="section"&&el.e!=="container"){return}var res={};var as=[];var title;if(el.e!=="item"){res.type=el.e}el.m&&el.m.forEach(function(a){if(a.n==="title"){if(typeof a.f==="string"){res.title=a.f}else{res.titlePartial={t:a.f}}}else if(a.t===70&&a.n[0]==="action"){res.actionPartial={t:[{n:["click"],f:a.f,t:a.t}]}}else if(a.n==="guard"&&a.f&&a.f.length===1&&a.f[0].t===2){var cnd="_cnd"+attrs.length;res.condition=cnd;attrs.push({t:13,n:cnd,f:a.f})}else if(a.n==="ref"){if(typeof a.f==="string"){res.ref=a.f}else if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$1="_cnd"+attrs.length;attrs.push({t:13,n:cnd$1,f:a.f});res.refPartials={t:[{t:71,n:"ref",f:{r:cnd$1,s:"[_0]"}}]}}}else if(a.n==="active"){if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$2="_cnd"+attrs.length;res.activeRef=cnd$2;attrs.push({t:13,n:cnd$2,f:a.f})}}else if(a.n==="open"){res.open=true}else if(a.n==="popout"){res.popout=true}else if(el.e==="container"&&a.n==="pad"){res.pad=true}else if(a.n==="disabled"){if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$3="_cnd"+attrs.length;res.disabledRef=cnd$3;attrs.push({t:13,n:cnd$3,f:a.f})}else if(a.f===0){res.disabled=true}}else{as.push(a)}});if(as.length){res.extra={t:as}}if(el.e==="container"){res.contentPartial={t:el.f};res.extra=as;return res}el.f&&el.f.forEach(function(e){if(e.e==="title"){if(e.f.length===1&&typeof e.f[0]==="string"){res.title=e.f[0]}else{res.titlePartial={t:e.f}}}else if(e.e==="item"||e.e==="section"||e.e==="container"){var i=item(e);if(i){(res.items||(res.items=[])).push(i)}}else if(e.e==="left"){res.leftPartial={t:e.f}}else if(e.e==="right"){res.rightPartial={t:e.f}}else if(typeof e!=="string"||!justSpace.test(e)){if(!title){title=[]}title.push(e)}});if(!res.titlePartial&&title){res.titlePartial={t:title}}title=null;return res}var list=[];tpl.forEach(function(e){var i=item(e);if(i){list.push(i)}});this._items=list}var Handle=function Handle(menu,parent,item){this.menu=menu;this.parent=parent;this.item=item};var prototypeAccessors={keypath:{configurable:true},action:{configurable:true},active:{configurable:true},disabled:{configurable:true},items:{configurable:true},ref:{configurable:true}};prototypeAccessors.keypath.get=function(){if(this.removed){return}if(!this.parent){return"items."+this.menu.get("items").indexOf(this.item)}var path=this.parent.keypath+".items";var parent=this.menu.get(path);return path+"."+parent.indexOf(this.item)};prototypeAccessors.action.get=function(){if(this.removed){return}return this.item.action};prototypeAccessors.action.set=function(v){return this.set(".action",v)};prototypeAccessors.active.get=function(){if(this.removed){return}var item=this.item;if(item.activeRef){return this.menu.get(item.activeRef)}else if(typeof item.active==="function"){return item.active()}else{return item.active}};prototypeAccessors.active.set=function(v){if(this.removed){return}var item=this.item;if(item.activeRef){return this.menu.set(item.activeRef,v)}else{return this.set(".active",v)}};prototypeAccessors.disabled.get=function(){if(this.removed){return}return this.get(".disabled")};prototypeAccessors.disabled.set=function(v){if(this.removed){return}return this.set(".disabled",v)};prototypeAccessors.items.get=function(){var this$1=this;if(this.item.items){return this.item.items.map(function(item){return new Handle(this$1.menu,this$1,item)})}else{return[]}};prototypeAccessors.ref.get=function(){if(this.removed){return}return this.item.ref};prototypeAccessors.ref.set=function(v){return this.set(".ref",v)};Handle.prototype.addItem=function addItem(item,idx){if(this.removed){return false}var items=this.keypath+".items";if(typeof idx==="number"){this.menu.splice(items,idx,0,item)}else{this.menu.push(items,item)}return new Handle(this.menu,this,item)};Handle.prototype.open=function open(){if(this.removed){return false}this.menu.set(this.keypath+".open",true)};Handle.prototype.close=function close(){if(this.removed){return false}this.menu.set(this.keypath+".open",false)};Handle.prototype.remove=function remove(){if(this.removed){return false}var parentPath=(this.parent?this.parent.keypath+".":"")+"items";var parent=this.menu.get(parentPath);this.menu.splice(parentPath,parent.indexOf(this.item),1);this.removed=true;return true};Handle.prototype.get=function get(keypath){if(this.removed){return false}if(!keypath){return this.menu.get(this.keypath)}var key=keypath.replace(/^[\.\/]*/,"");return this.menu.get(this.keypath+"."+key)};Handle.prototype.set=function set(keypath,value){if(this.removed){return false}var key=keypath.replace(/^[\.\/]*/,"");return this.menu.set(this.keypath+"."+key,value)};Object.defineProperties(Handle.prototype,prototypeAccessors);function close(instance,path){var item=instance.get(path);if(item.open&&item.popout){instance.toggle(path+".open")}var items;if(items=instance.get(path+".items")){for(var i=0;i<items.length;i++){close(instance,path+".items."+i)}}}export function plugin(opts){if(opts===void 0)opts={};return function(ref){var instance=ref.instance;instance.components[opts.name||"menu"]=Menu}}globalRegister("RMMenu","components",Menu);export default plugin; | ||
import Ractive from"ractive";import expand from"./transition-expand";import clickout from"./event-clickout";import globalRegister from"./globalRegister";function findRef(items,ref){for(var i=0;i<items.length;i++){if(items[i].ref===ref){return[items[i]]}else if(items[i].items){var res=findRef(items[i].items,ref);if(res){res.unshift(items[i]);return res}}}}export var Menu=function(Ractive){function Menu(opts){Ractive.call(this,opts);this.refs={}}if(Ractive)Menu.__proto__=Ractive;Menu.prototype=Object.create(Ractive&&Ractive.prototype);Menu.prototype.constructor=Menu;Menu.prototype.addItem=function addItem(item,idx){if(typeof idx==="number"){this.splice("items",idx,0,item)}else{this.push("items",item)}return new Handle(this,null,item)};Menu.prototype.visibleItems=function visibleItems(items){var this$1=this;return items.filter(function(i){return i.condition!==false&&(typeof i.condition!=="string"||this$1.get(i.condition)!==false)}).length};Menu.prototype.getHandle=function getHandle(what){var this$1=this;var ctx;if(typeof what==="string"){if(this.refs[what]){ctx=this.refs[what].ctx}else{var el=this.find(what);if(el){ctx=this.getContext(el)}else{var path=findRef(this.get("items"),what);if(path){return path.reduce(function(a,c){return new Handle(this$1,a,c)},null)}}}}else if(what&&what.parentNode){ctx=this.getContext(what)}else if(what&&what.decorators){ctx=what}if(ctx){var path$1=[ctx.get()];var str="../../";while(ctx.resolve(str)!==""){path$1.unshift(ctx.get(str));str+="../../"}return path$1.reduce(function(a,c){return new Handle(this$1,a,c)},null)}};Menu.prototype.popAllIn=function popAllIn(path){if(!path){path=""}var item=this.get(path);if(item&&item.items){for(var i=0;i<item.items.length;i++){this.popAllIn((path?path+".":"")+"items."+i)}}if(item.open&&item.popout){this.set((path?path+".":"")+"open",false)}};Menu.prototype.popSiblingsIn=function popSiblingsIn(ctx){var me=ctx.resolve();var items=ctx.get("../");if(items){for(var i=0;i<items.length;i++){if(me===ctx.resolve("../"+i)){continue}if(items[i].open&&items[i].popout){ctx.toggle("../"+i+".open")}}}};Menu.prototype._actioned=function _actioned(){this.fire("action");this.popAllIn()};Menu.prototype._itemRendered=function _itemRendered(ctx){var this$1=this;setTimeout(function(){return this$1.fire("item",ctx,this$1.getHandle(ctx))});return""};Menu.prototype.childActive=function childActive(path){var item=this.get(path);if(item&&item.items){for(var i=0;i<item.items.length;i++){if(this.get(path+".items."+i+".active")===true||typeof item.items[i].active==="function"&&item.items[i].active()||this.get(path+".items."+i+".activeRef")&&this.get(item.items[i].activeRef)||this.childActive(path+".items."+i)){return true}}}};return Menu}(Ractive);Ractive.extendWith(Menu,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-wrapper",g:1},{t:16,r:"extra-attributes"},{n:"class-rmenu-vertical",t:13,f:[{t:2,x:{r:["~/horizontal"],s:"!_0"}}]},{n:"class-rmenu-horizontal",t:13,f:[{t:2,r:"~/horizontal"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-inner",g:1}],f:[{t:8,r:"items"}]}]}]}],e:{"!_0":function(_0){return!_0},"_0||_1":function(_0,_1){return _0||_1},'_0&&(_1||_2==="section")':function(_0,_1,_2){return _0&&(_1||_2==="section")},"_0?_3.active(_1.getHandle((_2))):_3.active()":function(_0,_1,_2,_3){return _0?_3.active(_1.getHandle(_2)):_3.active()},'typeof _0==="function"':function(_0){return typeof _0==="function"},'typeof _0==="boolean"':function(_0){return typeof _0==="boolean"},"_0.childActive(_1)":function(_0,_1){return _0.childActive(_1)},"_0!=null":function(_0){return _0!=null},"[_0.action(),_1._actioned()]":function(_0,_1){return[_0.action(),_1._actioned()]},"[_0._actioned()]":function(_0){return[_0._actioned()]},'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]':function(_0,_1,_2){return[_0&&_1.popSiblingsIn(_2),_2.toggle(".open"),false]},"_0||(_1&&_2[_1])":function(_0,_1,_2){return _0||_1&&_2[_1]},'[{axis:"x"}]':function(){return[{axis:"x"}]},"_2&&_0&&_1.visibleItems(_2)":function(_0,_1,_2){return _2&&_0&&_1.visibleItems(_2)},"[_0.popAllIn(_1),false]":function(_0,_1){return[_0.popAllIn(_1),false]},'!_0||_0==="item"':function(_0){return!_0||_0==="item"},'_0==="section"':function(_0){return _0==="section"},'_0==="container"':function(_0){return _0==="container"},'(!_0||_0==="item")&&_1':function(_0,_1){return(!_0||_0==="item")&&_1},"[_0.popAllIn(_1)]":function(_0,_1){return[_0.popAllIn(_1)]},"[_0]":function(_0){return[_0]},'typeof _0==="string"':function(_0){return typeof _0==="string"},'_0||"item"':function(_0){return _0||"item"},"_0._itemRendered((_1))":function(_0,_1){return _0._itemRendered(_1)},'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())':function(_0,_1,_2){return _1===undefined||typeof _1==="boolean"&&_1||typeof _1==="string"&&_0[_1]||typeof _1==="function"&&_2.condition()}},p:{container:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:3,r:".content"}]}],n:50,r:".pad"},{t:4,f:[{t:3,r:".content"}],n:51,l:1}],n:50,r:".content"},{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:16,r:".contentPartial"}]}],n:50,r:".pad"},{t:4,f:[{t:16,r:".contentPartial"}],n:51,l:1}],n:50,r:".contentPartial",l:1}],section:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1}],f:[{t:4,f:[{t:2,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}]}],n:50,x:{r:[".title",".titlePartial"],s:"_0||_1"}}," ",{t:8,r:"children"}],children:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-items",g:1},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:[".popout"],s:"!_0"}},{t:4,f:[{n:"pop",t:72,v:"t0"}],n:51,l:1},{n:"class-rmenu-shrink",t:13,f:[{t:2,r:".shrink"}]}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popitems",g:1}],f:[{t:8,r:"items"}]}],n:50,r:".popout"},{t:4,f:[{t:8,r:"items"}],n:51,l:1}]}],n:50,x:{r:[".items.length",".open",".type"],s:'_0&&(_1||_2==="section")'}}],item:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".activeRef"}]}}]}],n:50,r:".activeRef"},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:[".active.length","@this","@context","."],s:"_0?_3.active(_1.getHandle((_2))):_3.active()"}}]}],n:50,x:{r:[".active"],s:'typeof _0==="function"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,r:".active"}]}],n:50,x:{r:[".active"],s:'typeof _0==="boolean"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:["@this","@keypath"],s:"_0.childActive(_1)"}}]}],n:50,r:".popout",l:1},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,r:".disabled"}]}],n:50,x:{r:[".disabled"],s:"_0!=null"}},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".disabledRef"}]}}]}],n:50,r:".disabledRef",l:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-left",g:1}],f:[{t:3,r:".left"}]}],n:50,r:".left"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-left",g:1}],f:[{t:16,r:".leftPartial"}]}],n:50,r:".leftPartial",l:1}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1},{t:4,f:[{t:4,f:[{n:["click"],t:70,f:{r:[".","@this"],s:"[_0.action(),_1._actioned()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}},{t:4,f:[{t:16,r:".actionPartial"},{n:["click"],t:70,f:{r:["@this"],s:"[_0._actioned()]"}}],n:50,r:".actionPartial",l:1},{t:4,f:[{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}}],n:50,r:".items.length",l:1}],n:51,x:{r:[".disabled",".disabledRef","~/"],s:"_0||(_1&&_2[_1])"}}],f:[{t:4,f:[{t:3,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-right",g:1}],f:[{t:3,r:".right"}]}],n:50,r:".right"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-right",g:1}],f:[{t:16,r:".rightPartial"}]}],n:50,r:".rightPartial",l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-expand",g:1},{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}},{n:"expand",t:72,f:{r:[],s:'[{axis:"x"}]'},v:"t0"}]}],n:50,x:{r:[".items.length","@this",".items"],s:"_2&&_0&&_1.visibleItems(_2)"}}]}," ",{t:8,r:"children"}],items:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popout-close",g:1},{n:["click"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1),false]"}}],f:["❌ Close"]}],n:50,r:".shrink"}," ",{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-entry",g:1},{t:4,f:[{n:"class-rmenu-item",t:13}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}},{t:4,f:[{n:"class-rmenu-section",t:13}],n:50,x:{r:[".type"],s:'_0==="section"'},l:1},{t:4,f:[{n:"class-rmenu-container",t:13}],n:50,x:{r:[".type"],s:'_0==="container"'},l:1},{n:"class-rmenu-expanded",t:13,f:[{t:2,r:".open"}]},{n:"class-rmenu-popout",t:13,f:[{t:2,x:{r:[".type",".popout"],s:'(!_0||_0==="item")&&_1'}}]},{t:4,f:[{n:"pop",t:72,v:"t0"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1)]"}}],n:50,r:".open"}," "],n:50,r:".popout"},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:["~/noExpand"],s:"!_0"},l:1},{t:4,f:[{t:8,r:".refPartial"}],n:50,r:".refPartial"},{t:4,f:[{n:"ref",t:71,f:{r:[".ref"],s:"[_0]"}}],n:50,x:{r:[".ref"],s:'typeof _0==="string"'},l:1},{t:4,f:[{t:16,r:".extra"}],n:50,r:".extra"}],f:[{t:8,x:{r:[".type"],s:'_0||"item"'}}," ",{t:4,f:[{t:2,x:{r:["@this","@context"],s:"_0._itemRendered((_1))"}}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}}]}],n:50,x:{r:["~/",".condition","."],s:'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())'}}],n:52,r:".items"}]}},css:function(data){return[function(data){var primary=Object.assign({},data("raui.primary"),data("raui.menu.primary"));primary.popout=Object.assign({},data("raui.menu.popout"),data("raui.menu.primary.popout"));var base="\n .rmenu-wrapper {\n position: relative;\n z-index: 1;\n }\n .rmenu-wrapper.rmenu-vertical {\n min-height: 100%;\n }\n .rmenu {\n "+(data("raui.menu.font")?"font-family: "+data("raui.menu.font")+";":"")+"\n color: "+(primary.bg||"#fff")+";\n background-color: "+(primary.fg||"#222")+";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n .rmenu-wrapper.alt > .rmenu {\n color: "+(primary.fga||"#222")+";\n background-color: "+(primary.bg||"#fff")+";\n }\n .rmenu-inner {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-item {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n transition: border 0.2s ease-in-out;\n }\n .rmenu-item:hover > .rmenu-main {\n background-color: "+(primary.fga||"#07e")+";\n color: "+(primary.bg||"#fff")+";\n }\n .rmenu-disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n .rmenu-popout {\n border: none;\n }\n .rmenu-expanded {\n border-top: 0.0625em solid "+(primary.bc||"#ccc")+";\n border-bottom: 0.0625em solid "+(primary.bc||"#ccc")+";\n }\n .rmenu-popout.rmenu-expanded {\n border: none;\n }\n .rmenu-popout .rmenu-popout.rmenu-expanded {\n background-color: "+(primary.popout.bga||primary.bg||"#fff")+";\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n }\n .rmenu-popitems {\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-main {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n user-select: none;\n transition: 0.3s ease-in-out;\n transition-property: color, background-color;\n display: flex;\n align-items: center;\n min-height: 1em;\n }\n .rmenu-main.rmenu-active, .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(primary.fga||"#07e")+";\n background-color: "+(primary.bg||"#fff")+";\n }\n .rmenu-popout .rmenu-entry .rmenu-main.rmenu-active, .rmenu-popout .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(primary.popout.bg||primary.bg||"#fff")+";\n background-color: "+(primary.popout.fga||primary.fga||"#07e")+";\n }\n .rmenu-wrapper.alt .rmenu-main.rmenu.active {\n color: "+(primary.bg||"#fff")+";\n background-color: "+(primary.fg||"#222")+";\n }\n .rmenu-popout .rmenu-items .rmenu-item:hover > .rmenu-main {\n background-color: "+(primary.popout.bga||"#f4f4f4")+";\n color: "+(primary.popout.fg||"#222")+";\n }\n \n .rmenu-items {\n display: block;\n }\n .rmenu-right {\n padding-right: 0.4em; \n }\n .rmenu-left {\n padding-left: 0.4em;\n }\n .rmenu-expand {\n width: 1.5em;\n height: 1.5em;\n padding-left: 0.5em;\n cursor: pointer;\n position: relative;\n }\n .rmenu-expand:before {\n position: absolute;\n display: inline-block;\n top: 0.35em;\n content: ' ';\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out;\n box-sizing: border-box;\n border-width: 0.25em;\n border-style: solid;\n border-left-color: transparent;\n border-top-color: transparent;\n }\n .rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-135deg);\n top: 0.65em;\n }\n \n .rmenu-popout > .rmenu-items {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: "+(primary.popout.bg||primary.bg||"#fff")+";\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n box-sizing: border-box;\n border-right: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n z-index: -1;\n transition: box-shadow 0.2s ease-in-out;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: 100%;\n z-index: initial;\n box-shadow: 0.2em 0 0.2em rgba(0, 0, 0, 0.2);\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: calc(100% + 1px);\n }\n \n .rmenu-popout > .rmenu-items.rmenu-shrink {\n left: 100%;\n z-index: 1;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink,\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink {\n left: 0;\n }\n \n .rmenu-popout > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-45deg);\n top: 0.4em;\n }\n \n .rmenu-popout.rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(135deg);\n left: 0.75em;\n }\n \n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items {\n height: 100%;\n width: calc(100% + 1px);\n top: 0px;\n }\n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items.rmenu-shrink {\n height: 100%;\n }\n \n .rmenu-popout-close {\n color: "+(primary.popout.fga||primary.fga||"#07e")+";\n display: block;\n padding: 0.5em;\n cursor: pointer;\n }\n \n .rmenu-title {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n padding: 0.5em;\n flex-grow: 1;\n }\n .rmenu-disabled > .rmenu-title {\n cursor: not-allowed;\n }\n .rmenu-item h1, .rmenu-item h2, .rmenu-item h3, .rmenu-item h4 {\n margin: 0;\n }\n \n .rmenu-section {\n padding: 0 0 0.75em 0;\n }\n .rmenu-section > .rmenu-main {\n cursor: default;\n font-size: 0.75em;\n opacity: 0.7;\n margin-bottom: 0.25em;\n }\n .rmenu-section > .rmenu-main .rmenu-title {\n cursor: default;\n }\n .rmenu-popout .rmenu-section:first-child > .rmenu-main {\n padding-top: 0;\n }\n .rmenu-popout .rmenu-section > .rmenu-main > .rmenu-title {\n font-size: 1.5em;\n text-align: center;\n padding: 0.75em;\n opacity: 1;\n font-weight: bold;\n color: "+(primary.popout.fg||primary.fg||"#222")+";\n background-color: "+(primary.popout.bga||primary.bga||"#f4f4f4")+";\n border-bottom: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n border-top: 1px solid "+(primary.popout.bc||primary.bc||"#ccc")+";\n }\n \n .rmenu-container {\n box-sizing: border-box;\n }\n \n .rmenu-container-pad {\n padding: 0.3em 0.3em 0.8em 0.3em;\n }\n ";return base}.call(this,data)].join(" ")},cssId:"menu",noCssTransform:true,noIntro:true,nestedTransitions:false,on:{construct:construct,config:function config(){if(this._items){this.set("items",(this.get("items")||[]).concat(this._items),{shuffle:true})}}},attributes:["noExpand"],use:[expand(),clickout()],decorators:{ref:function ref(node,name){var r=this;var nm=name;if(!r.refs){r.refs={}}var handle={update:function update(name){if(r.refs[nm]===handle){delete r.refs[nm]}nm=name;r.refs[nm]=handle},teardown:function teardown(){if(r.refs[nm]===handle){delete r.refs[nm]}}};handle.ctx=r.getContext(node);r.refs[nm]=handle;return handle}},transitions:{pop:function pop(t,params){var p=t.processParams(params,{duration:200,easing:"easeInOut"});var ctx=this.getContext(t.node);var shrink=ctx.get(".shrink");if(t.isIntro){var rect=t.node.getBoundingClientRect();function findParent(){var n=t.node.parentNode;while(n&&n.classList){if(n.classList.contains("rmenu")){return n}else if(n.parentNode.classList.contains("rmenu-popout")){return n}n=n.parentNode}}if(rect.left+rect.width>window.innerWidth){setTimeout(function(){return ctx.set(".shrink",true)});shrink=true;findParent().style.overflowX="hidden"}else if(shrink){setTimeout(function(){return ctx.set(".shrink",false)});findParent().style.overflowX="";shrink=false}else{findParent().style.overflowX=""}}else{setTimeout(function(){return ctx.set("shrink",false)})}if(t.isIntro){if(shrink){t.setStyle("left","100%");return t.animateStyle("left",0,p)}else{t.setStyle("left",0);t.setStyle("z-index",-1);return t.animateStyle("left","100%",p)}}else{if(shrink){t.setStyle("left",0);return t.animateStyle("left","100%",p)}else{t.setStyle("left","100%");t.setStyle("z-index",-1);return t.animateStyle("left",0,p)}}}}});var justSpace=/^\s*$/;function construct(){var cmp=this.component;if(!cmp){return}var tpl=cmp.template.f||[];var attrs=cmp.template.m?cmp.template.m.slice():[];var t=cmp.template;cmp.template={e:t.e,f:t.f,t:t.t,m:attrs};function item(el){if(el.e!=="item"&&el.e!=="section"&&el.e!=="container"){return}var res={};var as=[];var title;if(el.e!=="item"){res.type=el.e}el.m&&el.m.forEach(function(a){if(a.n==="title"){if(typeof a.f==="string"){res.title=a.f}else{res.titlePartial={t:a.f}}}else if(a.t===70&&a.n[0]==="action"){res.actionPartial={t:[{n:["click"],f:a.f,t:a.t}]}}else if(a.n==="guard"&&a.f&&a.f.length===1&&a.f[0].t===2){var cnd="_cnd"+attrs.length;res.condition=cnd;attrs.push({t:13,n:cnd,f:a.f})}else if(a.n==="ref"){if(typeof a.f==="string"){res.ref=a.f}else if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$1="_cnd"+attrs.length;attrs.push({t:13,n:cnd$1,f:a.f});res.refPartials={t:[{t:71,n:"ref",f:{r:cnd$1,s:"[_0]"}}]}}}else if(a.n==="active"){if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$2="_cnd"+attrs.length;res.activeRef=cnd$2;attrs.push({t:13,n:cnd$2,f:a.f})}}else if(a.n==="open"){res.open=true}else if(a.n==="popout"){res.popout=true}else if(el.e==="container"&&a.n==="pad"){res.pad=true}else if(a.n==="disabled"){if(a.f&&a.f.length===1&&a.f[0].t===2){var cnd$3="_cnd"+attrs.length;res.disabledRef=cnd$3;attrs.push({t:13,n:cnd$3,f:a.f})}else if(a.f===0){res.disabled=true}}else{as.push(a)}});if(as.length){res.extra={t:as}}if(el.e==="container"){res.contentPartial={t:el.f};res.extra=as;return res}el.f&&el.f.forEach(function(e){if(e.e==="title"){if(e.f.length===1&&typeof e.f[0]==="string"){res.title=e.f[0]}else{res.titlePartial={t:e.f}}}else if(e.e==="item"||e.e==="section"||e.e==="container"){var i=item(e);if(i){(res.items||(res.items=[])).push(i)}}else if(e.e==="left"){res.leftPartial={t:e.f}}else if(e.e==="right"){res.rightPartial={t:e.f}}else if(typeof e!=="string"||!justSpace.test(e)){if(!title){title=[]}title.push(e)}});if(!res.titlePartial&&title){res.titlePartial={t:title}}title=null;return res}var list=[];tpl.forEach(function(e){var i=item(e);if(i){list.push(i)}});this._items=list}var Handle=function Handle(menu,parent,item){this.menu=menu;this.parent=parent;this.item=item};var prototypeAccessors={keypath:{configurable:true},action:{configurable:true},active:{configurable:true},disabled:{configurable:true},items:{configurable:true},ref:{configurable:true}};prototypeAccessors.keypath.get=function(){if(this.removed){return}if(!this.parent){return"items."+this.menu.get("items").indexOf(this.item)}var path=this.parent.keypath+".items";var parent=this.menu.get(path);return path+"."+parent.indexOf(this.item)};prototypeAccessors.action.get=function(){if(this.removed){return}return this.item.action};prototypeAccessors.action.set=function(v){return this.set(".action",v)};prototypeAccessors.active.get=function(){if(this.removed){return}var item=this.item;if(item.activeRef){return this.menu.get(item.activeRef)}else if(typeof item.active==="function"){return item.active()}else{return item.active}};prototypeAccessors.active.set=function(v){if(this.removed){return}var item=this.item;if(item.activeRef){return this.menu.set(item.activeRef,v)}else{return this.set(".active",v)}};prototypeAccessors.disabled.get=function(){if(this.removed){return}return this.get(".disabled")};prototypeAccessors.disabled.set=function(v){if(this.removed){return}return this.set(".disabled",v)};prototypeAccessors.items.get=function(){var this$1=this;if(this.item.items){return this.item.items.map(function(item){return new Handle(this$1.menu,this$1,item)})}else{return[]}};prototypeAccessors.ref.get=function(){if(this.removed){return}return this.item.ref};prototypeAccessors.ref.set=function(v){return this.set(".ref",v)};Handle.prototype.addItem=function addItem(item,idx){if(this.removed){return false}var items=this.keypath+".items";if(typeof idx==="number"){this.menu.splice(items,idx,0,item)}else{this.menu.push(items,item)}return new Handle(this.menu,this,item)};Handle.prototype.open=function open(){if(this.removed){return false}this.menu.set(this.keypath+".open",true)};Handle.prototype.close=function close(){if(this.removed){return false}this.menu.set(this.keypath+".open",false)};Handle.prototype.remove=function remove(){if(this.removed){return false}var parentPath=(this.parent?this.parent.keypath+".":"")+"items";var parent=this.menu.get(parentPath);this.menu.splice(parentPath,parent.indexOf(this.item),1);this.removed=true;return true};Handle.prototype.get=function get(keypath){if(this.removed){return false}if(!keypath){return this.menu.get(this.keypath)}var key=keypath.replace(/^[\.\/]*/,"");return this.menu.get(this.keypath+"."+key)};Handle.prototype.set=function set(keypath,value){if(this.removed){return false}var key=keypath.replace(/^[\.\/]*/,"");return this.menu.set(this.keypath+"."+key,value)};Object.defineProperties(Handle.prototype,prototypeAccessors);function close(instance,path){var item=instance.get(path);if(item.open&&item.popout){instance.toggle(path+".open")}var items;if(items=instance.get(path+".items")){for(var i=0;i<items.length;i++){close(instance,path+".items."+i)}}}export function plugin(opts){if(opts===void 0)opts={};return function(ref){var instance=ref.instance;instance.components[opts.name||"menu"]=Menu}}globalRegister("RMMenu","components",Menu);export default plugin; |
@@ -459,5 +459,13 @@ import Ractive from 'ractive'; | ||
var ks; | ||
if (opts.regex) { ks = keys.map(function (k) { return typeof k === 'string' ? new RegExp(k) : k; }) } | ||
else if (opts.group) { ks = { group: keys }; } | ||
else { ks = keys.map(function (k) { return ctx.resolve(k); }); } | ||
var keyList; | ||
function setKeys(keys) { | ||
var list = keys.join(','); | ||
if (keyList === list) { return false; } | ||
keyList = list; | ||
if (opts.regex) { ks = keys.map(function (k) { return typeof k === 'string' ? new RegExp(k) : k; }) } | ||
else if (opts.group) { ks = { group: keys }; } | ||
else { ks = keys.map(function (k) { return ctx.resolve(k); }); } | ||
return true; | ||
} | ||
setKeys(keys); | ||
@@ -479,9 +487,14 @@ var levels = opts.levels || Validator.defaults.levels; | ||
var fn; | ||
fn = function () { | ||
v.refresh(ks); | ||
fn = function (ev) { | ||
n.removeEventListener('blur', fn); | ||
n.removeEventListener('input', fn); | ||
tab = null; | ||
if (ev.type === 'blur') { | ||
v.refresh(ks); | ||
hook(); | ||
} | ||
}; | ||
tab = [n, fn]; | ||
n.addEventListener('blur', fn); | ||
n.addEventListener('input', fn); | ||
} | ||
@@ -491,2 +504,3 @@ } | ||
function hook() { | ||
if (tab) { return; } | ||
var level = v.level(ks, true); | ||
@@ -505,2 +519,13 @@ syncClass(node, levels, levels[levelMap[level]]); | ||
var res = { | ||
update: function update() { | ||
var keys = [], len = arguments.length; | ||
while ( len-- ) keys[ len ] = arguments[ len ]; | ||
var old = ks; | ||
if (setKeys(keys)) { | ||
v.unhook(old, hook); | ||
v.hook(ks, hook); | ||
hook(); | ||
} | ||
}, | ||
teardown: function teardown() { | ||
@@ -507,0 +532,0 @@ v.unhook(ks, hook); |
@@ -1,1 +0,1 @@ | ||
import Ractive from"ractive";export var Validator=function Validator(ractive,debounce){if(debounce===void 0)debounce=500;this.ractive=ractive;this.debounce=debounce;this.state={};this.hooks={};this.patternHooks=[];this.groupHooks={};this.checks=[];this.fns=[];this.many=[]};Validator.prototype.check=function check(keys,deps,fn,opts){var ks=Array.isArray(keys)?keys.slice():[keys];var all=ks.concat(Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]);if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}var set=[ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])];this.fns.push(set);var handle=this.ractive.observe(all.join(" "),debounce(this.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}))},this),{init:opts&&opts.init===false?false:true});return{cancel:function cancel(){this.fns.splice(this.fns.indexOf(set),1);handle.cancel()}}};Validator.prototype.checkList=function checkList(path,fn,opts){var this$1=this;var checks={};var len=0;var callback=function(v,o,k){if(!Array.isArray(v)){return}if(v.length!==len){if(len>v.length){for(var i=v.length;i<len;i++){if(checks[i]){checks[i].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();ks.forEach(function(k){this$1.clear(k,true);this$1.notify(k,true,true)});var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)});delete checks[i]}}}else{var loop=function(i){var k$1=path+"."+i;var chks=[];var o$1={check:function(keys,deps,fn,opts){var ks=(Array.isArray(keys)?keys.slice():[keys]).map(function(s){return s[0]==="."?k$1+s:s});var all=ks.concat((Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]).map(function(s){return s[0]==="."?k$1+s:s}));if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}chks.push([ks,this$1.ractive.observe(all.join(" "),debounce(this$1.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}),k$1)},this$1),{init:opts&&opts.init===false?false:true})]);this$1.fns.push([ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])]);ks.prefix=k$1},checkList:function(path,fn,opts){chks.push([[],this$1.checkList(path[0]==="."?k$1+path:path,fn,opts)])},checkDefer:function(path,fn,opts){chks.push([[],this$1.checkDefer(path[0]==="."?k$1+path:path,fn,opts)])}};fn(k$1,o$1,i);checks[i]=chks};for(var i$1=len;i$1<v.length;i$1++)loop(i$1)}len=v.length}};var observer=this.ractive.observe(path,debounce(this.debounce,callback),{init:opts&&opts.init===false?false:true});var paths=path.split(/\s+/);var handle=[paths,function(){paths.forEach(function(path){var arr=this$1.ractive.get(path);if(!Array.isArray(arr)){return}for(var i=0;i<arr.length;i++){callback(arr[i],undefined,path+"."+i)}})}];this.many.push(handle);return{cancel:function cancel(){var this$1=this;var cks=Object.keys(checks);cks.forEach(function(c){cks[c].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)})});var i=this.many.length;while(i--){if(this.many[i][1]===callback){this.many.splice(i,1)}}observer.cancel()}}};Validator.prototype.checkDefer=function checkDefer(path,fn,opts){var this$1=this;var checks={};var callback=function(v,o,k,p){if(v==null&&checks[k]){checks[k].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();ks.forEach(function(k){this$1.clear(k,true);this$1.notify(k,true,true)});var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)});delete checks[k]}else if(v!=null&&!checks[k]){var chks=[];var o$1={check:function(keys,deps,fn,opts){var ks=(Array.isArray(keys)?keys.slice():[keys]).map(function(s){return s[0]==="."?k+s:s});var all=ks.concat((Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]).map(function(s){return s[0]==="."?k+s:s}));if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}chks.push([ks,this$1.ractive.observe(all.join(" "),debounce(this$1.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}),k)},this$1),{init:opts&&opts.init===false?false:true})]);this$1.fns.push([ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])]);ks.prefix=k},checkList:function(path,fn,opts){chks.push([[],this$1.checkList(path[0]==="."?k+path:path,fn,opts)])},checkDefer:function(path,fn,opts){chks.push([[],this$1.checkDefer(path[0]==="."?k+path:path,fn,opts)])}};fn(k,o$1,p);checks[k]=chks}};var observer=this.ractive.observe(path,debounce(this.debounce,callback),{init:opts&&opts.init===false?false:true});var parent=path.split(/\s+/);var handle=[parent,function(){parent.forEach(function(path){var obj=this$1.ractive.get(path);if(obj){callback(obj,undefined,path)}})}];this.many.push(handle);return{cancel:function cancel(){var this$1=this;var cks=Object.keys(checks);cks.forEach(function(c){cks[c].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)})});var i=this.many.length;while(i--){if(this.many[i][1]===callback){this.many.splice(i,1)}}observer.cancel()}}};Validator.prototype.refresh=function refresh(path,recurse){var this$1=this;if(recurse===void 0)recurse=true;var paths=Array.isArray(path)?path:[path];paths.forEach(function(path){if(path.test){for(var i=0;i<this$1.many.length;i++){var ref=this$1.many[i];var kk=ref[0];var refresh=ref[1];kk.find(function(k){return path.test(k)})&&refresh()}}else{for(var i$1=0;i$1<this$1.many.length;i$1++){var ref$1=this$1.many[i$1];var ks=ref$1[0];var refresh$1=ref$1[1];ks.includes(path)&&refresh$1()}}});paths.forEach(function(path){if(path.test){this$1.fns.forEach(function(ref){var ks=ref[0];var deps=ref[1];var fn=ref[2];return ks.find(function(k){return path.test(k)})&&checker.call(this$1,fn,ks,ks.concat(deps).map(function(k){return this$1.ractive.get(k)}),ks.prefix)})}else{this$1.fns.forEach(function(ref){var ks=ref[0];var deps=ref[1];var fn=ref[2];return ks.includes(path)&&checker.call(this$1,fn,ks,ks.concat(deps).map(function(k){return this$1.ractive.get(k)}),ks.prefix)})}})};Validator.prototype.notify=function notify(key,up,recurse){var this$1=this;if(up){var path=Ractive.splitKeypath(key);path.pop();while(path.length){var p=Ractive.joinKeys.apply(Ractive,path);var hooks=this.hooks[p];if(hooks){hooks.forEach(function(h){return h()})}path.pop()}}if(this.hooks[key]){this.hooks[key].forEach(function(h){return h()})}if(recurse){var keys=Object.keys(this.hooks);var start=key+".";keys.forEach(function(k){if(k.startsWith(start)){this$1.hooks[k].forEach(function(h){return h()})}})}var pats=this.patternHooks;for(var i=0;i<pats.length;i++){if(pats[i][0].test(key)){pats[i][1]()}}var groups=[];for(var i$1=0;i$1<this.fns.length;i$1++){var ref=this.fns[i$1];var ks=ref[0];var gs=ref[3];if(gs&&Array.isArray(ks)&&ks.includes(key)){gs.forEach(function(g){return!groups.includes(g)&&groups.push(g)})}}for(var i$2=0;i$2<groups.length;i$2++){var hooks$1=this.groupHooks[groups[i$2]]||[];hooks$1.forEach(function(h){return h()})}};Validator.prototype.clear=function clear(key,recurse){var this$1=this;delete this.state[key];if(recurse){var keys=Object.keys(this.state);var start=key+".";keys.forEach(function(k){if(k.startsWith(start)){delete this$1.state[k]}})}};Validator.prototype.level=function level(key,recurse){if(recurse===void 0)recurse=true;if(key.group){key=keysForGroup(this,key.group)}var keys=Array.isArray(key)?key:[key];var level="none";for(var i=0;i<keys.length;i++){var key$1=keys[i];if(typeof key$1==="string"){var msgs=this.state[key$1]||[];for(var j=0;j<msgs.length;j++){var t=msgs[j][0];if(t==="error"){return"error"}else if(t==="warn"){level="warn"}else if(t==="info"&&level!=="warn"){level="warn"}}}if(recurse||key$1.test){var state=this.state;var ks=Object.keys(state);var start=key$1+".";for(var j$1=0;j$1<ks.length;j$1++){var k=ks[j$1];if(key$1.test?key$1.test(k):k.startsWith(start)){var msgs$1=state[k];for(var c=0;c<msgs$1.length;c++){var t$1=msgs$1[c][0];if(t$1==="error"){return"error"}else if(t$1==="warn"){level="warn"}else if(t$1==="info"&&level!=="warn"){level="info"}}}}}}return level};Validator.prototype.messages=function messages(key,recurse){var this$1=this;if(key.group){key=keysForGroup(this,key.group)}var keys=Array.isArray(key)?key:[key];var res=[];keys.forEach(function(key){if(typeof key==="string"){var msgs=this$1.state[key]||[];res.push.apply(res,msgs)}if(recurse||key.test){var state=this$1.state;var keys=Object.keys(state);var start=key+".";keys.forEach(function(k){if(key.test?key.test(k):k.startsWith(start)){res.push.apply(res,state[k])}})}});return res};Validator.prototype.hook=function hook(keys,fn){var this$1=this;if(keys.group){var gs=Array.isArray(keys.group)?keys.group:[keys.group];gs.forEach(function(g){return(this$1.groupHooks[g]||(this$1.groupHooks[g]=[])).push(fn)})}else{var ks=Array.isArray(keys)?keys:[keys];ks.forEach(function(key){if(typeof key==="string"){(this$1.hooks[key]||(this$1.hooks[key]=[])).push(fn)}else if(key.test){this$1.patternHooks.push([key,fn])}})}return{cancel:function(){return this$1.unhook(keys,fn)}}};Validator.prototype.unhook=function unhook(keys,fn){var this$1=this;if(keys.group){var gs=Array.isArray(keys.group)?keys.group:[keys.group];gs.forEach(function(key){var arr=this$1.groupHooks[key]||[];var idx=arr.indexOf(fn);arr.splice(idx,1)})}else{var ks=Array.isArray(keys)?keys:[keys];ks.forEach(function(key){if(typeof key==="string"){var arr=this$1.hooks[key]||[];var idx=arr.indexOf(fn);arr.splice(idx,1)}else if(key.test){var idx$1=this$1.patternHooks.findIndex(function(h){return h[0]===key&&h[1]===fn});this$1.patternHooks.splice(idx$1,1)}})}};Validator.prototype.decorator=function decorator(opts){if(opts===void 0)opts={};var v=this;return function(node){var keys=[],len=arguments.length-1;while(len-- >0)keys[len]=arguments[len+1];var ctx=this.getLocalContext();var root=ctx.resolve();var ks;if(opts.regex){ks=keys.map(function(k){return typeof k==="string"?new RegExp(k):k})}else if(opts.group){ks={group:keys}}else{ks=keys.map(function(k){return ctx.resolve(k)})}var levels=opts.levels||Validator.defaults.levels;var position=node.style.position;var indicator;if(opts.indicator&&!position){node.style.position="relative"}if(opts.indicator){register();indicator=document.createElement("span");indicator.setAttribute("class","valid-indicator");node.appendChild(indicator)}var tab;if(opts.tab&&!opts.regex){var n=node.querySelector("input,select,textarea");if(n){var fn;fn=function(){v.refresh(ks);n.removeEventListener("blur",fn);tab=null};tab=[n,fn];n.addEventListener("blur",fn)}}function hook(){var level=v.level(ks,true);syncClass(node,levels,levels[levelMap[level]]);if(opts.indicator){if(level!=="none"){indicator.setAttribute("title",messageGroupString(groupMessages(v.messages(ks,true))))}else{indicator.setAttribute("title","")}}}v.hook(ks,hook);if(!opts.tab&&!opts.regex){setTimeout(hook,v.debounce||500)}var res={teardown:function teardown(){v.unhook(ks,hook);syncClass(node,levels);node.style.position=position;if(indicator){indicator.remove()}if(tab){tab[0].removeEventListener("blur",tab[1])}}};if(opts.regex){res.update=function update(){var keys=[],len=arguments.length;while(len--)keys[len]=arguments[len];var next=ctx.resolve();v.unhook(ks,hook);ks=opts.regex?keys.map(function(k){return typeof k==="string"?new RegExp(k):k}):keys.map(function(k){return ctx.resolve(k)});v.hook(ks,hook);root=next;hook()}}else if(!opts.group){res.shuffled=function shuffled(){var next=ctx.resolve();if(next!==root){v.unhook(ks,hook);ks=opts.regex?keys.map(function(k){return typeof k==="string"?new RegExp(k):k}):keys.map(function(k){return ctx.resolve(k)});v.hook(ks,hook);root=next;hook()}}}return res}};Validator.defaults={levels:["","info","warn","error"]};function checker(fn,keys,values,prefix){var this$1=this;var changed=false;var checks=this.checks.find(function(c){return c.keys===keys});if(!checks){checks={keys:keys,messages:[]};this.checks.push(checks)}var res=fn.apply(this.ractive,values)||[];if(prefix){for(var i=0;i<res.length;i++){if(!res[i][2]){continue}var ks=Array.isArray(res[i][2])?res[i][2]:[res[i][2]];res[i][2]=ks.map(function(k){return k[0]==="."?prefix+k:k})}}for(var i$1=0;i$1<checks.messages.length;i$1++){var ref=checks.messages[i$1];var t=ref[0];var m=ref[1];var k=ref[2];var go=true;for(var j=0;j<res.length;j++){var ref$1=res[j];var type=ref$1[0];var msg=ref$1[1];var key=ref$1[2];if(t===type&&m===msg&&keysStr(k)===keysStr(key)){go=false;break}}if(!go){continue}changed=true;var ks$1=k?Array.isArray(k)?k:[k]:keys;for(var j$1=0;j$1<ks$1.length;j$1++){var key$1=ks$1[j$1];var state=this.state[key$1]||[];for(var i$2=0;i$2<state.length;i$2++){if(state[i$2][0]===t&&state[i$2][1]===m){state.splice(i$2,1);break}}}}for(var i$3=0;i$3<res.length;i$3++){var ref$2=res[i$3];var t$1=ref$2[0];var m$1=ref$2[1];var k$1=ref$2[2];var go$1=true;for(var j$2=0;j$2<checks.messages.length;j$2++){var ref$3=checks.messages[j$2];var type$1=ref$3[0];var msg$1=ref$3[1];var key$2=ref$3[2];if(t$1===type$1&&m$1===msg$1&&keysStr(k$1)===keysStr(key$2)){go$1=false;break}}if(!go$1){continue}changed=true;var ks$2=k$1?Array.isArray(k$1)?k$1:[k$1]:keys;for(var j$3=0;j$3<ks$2.length;j$3++){var key$3=ks$2[j$3];(this.state[key$3]||(this.state[key$3]=[])).push([t$1,m$1])}}checks.messages=res;if(changed){keys.forEach(function(key){return this$1.notify(key,true)})}}function debounce(time,fn,context){var tm;return function(){var args=[],len=arguments.length;while(len--)args[len]=arguments[len];if(tm){return}else{tm=setTimeout(function(){fn.apply(context,args);tm=null},time)}}}var levelMap={none:0,info:1,warn:2,error:3};function syncClass(node,list,cls){var cl=node.classList;list.forEach(function(c){if(c&&cls!==c&&cl.contains(c)){cl.remove(c)}});if(cls&&!cl.contains(cls)){cl.add(cls)}}function keysStr(keys){if(typeof keys==="string"){return keys}if(Array.isArray(keys)){return keys.join(",")}}function keysForGroup(validator,group){var grps=Array.isArray(group)?group:[group];var res=[];for(var i=0;i<grps.length;i++){var fns=validator.fns;for(var j=0;j<fns.length;j++){var ks=fns[j][0];if(Array.isArray(ks)&&fns[j][3]&&fns[j][3].includes(grps[i])){for(var c=0;c<ks.length;c++){if(!res.includes(ks[c])){res.push(ks[c])}}}}}return res}function groupMessages(messages){var res=[];var cur=messages.filter(function(m){return m[0]==="error"});if(cur.length){res.push(["Errors",cur.map(function(m){return m[1]})])}cur=messages.filter(function(m){return m[0]==="warn"});if(cur.length){res.push(["Warnings",cur.map(function(m){return m[1]})])}cur=messages.filter(function(m){return m[0]==="info"||m[0]==="none"});if(cur.length){res.push(["Info",cur.map(function(m){return m[1]})])}return res}function messageGroupString(groups){if(groups.length===1){return groups[0][1].join("\n")}return groups.map(function(g){return g[0]+":\n"+g[1].join("\n")}).join("\n\n")}var registered=false;function register(){if(!registered){Ractive.addCSS("validation-decorator","\n span.valid-indicator {\n display: none;\n position: absolute;\n top: 0.25em;\n right: 0.5em;\n width: 1em;\n height: 1em;\n border-radius: 1em;\n z-index: 19;\n }\n span.valid-indicator:after {\n color: #fff;\n width: 100%;\n display: block;\n font-weight: bold;\n text-align: center;\n line-height: 1.1em;\n font-size: 1.1em;\n }\n .none > span.valid-indicator {\n display: flex;\n background-color: #16ab39;\n }\n .error > span.valid-indicator {\n display: flex;\n background-color: #ca3c3c;\n }\n .warn > span.valid-indicator {\n display: flex;\n background-color: #f79e0b;\n }\n .info > span.valid-indicator {\n display: flex;\n background-color: #1f5b93;\n }\n ");registered=true}}var probably="should probably";export function required(name,level){if(level===void 0)level="error";return function(v){if(!v){return[[level,name+" "+(level!=="error"?"should probably be provided":"is required")]]}}}export function lt(name,num,level){if(level===void 0)level="error";return function(v){if(v>=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at most "+(num-1)]]}}}export function lte(name,num,level){if(level===void 0)level="error";return function(v){if(v>num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at most "+num]]}}}export function gt(name,num,level){if(level===void 0)level="error";return function(v){if(v<=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at least "+(num+1)]]}}}export function gte(name,num,level){if(level===void 0)level="error";return function(v){if(v<=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at least "+num]]}}}export function between(name,lower,upper,level){if(level===void 0)level="error";return function(v){if(v<lower||v>upper){return[[level,name+" "+(level!=="error"?probably:"must")+" be between "+lower+" and "+upper]]}}} | ||
import Ractive from"ractive";export var Validator=function Validator(ractive,debounce){if(debounce===void 0)debounce=500;this.ractive=ractive;this.debounce=debounce;this.state={};this.hooks={};this.patternHooks=[];this.groupHooks={};this.checks=[];this.fns=[];this.many=[]};Validator.prototype.check=function check(keys,deps,fn,opts){var ks=Array.isArray(keys)?keys.slice():[keys];var all=ks.concat(Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]);if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}var set=[ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])];this.fns.push(set);var handle=this.ractive.observe(all.join(" "),debounce(this.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}))},this),{init:opts&&opts.init===false?false:true});return{cancel:function cancel(){this.fns.splice(this.fns.indexOf(set),1);handle.cancel()}}};Validator.prototype.checkList=function checkList(path,fn,opts){var this$1=this;var checks={};var len=0;var callback=function(v,o,k){if(!Array.isArray(v)){return}if(v.length!==len){if(len>v.length){for(var i=v.length;i<len;i++){if(checks[i]){checks[i].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();ks.forEach(function(k){this$1.clear(k,true);this$1.notify(k,true,true)});var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)});delete checks[i]}}}else{var loop=function(i){var k$1=path+"."+i;var chks=[];var o$1={check:function(keys,deps,fn,opts){var ks=(Array.isArray(keys)?keys.slice():[keys]).map(function(s){return s[0]==="."?k$1+s:s});var all=ks.concat((Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]).map(function(s){return s[0]==="."?k$1+s:s}));if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}chks.push([ks,this$1.ractive.observe(all.join(" "),debounce(this$1.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}),k$1)},this$1),{init:opts&&opts.init===false?false:true})]);this$1.fns.push([ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])]);ks.prefix=k$1},checkList:function(path,fn,opts){chks.push([[],this$1.checkList(path[0]==="."?k$1+path:path,fn,opts)])},checkDefer:function(path,fn,opts){chks.push([[],this$1.checkDefer(path[0]==="."?k$1+path:path,fn,opts)])}};fn(k$1,o$1,i);checks[i]=chks};for(var i$1=len;i$1<v.length;i$1++)loop(i$1)}len=v.length}};var observer=this.ractive.observe(path,debounce(this.debounce,callback),{init:opts&&opts.init===false?false:true});var paths=path.split(/\s+/);var handle=[paths,function(){paths.forEach(function(path){var arr=this$1.ractive.get(path);if(!Array.isArray(arr)){return}for(var i=0;i<arr.length;i++){callback(arr[i],undefined,path+"."+i)}})}];this.many.push(handle);return{cancel:function cancel(){var this$1=this;var cks=Object.keys(checks);cks.forEach(function(c){cks[c].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)})});var i=this.many.length;while(i--){if(this.many[i][1]===callback){this.many.splice(i,1)}}observer.cancel()}}};Validator.prototype.checkDefer=function checkDefer(path,fn,opts){var this$1=this;var checks={};var callback=function(v,o,k,p){if(v==null&&checks[k]){checks[k].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();ks.forEach(function(k){this$1.clear(k,true);this$1.notify(k,true,true)});var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)});delete checks[k]}else if(v!=null&&!checks[k]){var chks=[];var o$1={check:function(keys,deps,fn,opts){var ks=(Array.isArray(keys)?keys.slice():[keys]).map(function(s){return s[0]==="."?k+s:s});var all=ks.concat((Array.isArray(deps)?deps:typeof deps==="string"?[deps]:[]).map(function(s){return s[0]==="."?k+s:s}));if(typeof deps==="function"){opts=fn;fn=deps;deps=[]}chks.push([ks,this$1.ractive.observe(all.join(" "),debounce(this$1.debounce,function(){var this$1=this;checker.call(this,fn,ks,all.map(function(k){return this$1.ractive.get(k)}),k)},this$1),{init:opts&&opts.init===false?false:true})]);this$1.fns.push([ks,deps,fn,opts&&opts.group&&(Array.isArray(opts.group)?opts.group:[opts.group])]);ks.prefix=k},checkList:function(path,fn,opts){chks.push([[],this$1.checkList(path[0]==="."?k+path:path,fn,opts)])},checkDefer:function(path,fn,opts){chks.push([[],this$1.checkDefer(path[0]==="."?k+path:path,fn,opts)])}};fn(k,o$1,p);checks[k]=chks}};var observer=this.ractive.observe(path,debounce(this.debounce,callback),{init:opts&&opts.init===false?false:true});var parent=path.split(/\s+/);var handle=[parent,function(){parent.forEach(function(path){var obj=this$1.ractive.get(path);if(obj){callback(obj,undefined,path)}})}];this.many.push(handle);return{cancel:function cancel(){var this$1=this;var cks=Object.keys(checks);cks.forEach(function(c){cks[c].forEach(function(ref){var ks=ref[0];var handle=ref[1];handle.cancel();var idx=this$1.fns.findIndex(function(ref){var k=ref[0];return k===ks});this$1.fns.splice(idx,1)})});var i=this.many.length;while(i--){if(this.many[i][1]===callback){this.many.splice(i,1)}}observer.cancel()}}};Validator.prototype.refresh=function refresh(path,recurse){var this$1=this;if(recurse===void 0)recurse=true;var paths=Array.isArray(path)?path:[path];paths.forEach(function(path){if(path.test){for(var i=0;i<this$1.many.length;i++){var ref=this$1.many[i];var kk=ref[0];var refresh=ref[1];kk.find(function(k){return path.test(k)})&&refresh()}}else{for(var i$1=0;i$1<this$1.many.length;i$1++){var ref$1=this$1.many[i$1];var ks=ref$1[0];var refresh$1=ref$1[1];ks.includes(path)&&refresh$1()}}});paths.forEach(function(path){if(path.test){this$1.fns.forEach(function(ref){var ks=ref[0];var deps=ref[1];var fn=ref[2];return ks.find(function(k){return path.test(k)})&&checker.call(this$1,fn,ks,ks.concat(deps).map(function(k){return this$1.ractive.get(k)}),ks.prefix)})}else{this$1.fns.forEach(function(ref){var ks=ref[0];var deps=ref[1];var fn=ref[2];return ks.includes(path)&&checker.call(this$1,fn,ks,ks.concat(deps).map(function(k){return this$1.ractive.get(k)}),ks.prefix)})}})};Validator.prototype.notify=function notify(key,up,recurse){var this$1=this;if(up){var path=Ractive.splitKeypath(key);path.pop();while(path.length){var p=Ractive.joinKeys.apply(Ractive,path);var hooks=this.hooks[p];if(hooks){hooks.forEach(function(h){return h()})}path.pop()}}if(this.hooks[key]){this.hooks[key].forEach(function(h){return h()})}if(recurse){var keys=Object.keys(this.hooks);var start=key+".";keys.forEach(function(k){if(k.startsWith(start)){this$1.hooks[k].forEach(function(h){return h()})}})}var pats=this.patternHooks;for(var i=0;i<pats.length;i++){if(pats[i][0].test(key)){pats[i][1]()}}var groups=[];for(var i$1=0;i$1<this.fns.length;i$1++){var ref=this.fns[i$1];var ks=ref[0];var gs=ref[3];if(gs&&Array.isArray(ks)&&ks.includes(key)){gs.forEach(function(g){return!groups.includes(g)&&groups.push(g)})}}for(var i$2=0;i$2<groups.length;i$2++){var hooks$1=this.groupHooks[groups[i$2]]||[];hooks$1.forEach(function(h){return h()})}};Validator.prototype.clear=function clear(key,recurse){var this$1=this;delete this.state[key];if(recurse){var keys=Object.keys(this.state);var start=key+".";keys.forEach(function(k){if(k.startsWith(start)){delete this$1.state[k]}})}};Validator.prototype.level=function level(key,recurse){if(recurse===void 0)recurse=true;if(key.group){key=keysForGroup(this,key.group)}var keys=Array.isArray(key)?key:[key];var level="none";for(var i=0;i<keys.length;i++){var key$1=keys[i];if(typeof key$1==="string"){var msgs=this.state[key$1]||[];for(var j=0;j<msgs.length;j++){var t=msgs[j][0];if(t==="error"){return"error"}else if(t==="warn"){level="warn"}else if(t==="info"&&level!=="warn"){level="warn"}}}if(recurse||key$1.test){var state=this.state;var ks=Object.keys(state);var start=key$1+".";for(var j$1=0;j$1<ks.length;j$1++){var k=ks[j$1];if(key$1.test?key$1.test(k):k.startsWith(start)){var msgs$1=state[k];for(var c=0;c<msgs$1.length;c++){var t$1=msgs$1[c][0];if(t$1==="error"){return"error"}else if(t$1==="warn"){level="warn"}else if(t$1==="info"&&level!=="warn"){level="info"}}}}}}return level};Validator.prototype.messages=function messages(key,recurse){var this$1=this;if(key.group){key=keysForGroup(this,key.group)}var keys=Array.isArray(key)?key:[key];var res=[];keys.forEach(function(key){if(typeof key==="string"){var msgs=this$1.state[key]||[];res.push.apply(res,msgs)}if(recurse||key.test){var state=this$1.state;var keys=Object.keys(state);var start=key+".";keys.forEach(function(k){if(key.test?key.test(k):k.startsWith(start)){res.push.apply(res,state[k])}})}});return res};Validator.prototype.hook=function hook(keys,fn){var this$1=this;if(keys.group){var gs=Array.isArray(keys.group)?keys.group:[keys.group];gs.forEach(function(g){return(this$1.groupHooks[g]||(this$1.groupHooks[g]=[])).push(fn)})}else{var ks=Array.isArray(keys)?keys:[keys];ks.forEach(function(key){if(typeof key==="string"){(this$1.hooks[key]||(this$1.hooks[key]=[])).push(fn)}else if(key.test){this$1.patternHooks.push([key,fn])}})}return{cancel:function(){return this$1.unhook(keys,fn)}}};Validator.prototype.unhook=function unhook(keys,fn){var this$1=this;if(keys.group){var gs=Array.isArray(keys.group)?keys.group:[keys.group];gs.forEach(function(key){var arr=this$1.groupHooks[key]||[];var idx=arr.indexOf(fn);arr.splice(idx,1)})}else{var ks=Array.isArray(keys)?keys:[keys];ks.forEach(function(key){if(typeof key==="string"){var arr=this$1.hooks[key]||[];var idx=arr.indexOf(fn);arr.splice(idx,1)}else if(key.test){var idx$1=this$1.patternHooks.findIndex(function(h){return h[0]===key&&h[1]===fn});this$1.patternHooks.splice(idx$1,1)}})}};Validator.prototype.decorator=function decorator(opts){if(opts===void 0)opts={};var v=this;return function(node){var keys=[],len=arguments.length-1;while(len-- >0)keys[len]=arguments[len+1];var ctx=this.getLocalContext();var root=ctx.resolve();var ks;var keyList;function setKeys(keys){var list=keys.join(",");if(keyList===list){return false}keyList=list;if(opts.regex){ks=keys.map(function(k){return typeof k==="string"?new RegExp(k):k})}else if(opts.group){ks={group:keys}}else{ks=keys.map(function(k){return ctx.resolve(k)})}return true}setKeys(keys);var levels=opts.levels||Validator.defaults.levels;var position=node.style.position;var indicator;if(opts.indicator&&!position){node.style.position="relative"}if(opts.indicator){register();indicator=document.createElement("span");indicator.setAttribute("class","valid-indicator");node.appendChild(indicator)}var tab;if(opts.tab&&!opts.regex){var n=node.querySelector("input,select,textarea");if(n){var fn;fn=function(ev){n.removeEventListener("blur",fn);n.removeEventListener("input",fn);tab=null;if(ev.type==="blur"){v.refresh(ks);hook()}};tab=[n,fn];n.addEventListener("blur",fn);n.addEventListener("input",fn)}}function hook(){if(tab){return}var level=v.level(ks,true);syncClass(node,levels,levels[levelMap[level]]);if(opts.indicator){if(level!=="none"){indicator.setAttribute("title",messageGroupString(groupMessages(v.messages(ks,true))))}else{indicator.setAttribute("title","")}}}v.hook(ks,hook);if(!opts.tab&&!opts.regex){setTimeout(hook,v.debounce||500)}var res={update:function update(){var keys=[],len=arguments.length;while(len--)keys[len]=arguments[len];var old=ks;if(setKeys(keys)){v.unhook(old,hook);v.hook(ks,hook);hook()}},teardown:function teardown(){v.unhook(ks,hook);syncClass(node,levels);node.style.position=position;if(indicator){indicator.remove()}if(tab){tab[0].removeEventListener("blur",tab[1])}}};if(opts.regex){res.update=function update(){var keys=[],len=arguments.length;while(len--)keys[len]=arguments[len];var next=ctx.resolve();v.unhook(ks,hook);ks=opts.regex?keys.map(function(k){return typeof k==="string"?new RegExp(k):k}):keys.map(function(k){return ctx.resolve(k)});v.hook(ks,hook);root=next;hook()}}else if(!opts.group){res.shuffled=function shuffled(){var next=ctx.resolve();if(next!==root){v.unhook(ks,hook);ks=opts.regex?keys.map(function(k){return typeof k==="string"?new RegExp(k):k}):keys.map(function(k){return ctx.resolve(k)});v.hook(ks,hook);root=next;hook()}}}return res}};Validator.defaults={levels:["","info","warn","error"]};function checker(fn,keys,values,prefix){var this$1=this;var changed=false;var checks=this.checks.find(function(c){return c.keys===keys});if(!checks){checks={keys:keys,messages:[]};this.checks.push(checks)}var res=fn.apply(this.ractive,values)||[];if(prefix){for(var i=0;i<res.length;i++){if(!res[i][2]){continue}var ks=Array.isArray(res[i][2])?res[i][2]:[res[i][2]];res[i][2]=ks.map(function(k){return k[0]==="."?prefix+k:k})}}for(var i$1=0;i$1<checks.messages.length;i$1++){var ref=checks.messages[i$1];var t=ref[0];var m=ref[1];var k=ref[2];var go=true;for(var j=0;j<res.length;j++){var ref$1=res[j];var type=ref$1[0];var msg=ref$1[1];var key=ref$1[2];if(t===type&&m===msg&&keysStr(k)===keysStr(key)){go=false;break}}if(!go){continue}changed=true;var ks$1=k?Array.isArray(k)?k:[k]:keys;for(var j$1=0;j$1<ks$1.length;j$1++){var key$1=ks$1[j$1];var state=this.state[key$1]||[];for(var i$2=0;i$2<state.length;i$2++){if(state[i$2][0]===t&&state[i$2][1]===m){state.splice(i$2,1);break}}}}for(var i$3=0;i$3<res.length;i$3++){var ref$2=res[i$3];var t$1=ref$2[0];var m$1=ref$2[1];var k$1=ref$2[2];var go$1=true;for(var j$2=0;j$2<checks.messages.length;j$2++){var ref$3=checks.messages[j$2];var type$1=ref$3[0];var msg$1=ref$3[1];var key$2=ref$3[2];if(t$1===type$1&&m$1===msg$1&&keysStr(k$1)===keysStr(key$2)){go$1=false;break}}if(!go$1){continue}changed=true;var ks$2=k$1?Array.isArray(k$1)?k$1:[k$1]:keys;for(var j$3=0;j$3<ks$2.length;j$3++){var key$3=ks$2[j$3];(this.state[key$3]||(this.state[key$3]=[])).push([t$1,m$1])}}checks.messages=res;if(changed){keys.forEach(function(key){return this$1.notify(key,true)})}}function debounce(time,fn,context){var tm;return function(){var args=[],len=arguments.length;while(len--)args[len]=arguments[len];if(tm){return}else{tm=setTimeout(function(){fn.apply(context,args);tm=null},time)}}}var levelMap={none:0,info:1,warn:2,error:3};function syncClass(node,list,cls){var cl=node.classList;list.forEach(function(c){if(c&&cls!==c&&cl.contains(c)){cl.remove(c)}});if(cls&&!cl.contains(cls)){cl.add(cls)}}function keysStr(keys){if(typeof keys==="string"){return keys}if(Array.isArray(keys)){return keys.join(",")}}function keysForGroup(validator,group){var grps=Array.isArray(group)?group:[group];var res=[];for(var i=0;i<grps.length;i++){var fns=validator.fns;for(var j=0;j<fns.length;j++){var ks=fns[j][0];if(Array.isArray(ks)&&fns[j][3]&&fns[j][3].includes(grps[i])){for(var c=0;c<ks.length;c++){if(!res.includes(ks[c])){res.push(ks[c])}}}}}return res}function groupMessages(messages){var res=[];var cur=messages.filter(function(m){return m[0]==="error"});if(cur.length){res.push(["Errors",cur.map(function(m){return m[1]})])}cur=messages.filter(function(m){return m[0]==="warn"});if(cur.length){res.push(["Warnings",cur.map(function(m){return m[1]})])}cur=messages.filter(function(m){return m[0]==="info"||m[0]==="none"});if(cur.length){res.push(["Info",cur.map(function(m){return m[1]})])}return res}function messageGroupString(groups){if(groups.length===1){return groups[0][1].join("\n")}return groups.map(function(g){return g[0]+":\n"+g[1].join("\n")}).join("\n\n")}var registered=false;function register(){if(!registered){Ractive.addCSS("validation-decorator","\n span.valid-indicator {\n display: none;\n position: absolute;\n top: 0.25em;\n right: 0.5em;\n width: 1em;\n height: 1em;\n border-radius: 1em;\n z-index: 19;\n }\n span.valid-indicator:after {\n color: #fff;\n width: 100%;\n display: block;\n font-weight: bold;\n text-align: center;\n line-height: 1.1em;\n font-size: 1.1em;\n }\n .none > span.valid-indicator {\n display: flex;\n background-color: #16ab39;\n }\n .error > span.valid-indicator {\n display: flex;\n background-color: #ca3c3c;\n }\n .warn > span.valid-indicator {\n display: flex;\n background-color: #f79e0b;\n }\n .info > span.valid-indicator {\n display: flex;\n background-color: #1f5b93;\n }\n ");registered=true}}var probably="should probably";export function required(name,level){if(level===void 0)level="error";return function(v){if(!v){return[[level,name+" "+(level!=="error"?"should probably be provided":"is required")]]}}}export function lt(name,num,level){if(level===void 0)level="error";return function(v){if(v>=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at most "+(num-1)]]}}}export function lte(name,num,level){if(level===void 0)level="error";return function(v){if(v>num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at most "+num]]}}}export function gt(name,num,level){if(level===void 0)level="error";return function(v){if(v<=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at least "+(num+1)]]}}}export function gte(name,num,level){if(level===void 0)level="error";return function(v){if(v<=num){return[[level,name+" "+(level!=="error"?probably:"must")+" be at least "+num]]}}}export function between(name,lower,upper,level){if(level===void 0)level="error";return function(v){if(v<lower||v>upper){return[[level,name+" "+(level!=="error"?probably:"must")+" be between "+lower+" and "+upper]]}}} |
@@ -25,3 +25,3 @@ import Ractive from 'ractive'; | ||
primary.title = Object.assign({ inactive: {} }, data('raui.window.title'), data('raui.window.primary.title')); | ||
return ("\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: " + (primary.host.bg || primary.bg || '#fff') + ";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: " + (primary.handleSize || 7) + "px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: " + (primary.bg || '#fff') + ";\n color: " + (primary.fg || '#222') + ";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: " + (primary.minWidth || '6em') + ";\n min-height: " + (primary.minHeight || '6em') + ";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: " + (primary.title.inactive.bg || primary.fg || '#222') + ";\n color: " + (primary.title.inactive.fg || primary.bg || '#fff') + ";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: " + (primary.title.bg || primary.fga || '#07e') + ";\n color: " + (primary.title.fg || primary.bg || '#fff') + ";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid " + (primary.action.bc || primary.bc || '#ccc') + ";\n background-color: " + (primary.action.bg || primary.bg || '#fff') + ";\n color: " + (primary.action.fg || primary.fg || '#222') + ";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n " + (typeof data('raui.window.extra') === 'function' ? data('raui.window.extra').call(this, data) : '') + "\n "); | ||
return ("\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: " + (primary.host.bg || primary.bg || '#fff') + ";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n width: 100%;\n height: 100%;\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: " + (primary.handleSize || 7) + "px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: " + (primary.bg || '#fff') + ";\n color: " + (primary.fg || '#222') + ";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: " + (primary.minWidth || '6em') + ";\n min-height: " + (primary.minHeight || '6em') + ";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: " + (primary.title.inactive.bg || primary.fg || '#222') + ";\n color: " + (primary.title.inactive.fg || primary.bg || '#fff') + ";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: " + (primary.title.bg || primary.fga || '#07e') + ";\n color: " + (primary.title.fg || primary.bg || '#fff') + ";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid " + (primary.action.bc || primary.bc || '#ccc') + ";\n background-color: " + (primary.action.bg || primary.bg || '#fff') + ";\n color: " + (primary.action.fg || primary.fg || '#222') + ";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n " + (typeof data('raui.window.extra') === 'function' ? data('raui.window.extra').call(this, data) : '') + "\n "); | ||
}).call(this, data)].join(' '); }, | ||
@@ -212,3 +212,3 @@ cssId: 'rwindow', | ||
if (blocking) { | ||
var blockers = this$1.windowGet(blocking, 'blockers'); | ||
var blockers = this$1.windowGet(blocking, 'blockers') || []; | ||
this$1.splice(("windows." + (escape(blocking)) + ".blockers"), blockers.indexOf(window.id), 1); | ||
@@ -215,0 +215,0 @@ } |
@@ -1,1 +0,1 @@ | ||
import Ractive from"ractive";import expand from"./transition-expand";import toast from"./Toast";import globalRegister from"./globalRegister";var escape=Ractive.escapeKey;var windowTrans;export var Base=function(Ractive){function Base(opts){Ractive.call(this,opts)}if(Ractive)Base.__proto__=Ractive;Base.prototype=Object.create(Ractive&&Ractive.prototype);Base.prototype.constructor=Base;return Base}(Ractive);Ractive.extendWith(Base,{css:function(data){return[function(data){var primary=Object.assign({},data("raui.primary"),data("raui.window.primary"));primary.action=Object.assign({},data("raui.window.action"),data("raui.window.primary.action"));primary.host=Object.assign({},data("raui.window.host"),data("raui.window.primary.host"));primary.title=Object.assign({inactive:{}},data("raui.window.title"),data("raui.window.primary.title"));return"\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: "+(primary.host.bg||primary.bg||"#fff")+";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: "+(primary.handleSize||7)+"px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: "+(primary.bg||"#fff")+";\n color: "+(primary.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: "+(primary.minWidth||"6em")+";\n min-height: "+(primary.minHeight||"6em")+";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: "+(primary.title.inactive.bg||primary.fg||"#222")+";\n color: "+(primary.title.inactive.fg||primary.bg||"#fff")+";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: "+(primary.title.bg||primary.fga||"#07e")+";\n color: "+(primary.title.fg||primary.bg||"#fff")+";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid "+(primary.action.bc||primary.bc||"#ccc")+";\n background-color: "+(primary.action.bg||primary.bg||"#fff")+";\n color: "+(primary.action.fg||primary.fg||"#222")+";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n "+(typeof data("raui.window.extra")==="function"?data("raui.window.extra").call(this,data):"")+"\n "}.call(this,data)].join(" ")},cssId:"rwindow",noCssTransform:true,delegate:false,decorators:{tracked:function tracked(node,id){this[id]=node;return{teardown:function teardown(){if(this[id]===node){this[id]=null}}}}},transitions:{window:function window(t,params){if(windowTrans){return t.complete()}windowTrans=t;var p=t.processParams(params,{duration:400,easing:"easeInOut"});var parent=t.node.parentNode;var overflow=parent.style?parent.style.overflow:"";if(parent.style){parent.style.overflow="hidden"}if(t.isIntro||p.intro){t.setStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0});setTimeout(function(){t.animateStyle({transform:"none",opacity:1},p).then(function(){t.setStyle("opacity",1);windowTrans=false;t.complete();if(parent.style){parent.style.overflow=overflow}})})}else{t.setStyle({transform:"none",opacity:1});t.animateStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0},p).then(function(){windowTrans=false;t.complete();if(parent.style){parent.style.overflow=overflow}})}},slide:function slide(t,params){var p=t.processParams(params,{duration:400,easing:"easeInOut"});var parent=t.node.parentNode;var overflow=parent.style?parent.style.overflow:"";var done=function(){t.complete();if(parent.style){setTimeout(function(){return parent.style.overflow=overflow})}};if(parent.style){parent.style.overflow="hidden"}if(t.isIntro||p.intro){if(p.from==="top"){t.setStyle({transform:"translateY(-100%)"});t.animateStyle({transform:"translateY(0)"},p).then(done)}else if(p.from==="bottom"){t.setStyle({transform:"translateY(100%)"});t.animateStyle({transform:"translateY(0)"},p).then(done)}else if(p.from==="left"){t.setStyle({transform:"translateX(-100%)"});t.animateStyle({transform:"translateX(0)"},p).then(done)}else if(p.from==="right"){t.setStyle({transform:"translateX(100%)"});t.animateStyle({transform:"translateX(0)"},p).then(done)}}else{if(p.from==="top"){t.setStyle({transform:"translateY(0)"});t.animateStyle({transform:"translateY(-100%)"},p).then(done)}else if(p.from==="bottom"){t.setStyle({transform:"translateY(0)"});t.animateStyle({transform:"translateY(100%)"},p).then(done)}else if(p.from==="left"){t.setStyle({transform:"translateX(0)"});t.animateStyle({transform:"translateX(-100%)"},p).then(done)}else if(p.from==="right"){t.setStyle({transform:"translateX(0)"});t.animateStyle({transform:"translateX(100%)"},p).then(done)}}}}});var id=0;export var Host=function(Base){function Host(opts){Base.call(this,opts);this.defaults={}}if(Base)Host.__proto__=Base;Host.prototype=Object.create(Base&&Base.prototype);Host.prototype.constructor=Host;var prototypeAccessors={current:{configurable:true},currentId:{configurable:true},placement:{configurable:true},topmost:{configurable:true},windows:{configurable:true}};prototypeAccessors.current.get=function(){var top=this.get("topLevel");return this.getWindow(this.get("windows")[top].id)};prototypeAccessors.currentId.get=function(){var top=this.get("topLevel");return this.get("windows."+escape(top)+".id")};prototypeAccessors.placement.get=function(){return this.get("placement")};prototypeAccessors.placement.set=function(v){return this.set("placement",v)};prototypeAccessors.topmost.get=function(){var windows=this.get("windows");for(var k in windows){if(windows[k].topmost){return this.getWindow(windows[k].id)}}};prototypeAccessors.windows.get=function(){return Object.keys(this.get("windows"))};Host.prototype.addWindow=function addWindow(window,opts){var this$1=this;var options=Object.assign({},this.defaults,window.constructor.prototype.options,window.options,window.get("options"),opts);if(!(window instanceof Window)){throw new Error("Windows must be instances of Window")}if(!window.id){window.set("@.id",options.id||"window"+id++)}if(!this.get("windows."+escape(window.id))){this.set("windows."+escape(window.id),Object.assign({show:options.show!==false,autosize:true,id:window.id,blockers:[],close:true,minimize:true,maximize:true},options,{id:window.id}))}window.host=this;var promise=this.attachChild(window,{target:"window"});var parent;if(options.block){parent=options.block.id||options.block;if(typeof parent==="string"&&parent in this.get("windows")){this.push("windows."+escape(parent)+".blockers",window.id);window.set("control.blocking",parent)}else{parent=false}}if(options.slide){}else if(options.size==="fill"&&(parent||options.block)){var wnd;if(options.block===true){wnd=this.find(".rwhost-pane")}else if(wnd=this.getWindow(parent)){wnd=wnd.find(".rwindow")}if(wnd){window.size(wnd.clientWidth-(options.fillPad||20),wnd.clientHeight-(options.fillPad||20));if(options.block&&!(options.top||options.left)){options.top=options.left=Math.floor((options.fillPad||20)/2)}}}else if(options.width&&options.height){window.size(options.width,options.height)}else{window.size("auto")}if(options.slide){}else if(options.top&&options.left){window.move(options.top,options.left)}else{this.place(window)}this.raise(window,{show:options.show!==false,parent:options.stickToParent});window.on("close",function(){var blocking=window.get("control.blocking");if(blocking){var blockers=this$1.windowGet(blocking,"blockers");this$1.splice("windows."+escape(blocking)+".blockers",blockers.indexOf(window.id),1)}this$1.detachChild(window).then(function(){return window.teardown()});this$1.set("windows."+escape(window.id)+".block",false);this$1.set("windows."+escape(window.id)+".index",-1);this$1.raise();this$1.set("windows."+escape(window.id),undefined);delete this$1.get("windows")[window.id]});this.update("windows."+escape(window.id)+".id",{force:true});return promise.then(function(){return window})};Host.prototype.getWindow=function getWindow(id){return this.children.byName.window&&this.children.byName.window.filter(function(w){return w.instance.id===id}).map(function(w){return w.instance})[0]};Host.prototype.windowGet=function windowGet(id,path){return this.get("windows."+escape(id)+"."+path)};Host.prototype.windowSet=function windowSet(id,path,val){return this.set("windows."+escape(id)+"."+path,val)};Host.prototype.raise=function raise(window,opts){var this$1=this;if(opts===void 0)opts={};var wnd=window instanceof Window?window:this.children.byName.window.filter(function(a){return a.instance.id===window}).map(function(a){return a.instance})[0];var object=this.get("windows",{virtual:false});var host=this;var wnds=Object.keys(object).map(function(k){return object[k]});var top=(wnds.length+1)*2;var last=this.get("topLevel");var wasBlocked=this.get("blocked");var id=wnd?wnd.get("control.id"):wnds.reduce(function(a,c){return!a?c:c.index>a.index?c:a},null);if(!wnd&&id){wnd=this.children.byName.window.find(function(a){return a.instance.id===id})}function blocks(ctrl){if(ctrl.blockers){ctrl.blockers.forEach(function(b,i){var w=wnds.find(function(w){return w.id===b});if(!w){return}w.index=ctrl.index+i+1;blocks(w)})}}function liftBlocked(control,pos){if(!control){return}control.index=pos--;if(control.blocking){liftBlocked(wnds.find(function(w){return w.id===control.blocking}),pos)}blocks(control)}if(wnd){var ctrl=wnd.get("control");ctrl.index=opts.show===false?-1:top;blocks(ctrl);if(ctrl.blocking){liftBlocked(wnds.find(function(w){return w.id===ctrl.blocking}),top-1)}if(opts.show!==false&&!ctrl.show){wnd.show()}}wnds.filter(function(w){return w.show!==false&&w.block===true}).forEach(function(w){this$1.set("windows."+escape(w.id)+".index",(w.index||0)+top);blocks(w)});var ordered=wnds.sort(function(l,r){return!l.show?-1:!r.show?1:l.index<r.index?-1:1});var visible=ordered.filter(function(w){return w.show});top=ordered.indexOf(visible[visible.length-1]);var sets={};var modalIdx=null;ordered.forEach(function(w,i){var key=escape(w.id);if(w.block===true&&modalIdx===null){modalIdx=i}sets["windows."+key+".index"]=w.index=modalIdx!==null?i+2:i;sets["windows."+key+".topmost"]=i===top;sets["windows."+key+".stack"]=ordered.length-i});if(modalIdx!==null){sets.blocked=modalIdx+1}else{sets.blocked=0}if(~top&&ordered.length){sets.topLevel=ordered[top].id}else{sets.topLevel=null}this.set(sets);top=sets.topLevel;if(top&&top!==last&&this.get("currentMax")&&this.rendered){var leaving=this.get("windows."+escape(last));wnd=this.getWindow(top);var transition=this.get("transition");if(transition!==false&&!wnd.get("control.slide")&&(!leaving||!leaving.dialog&&!leaving.slide&&(!leaving.blocking||leaving.blocking&&leaving.blocking!==top))){wnd.transition(transition||"window",wnd.find("div"),{intro:true})}}};Host.prototype.place=function place(wnd){var this$1=this;if(!wnd.get("control.show")){return Promise.resolve()}return new Promise(function(ok){requestAnimationFrame(function(){var local=wnd.get("control");if(local.width===undefined){wnd.size("auto")}var left=0;var top=0;if(!(this$1.fragment&&this$1.fragment.rendered)){return}var host=this$1.find(".rwhost");var maxw=host.clientWidth;var maxh=host.clientHeight;var blocking=local.blocking;if(blocking){var key="windows."+escape(blocking);var blocked=this$1.get(key);var max=local.max||!local.dialog&&(this$1.get("max")||this$1.get("userMax"));var bmax=blocked.max||this$1.get("userMax")||this$1.get("max");var bw=bmax?this$1.host.clientWidth:this$1.sizeInPx(blocked.width+"em");var bh=bmax?this$1.host.clientHeight:this$1.sizeInPx(blocked.height+"em");var bl=bmax?0:blocked.left;var bt=bmax?0:blocked.top;left=(max?maxw:bw/2)+(max?0:bl)-this$1.sizeInPx(local.width+"em")/2;top=(max?maxh:bh/2)+(max?0:bt)-this$1.sizeInPx(local.height+"em")/2}else{var place=this$1.get("placement");var pos;if(typeof place==="function"){try{pos=place(this$1,host,local)}catch(e){pos=placeGrid(this$1,host,local)}}else if(typeof place==="string"){switch(place){case"smart":pos=placeSmart(this$1,host,local);break;default:pos=placeGrid(this$1,host,local);break}}else{pos=placeGrid(this$1,host,local)}top=pos.top;left=pos.left}if(isNaN(left)||left<0){left=10}if(isNaN(top)||top<0){top=10}wnd.set({"control.top":top,"control.left":left});ok()})})};Host.prototype.sizeInPx=function sizeInPx(size){if(!this.sizer){return parseFloat(size)*16}this.sizer.style.width=typeof size==="number"?size+"px":size;return this.sizer.clientWidth};Host.prototype.sizeInEm=function sizeInEm(size){var px=this.sizeInPx(size);return px/this.sizeInPx("1em")};Object.defineProperties(Host.prototype,prototypeAccessors);return Host}(Base);function placeGrid(host,target,node){var maxw=target.clientWidth;var maxh=target.clientHeight;var top=0,left=0;var grid1=host._grid1===undefined?host._grid1=0:host._grid1>7?host._grid1=0:++host._grid1;var width=Math.floor(maxw/3);var height=Math.floor(maxh/3);var localWidth=host.sizeInPx(node.width+"em");var localHeight=host.sizeInPx(node.height+"em");switch(grid1){case 5:case 7:case 8:top=maxh-localHeight-10;break;case 2:case 4:case 6:top=height+Math.floor((height-localHeight)/2);break;case 0:case 1:case 3:top=10;break}switch(grid1){case 3:case 6:case 8:left=maxw-localWidth-10;break;case 1:case 4:case 7:left=width+Math.floor((width-localWidth)/2);break;case 0:case 2:case 5:left=10;break}if(left+localWidth>maxw){left=maxw-localWidth-10}if(top+localHeight>maxh){top=maxh-localHeight-10}return{top:top,left:left}}function placeSmart(host,target,node){var maxw=target.clientWidth-10;var maxh=target.clientHeight-10;var i,j;var cell=16;var mh=Math.floor(maxh/cell),mw=Math.floor(maxw/cell);var grid=new Array(mh*mw);var dest=new Array(mh*mw);for(i=0;i<grid.length;i++){grid[i]=0}var win,t,l,w,h,wins=0;var windows=host.get("windows");for(var k in windows){wins++;win=windows[k];t=Math.floor(win.top/cell);l=Math.floor(win.left/cell);h=Math.ceil(host.sizeInPx(win.height+"em")/cell);w=Math.ceil(host.sizeInPx(win.width+"em")/cell);for(i=t;i<t+h&&i<mh;i++){for(j=l;j<l+w&&j<mw;j++){grid[i*mw+j]++}}}var c,ii,jj;w=Math.ceil(host.sizeInPx(node.width+"em")/cell);h=Math.ceil(host.sizeInPx(node.height+"em")/cell);for(i=0;i<mh;i++){for(j=0;j<mw;j++){if(i+h>mh||j+w>mw){c=wins*w*h}else{c=0;for(ii=0;ii<h;ii++){for(jj=0;jj<w;jj++){c+=grid[(i+ii)*mw+j+jj]}}}if(c===0){return{top:i*cell+5,left:j*cell+5}}dest[i*mw+j]=c}}c=wins*w*h;ii=0;for(i=0;i<dest.length;i++){if(dest[i]<c){c=dest[i];ii=i}}return{top:Math.floor(ii/mw)*cell+5,left:ii%mw*cell+5}}Base.extendWith(Host,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost",g:1},{n:"tracked",t:71,f:{r:[],s:'["host"]'}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-sizer",g:1},{n:"tracked",t:71,f:{r:[],s:'["sizer"]'}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-max-top",g:1},{t:4,f:[{t:16,r:"~/_maxAttrsP"}],n:50,r:"~/_maxAttrsP"}],f:[{t:16,r:"~/_maxP",z:[{n:"window",x:{r:"~/current"}},{n:"windowControls",x:{x:{r:["@this.partials.windowControls"],s:"{t:_0}"}}},{n:"host",x:{r:"@this"}}]}]}],n:50,x:{r:["~/currentMax","~/_maxP"],s:"_0&&_1"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane",g:1},{n:"class-rwhost-blocked",t:13,f:[{t:2,r:"~/blocked"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane-content",g:1}],f:[{t:16}]}," ",{t:4,f:[{t:11,n:"window",m:[{n:"control",f:[{t:2,rx:{r:"~/windows",m:[{t:30,n:".instance.id"}]}}],t:13},{n:"root",t:13,f:[{t:2,r:"~/"}]}]}],n:52,r:"@this.children.byName.window"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-modal",g:1},{n:"tracked",t:71,f:{r:[],s:'["modalPane"]'}},{t:4,f:[{n:"class-rwhost-modal-active",t:13},{n:"style-z-index",f:[{t:2,r:"~/blocked"}],t:13}],n:50,r:"~/blocked"}]}]}," ",{t:8,r:"toast"}]}],e:{'["host"]':function(){return["host"]},'["sizer"]':function(){return["sizer"]},"{t:_0}":function(_0){return{t:_0}},"_0&&_1":function(_0,_1){return _0&&_1},'["modalPane"]':function(){return["modalPane"]},"[_0.getWindow(_1).hide()]":function(_0,_1){return[_0.getWindow(_1).hide()]},"!_0&&_1":function(_0,_1){return!_0&&_1},"[_0.getWindow(_1).maximize()]":function(_0,_1){return[_0.getWindow(_1).maximize()]},"!_0&&_1&&_2":function(_0,_1,_2){return!_0&&_1&&_2},"[_0.getWindow(_1).close()]":function(_0,_1){return[_0.getWindow(_1).close()]},'["top"]':function(){return["top"]},"[_0.hide()]":function(_0){return[_0.hide()]},"[_0.maximize()]":function(_0){return[_0.maximize()]},"[_0.close()]":function(_0){return[_0.close()]},"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6":function(_0,_1,_2,_3,_4,_5,_6){return!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6},'["content"]':function(){return["content"]},"!_0":function(_0){return!_0},"[_0.call(_1)]":function(_0,_1){return[_0.call(_1)]},'["wrapper"]':function(){return["wrapper"]},"_0!==false":function(_0){return _0!==false},"_0||_1":function(_0,_1){return _0||_1},"(_0||_1||_2)&&!_3&&!_4":function(_0,_1,_2,_3,_4){return(_0||_1||_2)&&!_3&&!_4},"[{from:_0}]":function(_0){return[{from:_0}]},"[_0._startResize(_1)]":function(_0,_1){return[_0._startResize(_1)]},"[_0._sizeHandle(_1)]":function(_0,_1){return[_0._sizeHandle(_1)]},"[_0._startMove(_1)]":function(_0,_1){return[_0._startMove(_1)]},"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5":function(_0,_1,_2,_3,_4,_5){return!(_4===false||(_0||_1)&&!_3||_2)&&(!_3||_4===true)&&!_5},"[_0.raise()]":function(_0){return[_0.raise()]},'["pane"]':function(){return["pane"]},"_0&&!_1":function(_0,_1){return _0&&!_1}},p:{title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],windowControls:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).hide()]"}}]}],n:50,x:{r:["window.dialog","window.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).maximize()]"}}]}],n:50,x:{r:["window.dialog","window.maximize","host.data.userMax"],s:"!_0&&_1&&_2"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).close()]"}}]}],n:50,r:"window.close"}]}],pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],window:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]}},use:[toast(),expand()],cssId:"window-host",noIntro:true,observe:{"@style.raui.window.maxFrom":function _style_raui_window_maxFrom(){initMediaListener(this)},topLevel:function topLevel(v){if(v){this.link("windows."+escape(v),"current")}else{this.unlink("current")}},currentMax:{handler:function handler(v){(this.children.byName.window||[]).forEach(function(w){return w.instance.fire("resize")})},defer:true}},computed:{currentMax:function currentMax(){var top=this.get("topLevel");var max=this.get("windows."+escape(top)+".max");var user=this.get("userMax");return user||this.get("max")||max}},on:{config:function config(){var this$1=this;var content=this.partials.content;if(content&&Array.isArray(content)){content=this.partials.content=content.slice();var i=content.length;while(i--){var e=content[i];if(e.e==="max-top"){content.splice(i,1);this.set({_maxP:{t:e.f},hideTitleMax:true});if(e.m){this.set({_maxAttrsP:{t:e.m}})}}}}if(typeof window!=="undefined"){var tm;this._resizeListener=function(){if(tm){return}tm=setTimeout(function(){tm=null;this$1.fire("resize")},300)};window.addEventListener("resize",this._resizeListener)}},teardown:function teardown(){if(this._resizeListener){window.removeEventListener("resize",this._resizeListener)}}}});function initMediaListener(r){if(r._media){r._media.fn()}else{r._media={};r._media.fn=function(){if(!r.host){return}var max=r.sizeInPx(r.get("@style.raui.window.maxFrom"));var trans=r.transitionsEnabled;r.transitionsEnabled=false;r.set("max",r.host.clientWidth<=max);r.set("dimensions",{clientWidth:r.host.clientWidth,clientHeight:r.host.clientHeight});r.transitionsEnabled=trans};r._media.handle=r.root.on("*.resize",r._media.fn);setTimeout(r._media.fn)}}function findEvent(instance){var i=instance;while(i){if(i.event&&i.event){return i.event.event}i=i.parent}}function getEventCoords(event){var node=event.target;if(!node){return{x:0,y:0}}var rect=node.getBoundingClientRect();return{x:Math.round(rect.left+(rect.right-rect.left)/2),y:Math.round(rect.top+(rect.bottom-rect.top)/2)}}Ractive.transitions.modal=function(t,parms){var params=t.processParams(parms,{duration:400,easing:"easeOut",x:0,y:-50,event:true});var event=null;var current={x:t.node.offsetLeft,y:t.node.offsetTop};var styles;var overflow=t.node.parentNode.style?t.node.parentNode.style.overflow:"hidden";if(!event&&!t.node._modalSrc){if(t.isIntro){styles={transform:"translate(0, 0) scale(1, 1)",opacity:1};t.setStyle({transform:"translate("+params.x+"px, "+params.y+"px) scale(0.5, 0.5)",opacity:0})}else{styles={transform:"translate("+params.x+"px, "+params.y+"px) scale(0.5, 0.5)",opacity:0}}}else{var click=t.node._modalSrc||(event?getEventCoords(event):{x:current.x+params.x,y:current.y+params.y});var target={x:click.x-Math.round(t.node.clientWidth/2)-current.x,y:click.y-Math.round(t.node.clientHeight/2)-current.y};if(t.node.parentNode.style){t.node.parentNode.style.overflow="hidden"}if(t.isIntro){t.node._modalSrc=click;styles={transform:"translate(0, 0) scale(1, 1)",opacity:1};t.setStyle({transform:"translate("+target.x+"px, "+target.y+"px) scale(0.5, 0.5)",opacity:0})}else{styles={transform:"translate("+target.x+"px, "+target.y+"px) scale(0.5, 0.5)",opacity:0}}}t.animateStyle(styles,params).then(function(){if(t.node.parentNode.style){t.node.parentNode.style.overflow=overflow}t.complete()})};var moveEvents=["mousemove","mouseup","touchmove","touchend"];var handleSize=7;export var Window=function(Base){function Window(opts){Base.call(this,opts)}if(Base)Window.__proto__=Base;Window.prototype=Object.create(Base&&Base.prototype);Window.prototype.constructor=Window;var prototypeAccessors$1={resizable:{configurable:true},title:{configurable:true},visible:{configurable:true},pad:{configurable:true},buttons:{configurable:true},blocked:{configurable:true},result:{configurable:true}};prototypeAccessors$1.resizable.get=function(){return this.get("control.resizable")};prototypeAccessors$1.resizable.set=function(v){return this.set("control.resizable",v)};prototypeAccessors$1.title.get=function(){return this.get("control.title")};prototypeAccessors$1.title.set=function(v){return this.set("control.title",v)};prototypeAccessors$1.visible.get=function(){return this.get("control.show")};prototypeAccessors$1.visible.set=function(v){if(v){this.show()}else{this.set("control.show",v,{keep:true})}this.host.raise(this,{show:v})};prototypeAccessors$1.pad.get=function(){return this.get("pad")};prototypeAccessors$1.pad.set=function(v){this.set("pad",v)};prototypeAccessors$1.buttons.get=function(){return this.get("buttons")};prototypeAccessors$1.buttons.set=function(v){return this.set("buttons",v)};prototypeAccessors$1.blocked.get=function(){return this.get("control.blocked")};prototypeAccessors$1.blocked.set=function(v){return this.set("control.blocked",v)};prototypeAccessors$1.result.get=function(){var this$1=this;if(!this._result){this._result={};this._result.promise=new Promise(function(ok){this$1._result.ok=ok})}return this._result.promise};Window.prototype.setResult=function setResult(v){this.result;this._result.value=v};Window.prototype.close=function close(force,result){if(force!==true){if(!this.parent){return false}if(this.get("control.blockers.length")){return false}if(typeof this.beforeClose==="function"&&this.beforeClose()===false){return false}if(this.fire("beforeClose")===false){return false}}this.fire("close");if(this._result){this._result.ok(this._result.value||result)}return true};Window.prototype.maximize=function maximize(){this.toggle("root.userMax")};Window.prototype.hide=function hide(){this.visible=false};Window.prototype.raise=function raise(show){this.host.raise(this,{show:show})};Window.prototype.show=function show(){this.set("control.show",true);if(this.get("control.top")===undefined){this.host.place(this)}};Window.prototype.size=function size(w,h){var this$1=this;return new Promise(function(ok){requestAnimationFrame(function(){if(!this$1.visible){if(typeof w==="number"&&typeof h==="number"){this$1.set({"control.width":this$1.host.sizeInEm(w),"control.height":this$1.host.sizeInEm(h),"control.naturalWidth":this$1.host.sizeInEm(w),"control.naturalHeight":this$1.host.sizeInEm(h),"control.autosize":false})}return}var el=this$1.wrapper;if(!el){return}if(w==="auto"){this$1.set("control.autosize",true);var nw=this$1.host.sizeInEm(el.clientWidth+16);var nh=this$1.host.sizeInEm(el.clientHeight);this$1.set({"control.width":nw,"control.height":nh,"control.naturalWidth":nw,"control.naturalHeight":nh,"control.autosize":false})}else if(typeof w==="number"&&typeof h==="number"){this$1.set({"control.width":this$1.host.sizeInEm(w),"control.height":this$1.host.sizeInEm(h),"control.naturalWidth":this$1.host.sizeInEm(w),"control.naturalHeight":this$1.host.sizeInEm(h),"control.autosize":false})}else if(typeof w==="string"&&typeof h==="string"){var ow=el.style.width;var oh=el.style.height;el.style.width=w;el.style.height=h;var nw$1=el.clientWidth;var nh$1=el.clientHeight;el.style.width=ow;el.style.height=oh;this$1.set({"control.width":this$1.host.sizeInEm(nw$1),"control.height":this$1.host.sizeInEm(nh$1),"control.naturalWidth":this$1.host.sizeInEm(nw$1),"control.naturalHeight":this$1.host.sizeInEm(nh$1),"control.autosize":false})}this$1.fire("resize");ok()})})};Window.prototype.move=function move(top,left){var this$1=this;return new Promise(function(ok){requestAnimationFrame(function(){if(top==="center"){top=this$1.host.modalPane.clientHeight/2-this$1.wrapper.clientHeight/2}else if(typeof top==="string"){top=this$1.host.sizeInEm(top)}if(left==="center"){left=this$1.host.modalPane.clientWidth/2-this$1.wrapper.clientWidth/2}if(typeof left==="string"){left=this$1.host.sizeInEm(left)}var set={};if(typeof top==="number"){set["control.top"]=top}if(typeof left==="number"){set["control.left"]=left}this$1.set(set);ok()})})};Window.prototype._startMove=function _startMove(event){var this$1=this;if(event.type==="mousedown"&&event.button!==0){return}if(!this.get("control.topmost")){this.raise()}if(~event.type.indexOf("mouse")){if(!this.top||!event.ctrlKey&&event.target!==this.content&&event.target!==this.top&&!this.top.contains(event.target)){return}}else{if(event.targetTouches&&event.targetTouches.length===1&&event.target!==this.content&&event.target!==this.top&&!this.top.contains(event.target)){return}}var wnd=this.pane;var cursor=wnd.style.cursor;wnd.style.cursor="move";wnd.style.userSelect="none";var sx=event.x||event.clientX||event.targetTouches&&event.targetTouches[0].clientX||0;var sy=event.y||event.clientY||event.targetTouches&&event.targetTouches[0].clientY||0;var ox=this.get("control.left")||0;var oy=this.get("control.top")||0;var ow=wnd.clientWidth;var oh=wnd.clientHeight;var _move=function(ev){var x=ev.x||ev.clientX||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientX||ev.changedTouches&&ev.changedTouches[0].clientX||0;var y=ev.y||ev.clientY||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientY||ev.changedTouches&&ev.changedTouches[0].clientY||0;var nx=ox+(x-sx);var ny=oy+(y-sy);if(nx<(ow<30?0:30-ow)){nx=ow<30?0:30-ow}if(ny<(oh<30?0:30-oh)){ny=oh<30?0:30-oh}if(nx<0){nx=0}if(ny<0){ny=0}this$1.set({"control.top":ny,"control.left":nx});if(ev.type==="touchend"||ev.type==="mouseup"){moveEvents.forEach(function(e){return document.removeEventListener(e,_move,{passive:false})});wnd.style.cursor=cursor;wnd.style.userSelect=""}else{ev.preventDefault()}};moveEvents.forEach(function(e){return document.addEventListener(e,_move,{passive:false})});if(event.type.indexOf("mouse")===0){return false}};Window.prototype._startResize=function _startResize(event){var this$1=this;if(event.target!==this.wrapper){return}if(event.type==="mousedown"&&event.button!==0){return}if(this.get("control.autosize")){this.size("auto")}if(!this.get("control.topmost")){this.raise()}this.set("control.resizing",true);var el=this.wrapper;var ix=event.offsetX||event.targetTouches&&event.targetTouches[0].pageX-el.getBoundingClientRect().left;var iy=event.offsetY||event.targetTouches&&event.targetTouches[0].pageY-el.getBoundingClientRect().top;var size=this.get("@style.window.handleSize")||handleSize;var right=el.clientWidth-size*2,bottom=el.clientHeight-size*2;var min=2*size;var l=ix<=min||ix>=right;var t=iy<=min||iy>=bottom;var sx=event.x||event.clientX||event.targetTouches&&event.targetTouches[0].clientX||0;var sy=event.y||event.clientY||event.targetTouches&&event.targetTouches[0].clientY||0;var ox=this.get("control.left")||0;var oy=this.get("control.top")||0;var ow=this.host.sizeInPx(this.get("control.width")+"em");var oh=this.host.sizeInPx(this.get("control.height")+"em");var nh=this.host.sizeInPx(this.get("control.naturalHeight")+"em");var nw=this.host.sizeInPx(this.get("control.naturalWidth")+"em");var tm;var _resize=function(ev){ev.preventDefault();var x=ev.x||ev.clientX||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientX||ev.changedTouches&&ev.changedTouches[0].clientX||0;var y=ev.y||ev.clientY||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientY||ev.changedTouches&&ev.changedTouches[0].clientY||0;var dx=l?x-sx:0;var dy=t?y-sy:0;var set={};if(iy<=size){set["control.top"]=oy+dy;set["control.height"]=oh-dy}else{set["control.height"]=oh+dy}if(ix<=size){set["control.left"]=ox+dx;set["control.width"]=ow-dx}else{set["control.width"]=ow+dx}if(set["control.width"]<nw){delete set["control.width"];delete set["control.left"]}if(set["control.height"]<nh){delete set["control.height"];delete set["control.top"]}if(set["control.left"]<0){set["control.left"]=0}if(set["control.top"]<0){set["control.top"]=0}if(set["control.width"]){set["control.width"]=this$1.host.sizeInEm(set["control.width"])}if(set["control.height"]){set["control.height"]=this$1.host.sizeInEm(set["control.height"])}this$1.set(set);if(ev.type==="touchend"||ev.type==="mouseup"){moveEvents.forEach(function(e){return document.removeEventListener(e,_resize,{passive:false})});this$1.set("control.resizing",false);if(ow!==this$1.get("control.width")||oh!==this$1.get("control.height")){if(tm){clearTimeout(tm)}tm=null;this$1.fire("resize")}}else{if(!tm){tm=setTimeout(function(){this$1.fire("resize");tm=null},200)}}};moveEvents.forEach(function(e){return document.addEventListener(e,_resize,{passive:false})});return false};Window.prototype._sizeHandle=function _sizeHandle(event){if(event.target!==this.wrapper){return}var el=this.wrapper;if(event.type==="mouseout"){return el.style.cursor="auto"}var x=event.offsetX,y=event.offsetY;var size=this.get("@style.window.handleSize")||handleSize;var right=el.clientWidth-size,bottom=el.clientHeight-size;var style=el.style;if(x<=size+size&&y<=size+size||x>=right-size&&y>=bottom-size){style.cursor="nwse-resize"}else if(x>=right-size&&y<=size+size||x<=size+size&&y>=bottom-size){style.cursor="nesw-resize"}else if((x<=size||x>=right)&&(y<bottom||y>size)){style.cursor="ew-resize"}else if((y<=size||y>=bottom)&&(x<right||x>size)){style.cursor="ns-resize"}else{style.cursor="auto"}};Object.defineProperties(Window.prototype,prototypeAccessors$1);return Window}(Base);var buttonAttrs=["left","right","center","condition"];Base.extendWith(Window,{template:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]},cssId:"window",partials:{pane:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}]}.t,title:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}]}.t,contents:{v:4,t:""}.t,status:{v:4,t:""}.t},data:function data(){return{buttons:[],visibleButtons:0}},computed:{leftButtons:function leftButtons(){return(this.get("buttons")||[]).filter(function(b){return b.where==="left"})},centerButtons:function centerButtons(){return(this.get("buttons")||[]).filter(function(b){return b.where==="center"})},rightButtons:function rightButtons(){return(this.get("buttons")||[]).filter(function(b){return!b.where||b.where==="right"})}},decorators:{button:function button(node){var ctx=this.getContext(node);ctx.add("visibleButtons");return{update:function update(){},teardown:function teardown(){ctx.subtract("visibleButtons")}}}},on:{config:function config(){var parent=Window.prototype.template;var child=this.template;if(typeof parent!=="string"&&!Array.isArray(parent)&&parent.t){parent=parent.t}if(typeof child!=="string"&&!Array.isArray(child)&&child.t){child=child.t}if(parent!==child){if(!this.partials.hasOwnProperty("contents")){this.partials.contents=child}this.template=parent}},construct:function construct(){var wnd=this.constructor;if(!wnd._constructed){wnd._constructed=1;var tpl=wnd.prototype.template.t.slice();var btns=tpl.find(function(e){return e.e==="buttons"});wnd.prototype.template.t=tpl.filter(function(e){return e.e!=="buttons"});function mapButton(b){var attrs=b.m||[];var res={partial:{t:[{t:b.t,e:b.e,f:b.f,m:attrs.filter(function(a){return!~buttonAttrs.indexOf(a.n)})}]},where:attrs.find(function(a){return a.n==="left"})?"left":attrs.find(function(a){return a.n==="center"})?"center":"right"};res.partial.t[0].m.push({t:71,n:"button"});return res}if(btns){wnd._btns=btns.f.filter(function(e){return e.e==="button"||e.t===4&&(e.n===50||e.n===51)&&e.f.find(function(e){return e.e==="button"})}).map(function(n){if(n.t===4){return n.f.filter(function(e){return e.e==="button"}).map(function(bb){var b=mapButton(bb);var f={t:n.t,n:n.n,f:[b.partial.t[0]]};if(n.r){f.r=n.r}if(n.rx){f.rx=n.rx}if(n.x){f.x=n.x}b.partial={t:[f]};return b})}else{var b=mapButton(n);return[b]}}).reduce(function(a,c){return a.concat(c)},[])}}},init:function init(){var wnd=this.constructor;if(wnd._btns&&!this.get("buttons.length")){this.set("buttons",wnd._btns)}}},observe:{"control.max root.max root.userMax control.width control.height root.dimensions.clientHeight root.dimensions.clientWidth":{handler:function handler(v,o,k){if(!this.get("control.id")){return}var max=this.get("control.max")||this.get("root.userMax")||this.get("root.max");var actual=this.get("control.actual")||{};if(max){if(!actual.max){var root=this.wrapper;if(this.wrapper){this.set("control.actual",{width:this.host.sizeInEm(this.wrapper.clientWidth),height:this.host.sizeInEm(this.wrapper.clientHeight),max:max})}}else if(~k.indexOf("client")&&typeof v==="number"){if(~k.indexOf("Width")){this.set("control.actual.width",this.host.sizeInEm(v))}else if(~k.indexOf("Height")){this.set("control.actual.height",this.host.sizeInEm(v))}}}else{if(typeof v==="number"){if(~k.indexOf("width")){this.set("control.actual.width",v)}else if(~k.indexOf("height")){this.set("control.actual.height",v)}}if(actual.max){this.set("control.actual",{width:this.get("control.width"),height:this.get("control.width"),max:max})}this.set("control.actual.max",false)}},init:false,defer:true}}});export function plugin(opts){if(opts===void 0)opts={};return function(ref){var instance=ref.instance;instance.components[opts.name||"host"]=Host}}globalRegister("RMWindowHost","components",Host);globalRegister("RMWindow","components",Window);Host.prototype.Window=Window;export default plugin; | ||
import Ractive from"ractive";import expand from"./transition-expand";import toast from"./Toast";import globalRegister from"./globalRegister";var escape=Ractive.escapeKey;var windowTrans;export var Base=function(Ractive){function Base(opts){Ractive.call(this,opts)}if(Ractive)Base.__proto__=Ractive;Base.prototype=Object.create(Ractive&&Ractive.prototype);Base.prototype.constructor=Base;return Base}(Ractive);Ractive.extendWith(Base,{css:function(data){return[function(data){var primary=Object.assign({},data("raui.primary"),data("raui.window.primary"));primary.action=Object.assign({},data("raui.window.action"),data("raui.window.primary.action"));primary.host=Object.assign({},data("raui.window.host"),data("raui.window.primary.host"));primary.title=Object.assign({inactive:{}},data("raui.window.title"),data("raui.window.primary.title"));return"\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: "+(primary.host.bg||primary.bg||"#fff")+";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n width: 100%;\n height: 100%;\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: "+(primary.handleSize||7)+"px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: "+(primary.bg||"#fff")+";\n color: "+(primary.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: "+(primary.minWidth||"6em")+";\n min-height: "+(primary.minHeight||"6em")+";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: "+(primary.title.inactive.bg||primary.fg||"#222")+";\n color: "+(primary.title.inactive.fg||primary.bg||"#fff")+";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: "+(primary.title.bg||primary.fga||"#07e")+";\n color: "+(primary.title.fg||primary.bg||"#fff")+";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid "+(primary.action.bc||primary.bc||"#ccc")+";\n background-color: "+(primary.action.bg||primary.bg||"#fff")+";\n color: "+(primary.action.fg||primary.fg||"#222")+";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n "+(typeof data("raui.window.extra")==="function"?data("raui.window.extra").call(this,data):"")+"\n "}.call(this,data)].join(" ")},cssId:"rwindow",noCssTransform:true,delegate:false,decorators:{tracked:function tracked(node,id){this[id]=node;return{teardown:function teardown(){if(this[id]===node){this[id]=null}}}}},transitions:{window:function window(t,params){if(windowTrans){return t.complete()}windowTrans=t;var p=t.processParams(params,{duration:400,easing:"easeInOut"});var parent=t.node.parentNode;var overflow=parent.style?parent.style.overflow:"";if(parent.style){parent.style.overflow="hidden"}if(t.isIntro||p.intro){t.setStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0});setTimeout(function(){t.animateStyle({transform:"none",opacity:1},p).then(function(){t.setStyle("opacity",1);windowTrans=false;t.complete();if(parent.style){parent.style.overflow=overflow}})})}else{t.setStyle({transform:"none",opacity:1});t.animateStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0},p).then(function(){windowTrans=false;t.complete();if(parent.style){parent.style.overflow=overflow}})}},slide:function slide(t,params){var p=t.processParams(params,{duration:400,easing:"easeInOut"});var parent=t.node.parentNode;var overflow=parent.style?parent.style.overflow:"";var done=function(){t.complete();if(parent.style){setTimeout(function(){return parent.style.overflow=overflow})}};if(parent.style){parent.style.overflow="hidden"}if(t.isIntro||p.intro){if(p.from==="top"){t.setStyle({transform:"translateY(-100%)"});t.animateStyle({transform:"translateY(0)"},p).then(done)}else if(p.from==="bottom"){t.setStyle({transform:"translateY(100%)"});t.animateStyle({transform:"translateY(0)"},p).then(done)}else if(p.from==="left"){t.setStyle({transform:"translateX(-100%)"});t.animateStyle({transform:"translateX(0)"},p).then(done)}else if(p.from==="right"){t.setStyle({transform:"translateX(100%)"});t.animateStyle({transform:"translateX(0)"},p).then(done)}}else{if(p.from==="top"){t.setStyle({transform:"translateY(0)"});t.animateStyle({transform:"translateY(-100%)"},p).then(done)}else if(p.from==="bottom"){t.setStyle({transform:"translateY(0)"});t.animateStyle({transform:"translateY(100%)"},p).then(done)}else if(p.from==="left"){t.setStyle({transform:"translateX(0)"});t.animateStyle({transform:"translateX(-100%)"},p).then(done)}else if(p.from==="right"){t.setStyle({transform:"translateX(0)"});t.animateStyle({transform:"translateX(100%)"},p).then(done)}}}}});var id=0;export var Host=function(Base){function Host(opts){Base.call(this,opts);this.defaults={}}if(Base)Host.__proto__=Base;Host.prototype=Object.create(Base&&Base.prototype);Host.prototype.constructor=Host;var prototypeAccessors={current:{configurable:true},currentId:{configurable:true},placement:{configurable:true},topmost:{configurable:true},windows:{configurable:true}};prototypeAccessors.current.get=function(){var top=this.get("topLevel");return this.getWindow(this.get("windows")[top].id)};prototypeAccessors.currentId.get=function(){var top=this.get("topLevel");return this.get("windows."+escape(top)+".id")};prototypeAccessors.placement.get=function(){return this.get("placement")};prototypeAccessors.placement.set=function(v){return this.set("placement",v)};prototypeAccessors.topmost.get=function(){var windows=this.get("windows");for(var k in windows){if(windows[k].topmost){return this.getWindow(windows[k].id)}}};prototypeAccessors.windows.get=function(){return Object.keys(this.get("windows"))};Host.prototype.addWindow=function addWindow(window,opts){var this$1=this;var options=Object.assign({},this.defaults,window.constructor.prototype.options,window.options,window.get("options"),opts);if(!(window instanceof Window)){throw new Error("Windows must be instances of Window")}if(!window.id){window.set("@.id",options.id||"window"+id++)}if(!this.get("windows."+escape(window.id))){this.set("windows."+escape(window.id),Object.assign({show:options.show!==false,autosize:true,id:window.id,blockers:[],close:true,minimize:true,maximize:true},options,{id:window.id}))}window.host=this;var promise=this.attachChild(window,{target:"window"});var parent;if(options.block){parent=options.block.id||options.block;if(typeof parent==="string"&&parent in this.get("windows")){this.push("windows."+escape(parent)+".blockers",window.id);window.set("control.blocking",parent)}else{parent=false}}if(options.slide){}else if(options.size==="fill"&&(parent||options.block)){var wnd;if(options.block===true){wnd=this.find(".rwhost-pane")}else if(wnd=this.getWindow(parent)){wnd=wnd.find(".rwindow")}if(wnd){window.size(wnd.clientWidth-(options.fillPad||20),wnd.clientHeight-(options.fillPad||20));if(options.block&&!(options.top||options.left)){options.top=options.left=Math.floor((options.fillPad||20)/2)}}}else if(options.width&&options.height){window.size(options.width,options.height)}else{window.size("auto")}if(options.slide){}else if(options.top&&options.left){window.move(options.top,options.left)}else{this.place(window)}this.raise(window,{show:options.show!==false,parent:options.stickToParent});window.on("close",function(){var blocking=window.get("control.blocking");if(blocking){var blockers=this$1.windowGet(blocking,"blockers")||[];this$1.splice("windows."+escape(blocking)+".blockers",blockers.indexOf(window.id),1)}this$1.detachChild(window).then(function(){return window.teardown()});this$1.set("windows."+escape(window.id)+".block",false);this$1.set("windows."+escape(window.id)+".index",-1);this$1.raise();this$1.set("windows."+escape(window.id),undefined);delete this$1.get("windows")[window.id]});this.update("windows."+escape(window.id)+".id",{force:true});return promise.then(function(){return window})};Host.prototype.getWindow=function getWindow(id){return this.children.byName.window&&this.children.byName.window.filter(function(w){return w.instance.id===id}).map(function(w){return w.instance})[0]};Host.prototype.windowGet=function windowGet(id,path){return this.get("windows."+escape(id)+"."+path)};Host.prototype.windowSet=function windowSet(id,path,val){return this.set("windows."+escape(id)+"."+path,val)};Host.prototype.raise=function raise(window,opts){var this$1=this;if(opts===void 0)opts={};var wnd=window instanceof Window?window:this.children.byName.window.filter(function(a){return a.instance.id===window}).map(function(a){return a.instance})[0];var object=this.get("windows",{virtual:false});var host=this;var wnds=Object.keys(object).map(function(k){return object[k]});var top=(wnds.length+1)*2;var last=this.get("topLevel");var wasBlocked=this.get("blocked");var id=wnd?wnd.get("control.id"):wnds.reduce(function(a,c){return!a?c:c.index>a.index?c:a},null);if(!wnd&&id){wnd=this.children.byName.window.find(function(a){return a.instance.id===id})}function blocks(ctrl){if(ctrl.blockers){ctrl.blockers.forEach(function(b,i){var w=wnds.find(function(w){return w.id===b});if(!w){return}w.index=ctrl.index+i+1;blocks(w)})}}function liftBlocked(control,pos){if(!control){return}control.index=pos--;if(control.blocking){liftBlocked(wnds.find(function(w){return w.id===control.blocking}),pos)}blocks(control)}if(wnd){var ctrl=wnd.get("control");ctrl.index=opts.show===false?-1:top;blocks(ctrl);if(ctrl.blocking){liftBlocked(wnds.find(function(w){return w.id===ctrl.blocking}),top-1)}if(opts.show!==false&&!ctrl.show){wnd.show()}}wnds.filter(function(w){return w.show!==false&&w.block===true}).forEach(function(w){this$1.set("windows."+escape(w.id)+".index",(w.index||0)+top);blocks(w)});var ordered=wnds.sort(function(l,r){return!l.show?-1:!r.show?1:l.index<r.index?-1:1});var visible=ordered.filter(function(w){return w.show});top=ordered.indexOf(visible[visible.length-1]);var sets={};var modalIdx=null;ordered.forEach(function(w,i){var key=escape(w.id);if(w.block===true&&modalIdx===null){modalIdx=i}sets["windows."+key+".index"]=w.index=modalIdx!==null?i+2:i;sets["windows."+key+".topmost"]=i===top;sets["windows."+key+".stack"]=ordered.length-i});if(modalIdx!==null){sets.blocked=modalIdx+1}else{sets.blocked=0}if(~top&&ordered.length){sets.topLevel=ordered[top].id}else{sets.topLevel=null}this.set(sets);top=sets.topLevel;if(top&&top!==last&&this.get("currentMax")&&this.rendered){var leaving=this.get("windows."+escape(last));wnd=this.getWindow(top);var transition=this.get("transition");if(transition!==false&&!wnd.get("control.slide")&&(!leaving||!leaving.dialog&&!leaving.slide&&(!leaving.blocking||leaving.blocking&&leaving.blocking!==top))){wnd.transition(transition||"window",wnd.find("div"),{intro:true})}}};Host.prototype.place=function place(wnd){var this$1=this;if(!wnd.get("control.show")){return Promise.resolve()}return new Promise(function(ok){requestAnimationFrame(function(){var local=wnd.get("control");if(local.width===undefined){wnd.size("auto")}var left=0;var top=0;if(!(this$1.fragment&&this$1.fragment.rendered)){return}var host=this$1.find(".rwhost");var maxw=host.clientWidth;var maxh=host.clientHeight;var blocking=local.blocking;if(blocking){var key="windows."+escape(blocking);var blocked=this$1.get(key);var max=local.max||!local.dialog&&(this$1.get("max")||this$1.get("userMax"));var bmax=blocked.max||this$1.get("userMax")||this$1.get("max");var bw=bmax?this$1.host.clientWidth:this$1.sizeInPx(blocked.width+"em");var bh=bmax?this$1.host.clientHeight:this$1.sizeInPx(blocked.height+"em");var bl=bmax?0:blocked.left;var bt=bmax?0:blocked.top;left=(max?maxw:bw/2)+(max?0:bl)-this$1.sizeInPx(local.width+"em")/2;top=(max?maxh:bh/2)+(max?0:bt)-this$1.sizeInPx(local.height+"em")/2}else{var place=this$1.get("placement");var pos;if(typeof place==="function"){try{pos=place(this$1,host,local)}catch(e){pos=placeGrid(this$1,host,local)}}else if(typeof place==="string"){switch(place){case"smart":pos=placeSmart(this$1,host,local);break;default:pos=placeGrid(this$1,host,local);break}}else{pos=placeGrid(this$1,host,local)}top=pos.top;left=pos.left}if(isNaN(left)||left<0){left=10}if(isNaN(top)||top<0){top=10}wnd.set({"control.top":top,"control.left":left});ok()})})};Host.prototype.sizeInPx=function sizeInPx(size){if(!this.sizer){return parseFloat(size)*16}this.sizer.style.width=typeof size==="number"?size+"px":size;return this.sizer.clientWidth};Host.prototype.sizeInEm=function sizeInEm(size){var px=this.sizeInPx(size);return px/this.sizeInPx("1em")};Object.defineProperties(Host.prototype,prototypeAccessors);return Host}(Base);function placeGrid(host,target,node){var maxw=target.clientWidth;var maxh=target.clientHeight;var top=0,left=0;var grid1=host._grid1===undefined?host._grid1=0:host._grid1>7?host._grid1=0:++host._grid1;var width=Math.floor(maxw/3);var height=Math.floor(maxh/3);var localWidth=host.sizeInPx(node.width+"em");var localHeight=host.sizeInPx(node.height+"em");switch(grid1){case 5:case 7:case 8:top=maxh-localHeight-10;break;case 2:case 4:case 6:top=height+Math.floor((height-localHeight)/2);break;case 0:case 1:case 3:top=10;break}switch(grid1){case 3:case 6:case 8:left=maxw-localWidth-10;break;case 1:case 4:case 7:left=width+Math.floor((width-localWidth)/2);break;case 0:case 2:case 5:left=10;break}if(left+localWidth>maxw){left=maxw-localWidth-10}if(top+localHeight>maxh){top=maxh-localHeight-10}return{top:top,left:left}}function placeSmart(host,target,node){var maxw=target.clientWidth-10;var maxh=target.clientHeight-10;var i,j;var cell=16;var mh=Math.floor(maxh/cell),mw=Math.floor(maxw/cell);var grid=new Array(mh*mw);var dest=new Array(mh*mw);for(i=0;i<grid.length;i++){grid[i]=0}var win,t,l,w,h,wins=0;var windows=host.get("windows");for(var k in windows){wins++;win=windows[k];t=Math.floor(win.top/cell);l=Math.floor(win.left/cell);h=Math.ceil(host.sizeInPx(win.height+"em")/cell);w=Math.ceil(host.sizeInPx(win.width+"em")/cell);for(i=t;i<t+h&&i<mh;i++){for(j=l;j<l+w&&j<mw;j++){grid[i*mw+j]++}}}var c,ii,jj;w=Math.ceil(host.sizeInPx(node.width+"em")/cell);h=Math.ceil(host.sizeInPx(node.height+"em")/cell);for(i=0;i<mh;i++){for(j=0;j<mw;j++){if(i+h>mh||j+w>mw){c=wins*w*h}else{c=0;for(ii=0;ii<h;ii++){for(jj=0;jj<w;jj++){c+=grid[(i+ii)*mw+j+jj]}}}if(c===0){return{top:i*cell+5,left:j*cell+5}}dest[i*mw+j]=c}}c=wins*w*h;ii=0;for(i=0;i<dest.length;i++){if(dest[i]<c){c=dest[i];ii=i}}return{top:Math.floor(ii/mw)*cell+5,left:ii%mw*cell+5}}Base.extendWith(Host,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost",g:1},{n:"tracked",t:71,f:{r:[],s:'["host"]'}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-sizer",g:1},{n:"tracked",t:71,f:{r:[],s:'["sizer"]'}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-max-top",g:1},{t:4,f:[{t:16,r:"~/_maxAttrsP"}],n:50,r:"~/_maxAttrsP"}],f:[{t:16,r:"~/_maxP",z:[{n:"window",x:{r:"~/current"}},{n:"windowControls",x:{x:{r:["@this.partials.windowControls"],s:"{t:_0}"}}},{n:"host",x:{r:"@this"}}]}]}],n:50,x:{r:["~/currentMax","~/_maxP"],s:"_0&&_1"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane",g:1},{n:"class-rwhost-blocked",t:13,f:[{t:2,r:"~/blocked"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane-content",g:1}],f:[{t:16}]}," ",{t:4,f:[{t:11,n:"window",m:[{n:"control",f:[{t:2,rx:{r:"~/windows",m:[{t:30,n:".instance.id"}]}}],t:13},{n:"root",t:13,f:[{t:2,r:"~/"}]}]}],n:52,r:"@this.children.byName.window"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-modal",g:1},{n:"tracked",t:71,f:{r:[],s:'["modalPane"]'}},{t:4,f:[{n:"class-rwhost-modal-active",t:13},{n:"style-z-index",f:[{t:2,r:"~/blocked"}],t:13}],n:50,r:"~/blocked"}]}]}," ",{t:8,r:"toast"}]}],e:{'["host"]':function(){return["host"]},'["sizer"]':function(){return["sizer"]},"{t:_0}":function(_0){return{t:_0}},"_0&&_1":function(_0,_1){return _0&&_1},'["modalPane"]':function(){return["modalPane"]},"[_0.getWindow(_1).hide()]":function(_0,_1){return[_0.getWindow(_1).hide()]},"!_0&&_1":function(_0,_1){return!_0&&_1},"[_0.getWindow(_1).maximize()]":function(_0,_1){return[_0.getWindow(_1).maximize()]},"!_0&&_1&&_2":function(_0,_1,_2){return!_0&&_1&&_2},"[_0.getWindow(_1).close()]":function(_0,_1){return[_0.getWindow(_1).close()]},'["top"]':function(){return["top"]},"[_0.hide()]":function(_0){return[_0.hide()]},"[_0.maximize()]":function(_0){return[_0.maximize()]},"[_0.close()]":function(_0){return[_0.close()]},"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6":function(_0,_1,_2,_3,_4,_5,_6){return!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6},'["content"]':function(){return["content"]},"!_0":function(_0){return!_0},"[_0.call(_1)]":function(_0,_1){return[_0.call(_1)]},'["wrapper"]':function(){return["wrapper"]},"_0!==false":function(_0){return _0!==false},"_0||_1":function(_0,_1){return _0||_1},"(_0||_1||_2)&&!_3&&!_4":function(_0,_1,_2,_3,_4){return(_0||_1||_2)&&!_3&&!_4},"[{from:_0}]":function(_0){return[{from:_0}]},"[_0._startResize(_1)]":function(_0,_1){return[_0._startResize(_1)]},"[_0._sizeHandle(_1)]":function(_0,_1){return[_0._sizeHandle(_1)]},"[_0._startMove(_1)]":function(_0,_1){return[_0._startMove(_1)]},"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5":function(_0,_1,_2,_3,_4,_5){return!(_4===false||(_0||_1)&&!_3||_2)&&(!_3||_4===true)&&!_5},"[_0.raise()]":function(_0){return[_0.raise()]},'["pane"]':function(){return["pane"]},"_0&&!_1":function(_0,_1){return _0&&!_1}},p:{title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],windowControls:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).hide()]"}}]}],n:50,x:{r:["window.dialog","window.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).maximize()]"}}]}],n:50,x:{r:["window.dialog","window.maximize","host.data.userMax"],s:"!_0&&_1&&_2"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).close()]"}}]}],n:50,r:"window.close"}]}],pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],window:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]}},use:[toast(),expand()],cssId:"window-host",noIntro:true,observe:{"@style.raui.window.maxFrom":function _style_raui_window_maxFrom(){initMediaListener(this)},topLevel:function topLevel(v){if(v){this.link("windows."+escape(v),"current")}else{this.unlink("current")}},currentMax:{handler:function handler(v){(this.children.byName.window||[]).forEach(function(w){return w.instance.fire("resize")})},defer:true}},computed:{currentMax:function currentMax(){var top=this.get("topLevel");var max=this.get("windows."+escape(top)+".max");var user=this.get("userMax");return user||this.get("max")||max}},on:{config:function config(){var this$1=this;var content=this.partials.content;if(content&&Array.isArray(content)){content=this.partials.content=content.slice();var i=content.length;while(i--){var e=content[i];if(e.e==="max-top"){content.splice(i,1);this.set({_maxP:{t:e.f},hideTitleMax:true});if(e.m){this.set({_maxAttrsP:{t:e.m}})}}}}if(typeof window!=="undefined"){var tm;this._resizeListener=function(){if(tm){return}tm=setTimeout(function(){tm=null;this$1.fire("resize")},300)};window.addEventListener("resize",this._resizeListener)}},teardown:function teardown(){if(this._resizeListener){window.removeEventListener("resize",this._resizeListener)}}}});function initMediaListener(r){if(r._media){r._media.fn()}else{r._media={};r._media.fn=function(){if(!r.host){return}var max=r.sizeInPx(r.get("@style.raui.window.maxFrom"));var trans=r.transitionsEnabled;r.transitionsEnabled=false;r.set("max",r.host.clientWidth<=max);r.set("dimensions",{clientWidth:r.host.clientWidth,clientHeight:r.host.clientHeight});r.transitionsEnabled=trans};r._media.handle=r.root.on("*.resize",r._media.fn);setTimeout(r._media.fn)}}function findEvent(instance){var i=instance;while(i){if(i.event&&i.event){return i.event.event}i=i.parent}}function getEventCoords(event){var node=event.target;if(!node){return{x:0,y:0}}var rect=node.getBoundingClientRect();return{x:Math.round(rect.left+(rect.right-rect.left)/2),y:Math.round(rect.top+(rect.bottom-rect.top)/2)}}Ractive.transitions.modal=function(t,parms){var params=t.processParams(parms,{duration:400,easing:"easeOut",x:0,y:-50,event:true});var event=null;var current={x:t.node.offsetLeft,y:t.node.offsetTop};var styles;var overflow=t.node.parentNode.style?t.node.parentNode.style.overflow:"hidden";if(!event&&!t.node._modalSrc){if(t.isIntro){styles={transform:"translate(0, 0) scale(1, 1)",opacity:1};t.setStyle({transform:"translate("+params.x+"px, "+params.y+"px) scale(0.5, 0.5)",opacity:0})}else{styles={transform:"translate("+params.x+"px, "+params.y+"px) scale(0.5, 0.5)",opacity:0}}}else{var click=t.node._modalSrc||(event?getEventCoords(event):{x:current.x+params.x,y:current.y+params.y});var target={x:click.x-Math.round(t.node.clientWidth/2)-current.x,y:click.y-Math.round(t.node.clientHeight/2)-current.y};if(t.node.parentNode.style){t.node.parentNode.style.overflow="hidden"}if(t.isIntro){t.node._modalSrc=click;styles={transform:"translate(0, 0) scale(1, 1)",opacity:1};t.setStyle({transform:"translate("+target.x+"px, "+target.y+"px) scale(0.5, 0.5)",opacity:0})}else{styles={transform:"translate("+target.x+"px, "+target.y+"px) scale(0.5, 0.5)",opacity:0}}}t.animateStyle(styles,params).then(function(){if(t.node.parentNode.style){t.node.parentNode.style.overflow=overflow}t.complete()})};var moveEvents=["mousemove","mouseup","touchmove","touchend"];var handleSize=7;export var Window=function(Base){function Window(opts){Base.call(this,opts)}if(Base)Window.__proto__=Base;Window.prototype=Object.create(Base&&Base.prototype);Window.prototype.constructor=Window;var prototypeAccessors$1={resizable:{configurable:true},title:{configurable:true},visible:{configurable:true},pad:{configurable:true},buttons:{configurable:true},blocked:{configurable:true},result:{configurable:true}};prototypeAccessors$1.resizable.get=function(){return this.get("control.resizable")};prototypeAccessors$1.resizable.set=function(v){return this.set("control.resizable",v)};prototypeAccessors$1.title.get=function(){return this.get("control.title")};prototypeAccessors$1.title.set=function(v){return this.set("control.title",v)};prototypeAccessors$1.visible.get=function(){return this.get("control.show")};prototypeAccessors$1.visible.set=function(v){if(v){this.show()}else{this.set("control.show",v,{keep:true})}this.host.raise(this,{show:v})};prototypeAccessors$1.pad.get=function(){return this.get("pad")};prototypeAccessors$1.pad.set=function(v){this.set("pad",v)};prototypeAccessors$1.buttons.get=function(){return this.get("buttons")};prototypeAccessors$1.buttons.set=function(v){return this.set("buttons",v)};prototypeAccessors$1.blocked.get=function(){return this.get("control.blocked")};prototypeAccessors$1.blocked.set=function(v){return this.set("control.blocked",v)};prototypeAccessors$1.result.get=function(){var this$1=this;if(!this._result){this._result={};this._result.promise=new Promise(function(ok){this$1._result.ok=ok})}return this._result.promise};Window.prototype.setResult=function setResult(v){this.result;this._result.value=v};Window.prototype.close=function close(force,result){if(force!==true){if(!this.parent){return false}if(this.get("control.blockers.length")){return false}if(typeof this.beforeClose==="function"&&this.beforeClose()===false){return false}if(this.fire("beforeClose")===false){return false}}this.fire("close");if(this._result){this._result.ok(this._result.value||result)}return true};Window.prototype.maximize=function maximize(){this.toggle("root.userMax")};Window.prototype.hide=function hide(){this.visible=false};Window.prototype.raise=function raise(show){this.host.raise(this,{show:show})};Window.prototype.show=function show(){this.set("control.show",true);if(this.get("control.top")===undefined){this.host.place(this)}};Window.prototype.size=function size(w,h){var this$1=this;return new Promise(function(ok){requestAnimationFrame(function(){if(!this$1.visible){if(typeof w==="number"&&typeof h==="number"){this$1.set({"control.width":this$1.host.sizeInEm(w),"control.height":this$1.host.sizeInEm(h),"control.naturalWidth":this$1.host.sizeInEm(w),"control.naturalHeight":this$1.host.sizeInEm(h),"control.autosize":false})}return}var el=this$1.wrapper;if(!el){return}if(w==="auto"){this$1.set("control.autosize",true);var nw=this$1.host.sizeInEm(el.clientWidth+16);var nh=this$1.host.sizeInEm(el.clientHeight);this$1.set({"control.width":nw,"control.height":nh,"control.naturalWidth":nw,"control.naturalHeight":nh,"control.autosize":false})}else if(typeof w==="number"&&typeof h==="number"){this$1.set({"control.width":this$1.host.sizeInEm(w),"control.height":this$1.host.sizeInEm(h),"control.naturalWidth":this$1.host.sizeInEm(w),"control.naturalHeight":this$1.host.sizeInEm(h),"control.autosize":false})}else if(typeof w==="string"&&typeof h==="string"){var ow=el.style.width;var oh=el.style.height;el.style.width=w;el.style.height=h;var nw$1=el.clientWidth;var nh$1=el.clientHeight;el.style.width=ow;el.style.height=oh;this$1.set({"control.width":this$1.host.sizeInEm(nw$1),"control.height":this$1.host.sizeInEm(nh$1),"control.naturalWidth":this$1.host.sizeInEm(nw$1),"control.naturalHeight":this$1.host.sizeInEm(nh$1),"control.autosize":false})}this$1.fire("resize");ok()})})};Window.prototype.move=function move(top,left){var this$1=this;return new Promise(function(ok){requestAnimationFrame(function(){if(top==="center"){top=this$1.host.modalPane.clientHeight/2-this$1.wrapper.clientHeight/2}else if(typeof top==="string"){top=this$1.host.sizeInEm(top)}if(left==="center"){left=this$1.host.modalPane.clientWidth/2-this$1.wrapper.clientWidth/2}if(typeof left==="string"){left=this$1.host.sizeInEm(left)}var set={};if(typeof top==="number"){set["control.top"]=top}if(typeof left==="number"){set["control.left"]=left}this$1.set(set);ok()})})};Window.prototype._startMove=function _startMove(event){var this$1=this;if(event.type==="mousedown"&&event.button!==0){return}if(!this.get("control.topmost")){this.raise()}if(~event.type.indexOf("mouse")){if(!this.top||!event.ctrlKey&&event.target!==this.content&&event.target!==this.top&&!this.top.contains(event.target)){return}}else{if(event.targetTouches&&event.targetTouches.length===1&&event.target!==this.content&&event.target!==this.top&&!this.top.contains(event.target)){return}}var wnd=this.pane;var cursor=wnd.style.cursor;wnd.style.cursor="move";wnd.style.userSelect="none";var sx=event.x||event.clientX||event.targetTouches&&event.targetTouches[0].clientX||0;var sy=event.y||event.clientY||event.targetTouches&&event.targetTouches[0].clientY||0;var ox=this.get("control.left")||0;var oy=this.get("control.top")||0;var ow=wnd.clientWidth;var oh=wnd.clientHeight;var _move=function(ev){var x=ev.x||ev.clientX||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientX||ev.changedTouches&&ev.changedTouches[0].clientX||0;var y=ev.y||ev.clientY||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientY||ev.changedTouches&&ev.changedTouches[0].clientY||0;var nx=ox+(x-sx);var ny=oy+(y-sy);if(nx<(ow<30?0:30-ow)){nx=ow<30?0:30-ow}if(ny<(oh<30?0:30-oh)){ny=oh<30?0:30-oh}if(nx<0){nx=0}if(ny<0){ny=0}this$1.set({"control.top":ny,"control.left":nx});if(ev.type==="touchend"||ev.type==="mouseup"){moveEvents.forEach(function(e){return document.removeEventListener(e,_move,{passive:false})});wnd.style.cursor=cursor;wnd.style.userSelect=""}else{ev.preventDefault()}};moveEvents.forEach(function(e){return document.addEventListener(e,_move,{passive:false})});if(event.type.indexOf("mouse")===0){return false}};Window.prototype._startResize=function _startResize(event){var this$1=this;if(event.target!==this.wrapper){return}if(event.type==="mousedown"&&event.button!==0){return}if(this.get("control.autosize")){this.size("auto")}if(!this.get("control.topmost")){this.raise()}this.set("control.resizing",true);var el=this.wrapper;var ix=event.offsetX||event.targetTouches&&event.targetTouches[0].pageX-el.getBoundingClientRect().left;var iy=event.offsetY||event.targetTouches&&event.targetTouches[0].pageY-el.getBoundingClientRect().top;var size=this.get("@style.window.handleSize")||handleSize;var right=el.clientWidth-size*2,bottom=el.clientHeight-size*2;var min=2*size;var l=ix<=min||ix>=right;var t=iy<=min||iy>=bottom;var sx=event.x||event.clientX||event.targetTouches&&event.targetTouches[0].clientX||0;var sy=event.y||event.clientY||event.targetTouches&&event.targetTouches[0].clientY||0;var ox=this.get("control.left")||0;var oy=this.get("control.top")||0;var ow=this.host.sizeInPx(this.get("control.width")+"em");var oh=this.host.sizeInPx(this.get("control.height")+"em");var nh=this.host.sizeInPx(this.get("control.naturalHeight")+"em");var nw=this.host.sizeInPx(this.get("control.naturalWidth")+"em");var tm;var _resize=function(ev){ev.preventDefault();var x=ev.x||ev.clientX||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientX||ev.changedTouches&&ev.changedTouches[0].clientX||0;var y=ev.y||ev.clientY||ev.targetTouches&&ev.targetTouches[0]&&ev.targetTouches[0].clientY||ev.changedTouches&&ev.changedTouches[0].clientY||0;var dx=l?x-sx:0;var dy=t?y-sy:0;var set={};if(iy<=size){set["control.top"]=oy+dy;set["control.height"]=oh-dy}else{set["control.height"]=oh+dy}if(ix<=size){set["control.left"]=ox+dx;set["control.width"]=ow-dx}else{set["control.width"]=ow+dx}if(set["control.width"]<nw){delete set["control.width"];delete set["control.left"]}if(set["control.height"]<nh){delete set["control.height"];delete set["control.top"]}if(set["control.left"]<0){set["control.left"]=0}if(set["control.top"]<0){set["control.top"]=0}if(set["control.width"]){set["control.width"]=this$1.host.sizeInEm(set["control.width"])}if(set["control.height"]){set["control.height"]=this$1.host.sizeInEm(set["control.height"])}this$1.set(set);if(ev.type==="touchend"||ev.type==="mouseup"){moveEvents.forEach(function(e){return document.removeEventListener(e,_resize,{passive:false})});this$1.set("control.resizing",false);if(ow!==this$1.get("control.width")||oh!==this$1.get("control.height")){if(tm){clearTimeout(tm)}tm=null;this$1.fire("resize")}}else{if(!tm){tm=setTimeout(function(){this$1.fire("resize");tm=null},200)}}};moveEvents.forEach(function(e){return document.addEventListener(e,_resize,{passive:false})});return false};Window.prototype._sizeHandle=function _sizeHandle(event){if(event.target!==this.wrapper){return}var el=this.wrapper;if(event.type==="mouseout"){return el.style.cursor="auto"}var x=event.offsetX,y=event.offsetY;var size=this.get("@style.window.handleSize")||handleSize;var right=el.clientWidth-size,bottom=el.clientHeight-size;var style=el.style;if(x<=size+size&&y<=size+size||x>=right-size&&y>=bottom-size){style.cursor="nwse-resize"}else if(x>=right-size&&y<=size+size||x<=size+size&&y>=bottom-size){style.cursor="nesw-resize"}else if((x<=size||x>=right)&&(y<bottom||y>size)){style.cursor="ew-resize"}else if((y<=size||y>=bottom)&&(x<right||x>size)){style.cursor="ns-resize"}else{style.cursor="auto"}};Object.defineProperties(Window.prototype,prototypeAccessors$1);return Window}(Base);var buttonAttrs=["left","right","center","condition"];Base.extendWith(Window,{template:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]},cssId:"window",partials:{pane:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}]}.t,title:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}]}.t,contents:{v:4,t:""}.t,status:{v:4,t:""}.t},data:function data(){return{buttons:[],visibleButtons:0}},computed:{leftButtons:function leftButtons(){return(this.get("buttons")||[]).filter(function(b){return b.where==="left"})},centerButtons:function centerButtons(){return(this.get("buttons")||[]).filter(function(b){return b.where==="center"})},rightButtons:function rightButtons(){return(this.get("buttons")||[]).filter(function(b){return!b.where||b.where==="right"})}},decorators:{button:function button(node){var ctx=this.getContext(node);ctx.add("visibleButtons");return{update:function update(){},teardown:function teardown(){ctx.subtract("visibleButtons")}}}},on:{config:function config(){var parent=Window.prototype.template;var child=this.template;if(typeof parent!=="string"&&!Array.isArray(parent)&&parent.t){parent=parent.t}if(typeof child!=="string"&&!Array.isArray(child)&&child.t){child=child.t}if(parent!==child){if(!this.partials.hasOwnProperty("contents")){this.partials.contents=child}this.template=parent}},construct:function construct(){var wnd=this.constructor;if(!wnd._constructed){wnd._constructed=1;var tpl=wnd.prototype.template.t.slice();var btns=tpl.find(function(e){return e.e==="buttons"});wnd.prototype.template.t=tpl.filter(function(e){return e.e!=="buttons"});function mapButton(b){var attrs=b.m||[];var res={partial:{t:[{t:b.t,e:b.e,f:b.f,m:attrs.filter(function(a){return!~buttonAttrs.indexOf(a.n)})}]},where:attrs.find(function(a){return a.n==="left"})?"left":attrs.find(function(a){return a.n==="center"})?"center":"right"};res.partial.t[0].m.push({t:71,n:"button"});return res}if(btns){wnd._btns=btns.f.filter(function(e){return e.e==="button"||e.t===4&&(e.n===50||e.n===51)&&e.f.find(function(e){return e.e==="button"})}).map(function(n){if(n.t===4){return n.f.filter(function(e){return e.e==="button"}).map(function(bb){var b=mapButton(bb);var f={t:n.t,n:n.n,f:[b.partial.t[0]]};if(n.r){f.r=n.r}if(n.rx){f.rx=n.rx}if(n.x){f.x=n.x}b.partial={t:[f]};return b})}else{var b=mapButton(n);return[b]}}).reduce(function(a,c){return a.concat(c)},[])}}},init:function init(){var wnd=this.constructor;if(wnd._btns&&!this.get("buttons.length")){this.set("buttons",wnd._btns)}}},observe:{"control.max root.max root.userMax control.width control.height root.dimensions.clientHeight root.dimensions.clientWidth":{handler:function handler(v,o,k){if(!this.get("control.id")){return}var max=this.get("control.max")||this.get("root.userMax")||this.get("root.max");var actual=this.get("control.actual")||{};if(max){if(!actual.max){var root=this.wrapper;if(this.wrapper){this.set("control.actual",{width:this.host.sizeInEm(this.wrapper.clientWidth),height:this.host.sizeInEm(this.wrapper.clientHeight),max:max})}}else if(~k.indexOf("client")&&typeof v==="number"){if(~k.indexOf("Width")){this.set("control.actual.width",this.host.sizeInEm(v))}else if(~k.indexOf("Height")){this.set("control.actual.height",this.host.sizeInEm(v))}}}else{if(typeof v==="number"){if(~k.indexOf("width")){this.set("control.actual.width",v)}else if(~k.indexOf("height")){this.set("control.actual.height",v)}}if(actual.max){this.set("control.actual",{width:this.get("control.width"),height:this.get("control.width"),max:max})}this.set("control.actual.max",false)}},init:false,defer:true}}});export function plugin(opts){if(opts===void 0)opts={};return function(ref){var instance=ref.instance;instance.components[opts.name||"host"]=Host}}globalRegister("RMWindowHost","components",Host);globalRegister("RMWindow","components",Window);Host.prototype.Window=Window;export default plugin; |
{ | ||
"name": "@evs-chris/raui", | ||
"version": "0.8.9", | ||
"version": "0.8.10", | ||
"description": "Components, decorators, and helpers for Ractive apps that are generally Material-ish", | ||
@@ -5,0 +5,0 @@ "homepage": "https://github.com/evs-chris/raui", |
@@ -149,3 +149,5 @@ // TODO: support for non-numeric formats? | ||
const selectGroup = () => { | ||
const group = groupForPos(groups, node.selectionStart); | ||
let group; | ||
if (node.selectionStart === node.value.length && node.selectionEnd === node.value.length) group = groups[0]; | ||
else group = groupForPos(groups, node.selectionStart); | ||
document.activeElement === node && node.setSelectionRange(group.start, group.end); | ||
@@ -152,0 +154,0 @@ }; |
@@ -783,3 +783,3 @@ import globalRegister from './globalRegister'; | ||
}); | ||
if (label) body.unshift(label.f); | ||
if (label) body.unshift.apply(body, Array.isArray(label.f) ? label.f : [label.f]); | ||
else body.unshift('\xa0'); | ||
@@ -786,0 +786,0 @@ |
@@ -376,5 +376,13 @@ import Ractive from 'ractive'; | ||
let ks; | ||
if (opts.regex) ks = keys.map(k => typeof k === 'string' ? new RegExp(k) : k) | ||
else if (opts.group) ks = { group: keys }; | ||
else ks = keys.map(k => ctx.resolve(k)); | ||
let keyList; | ||
function setKeys(keys) { | ||
const list = keys.join(','); | ||
if (keyList === list) return false; | ||
keyList = list; | ||
if (opts.regex) ks = keys.map(k => typeof k === 'string' ? new RegExp(k) : k) | ||
else if (opts.group) ks = { group: keys }; | ||
else ks = keys.map(k => ctx.resolve(k)); | ||
return true; | ||
} | ||
setKeys(keys); | ||
@@ -396,9 +404,14 @@ const levels = opts.levels || Validator.defaults.levels; | ||
let fn; | ||
fn = () => { | ||
v.refresh(ks); | ||
fn = ev => { | ||
n.removeEventListener('blur', fn); | ||
n.removeEventListener('input', fn); | ||
tab = null; | ||
if (ev.type === 'blur') { | ||
v.refresh(ks); | ||
hook(); | ||
} | ||
}; | ||
tab = [n, fn]; | ||
n.addEventListener('blur', fn); | ||
n.addEventListener('input', fn); | ||
} | ||
@@ -408,2 +421,3 @@ } | ||
function hook() { | ||
if (tab) return; | ||
const level = v.level(ks, true); | ||
@@ -422,2 +436,10 @@ syncClass(node, levels, levels[levelMap[level]]); | ||
const res = { | ||
update(...keys) { | ||
const old = ks; | ||
if (setKeys(keys)) { | ||
v.unhook(old, hook); | ||
v.hook(ks, hook); | ||
hook(); | ||
} | ||
}, | ||
teardown() { | ||
@@ -424,0 +446,0 @@ v.unhook(ks, hook); |
@@ -696,3 +696,3 @@ (function (global, factory) { | ||
}); } | ||
if (label) { body.unshift(label.f); } | ||
if (label) { body.unshift.apply(body, Array.isArray(label.f) ? label.f : [label.f]); } | ||
else { body.unshift('\xa0'); } | ||
@@ -699,0 +699,0 @@ |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],t):t(e.RMAutocomplete={},e.Ractive)}(this,function(e,t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var n="undefined"!=typeof window?window:null;function i(e,t,i){if(n&&n.Ractive&&"object"==typeof n.Ractive[t]){var o=document.currentScript;if(o||(o=(o=document.querySelectorAll("script"))[o.length-1]),o){var r=o.getAttribute("data-alias");r&&(r=(r=r.split("&")).reduce(function(e,t){var n=t.split("="),i=n[0],o=n[1];return e[i]=o,e},{})),Ractive[t][r&&r[e]||e]=i}}}function o(e,t){void 0===t&&(t={});var n=e.processParams(t,{duration:400,easing:"easeInOut"});t.dir=t.dir||!1;var i=t.distance||"20px",o=t.scale||"0.9",r="above"===t.dir?"translateY("+i+")":"left"===t.dir?"translateX("+i+")":"right"===t.dir?"translateX(-"+i+")":"translateY(-"+i+")";return e.isIntro||n.intro?(e.setStyle("opacity",0),e.setStyle("transform","scale("+o+") "+r),e.animateStyle({opacity:1,transform:"none"},n)):(e.setStyle("opacity",1),e.setStyle("transform","none"),e.animateStyle({opacity:0,transform:"scale("+o+") "+r},n))}function r(e){return void 0===e&&(e={}),function(t){t.instance.transitions[e.name||"pop"]=o}}function a(e,t){var n=!1,i=!1;function o(n){for(var i=n.target;i;){if(i===e)return;if(!i.parentNode&&i!==document)return;i=i.parentNode}t(n)}return setTimeout(function(){n=!0,i||(document.body.addEventListener("click",o,{capture:!0}),document.body.addEventListener("touchstop",o,{capture:!0}))}),{teardown:function(){i=!0,n&&(document.body.removeEventListener("click",o,{capture:!0}),document.body.removeEventListener("touchstop",o,{capture:!0}))}}}function l(e,t){var n=e.processParams(t,{duration:200,easing:"easeInOut"});return e.isIntro||n.intro?(e.setStyle("opacity",0),e.animateStyle("opacity",1,n)):(e.setStyle("opacity",1),e.animateStyle("opacity",0,n))}function c(e){return void 0===e&&(e={}),function(t){t.instance.transitions[e.name||"fade"]=l}}i("pop","transitions",o),i("fade","transitions",l);var s,p,f,d={v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-wrapper",g:1},{n:"class-rpop-with-tail",t:13,f:[{t:2,r:"position.tail"}]},{n:"class",f:["rpop-",{t:2,x:{r:["where"],s:'_0||"below"'}}," rpop-align-",{t:2,x:{r:["align"],s:'_0||"middle"'}}],t:13},{t:4,f:[{n:"style-top",f:[{t:2,r:"position.popTop"},"px"],t:13},{n:"style-left",f:[{t:2,r:"position.popLeft"},"px"],t:13}],n:50,r:"position"},{t:4,f:[{t:4,f:[{n:"style-top",f:[{t:2,r:"top"}],t:13}],n:50,r:"top"},{t:4,f:[{n:"style-left",f:[{t:2,r:"left"}],t:13}],n:50,r:"left"}],n:51,l:1},{n:"pop",t:72,f:{r:["where"],s:'[{dir:_0||"below"}]'},v:"t2"},{n:"cleanup",t:71},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:50,r:"clickClose"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:51,r:"noClickout"},{t:16,r:"extra-attributes"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailRight"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail-outer",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailRight"}]}],n:50,r:"~/tail"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1}],f:[{t:16,r:"content"}]}]}],n:50,r:"__popped"}],e:{'_0||"below"':function(e){return e||"below"},'_0||"middle"':function(e){return e||"middle"},'[{dir:_0||"below"}]':function(e){return[{dir:e||"below"}]},'[_0.set("popped",false)]':function(e){return[e.set("popped",!1)]},"_0+(_1?1:0)":function(e,t){return e+(t?1:0)},"_0+(_1?0:1)":function(e,t){return e+(t?0:1)},"_0-2":function(e){return e-2},"[{delay:200}]":function(){return[{delay:200}]},"[_0===_1&&_2.done(),true]":function(e,t,n){return[e===t&&n.done(),!0]},"[_0.done()]":function(e){return[e.done()]},true:function(){return!0}},p:{modal:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-modal",g:1},{n:"fade",t:72,v:"t1"},{n:"fade",t:72,f:{r:[],s:"[{delay:200}]"},v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["@node","@event.target","."],s:"[_0===_1&&_2.done(),true]"}}],n:51,r:".noClickout"}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1},{n:"pop",t:72,f:{r:[],s:"[{delay:200}]"},v:"t1"},{n:"pop",t:72,v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.done()]"}}],n:50,r:".clickClose"},{t:8,r:".attrs",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}],f:[{t:8,r:".content",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}]}]}],n:54,r:"contents.0"}],n:50,r:"contents.length"}]}},u=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.position=function(e){var t=e||this.source,n=this.get("popped");if(t&&n){var i=this.find("div");if(t&&i&&i.offsetParent){var o=i.offsetParent,r=o.getBoundingClientRect(),a=i.getBoundingClientRect(),l=t.getBoundingClientRect(),c=this.get("where")||"below",s=this.get("align")||"middle",p=this.get("tail"),f="above"===c||"below"===c,d=this.get("fit"),u=this.get("gap"),b="above"===c||"below"===c?0:"left"===c?-a.width-u:l.width+u,m="left"===c||"right"===c?-l.height:"above"===c?-l.height-a.height-u:u;"middle"===s?"below"===c||"above"===c?b-=(a.width-l.width)/2:"left"!==c&&"right"!==c||(m-=(a.height-l.height)/2):"end"===s&&("below"===c||"above"===c?b+=l.width-a.width:"left"!==c&&"right"!==c||(m+=l.height-a.height));var h={popTop:l.bottom-r.top+m,popLeft:l.left-r.left+b,tail:p,vert:"above"===c||"below"===c};if(o.scrollTop&&(h.popTop+=o.scrollTop),o.scrollLeft&&(h.popLeft+=o.scrollLeft),p){"above"===c?h.tailBottom=-10:"below"===c?h.tailTop=-10:"left"===c?h.tailRight=-10:"right"===c&&(h.tailLeft=-10);var g=this.tailSource?this.tailSource.getBoundingClientRect():l;"start"===s?f?h.tailLeft=Math.floor(g.width/2)-10:h.tailTop=Math.floor(g.height/2)-10:"end"===s?f?h.tailRight=Math.floor(g.width/2)-10:h.tailBottom=Math.floor(g.height/2)-10:"middle"===s&&(f?h.tailLeft=Math.floor(g.width/2)-10:h.tailTop=Math.floor(g.height/2)-10),g!==l?f?(null!=h.tailLeft&&(h.tailLeft+=g.left-l.left),null!=h.tailRight&&(h.tailRight+=l.right-g.right)):(null!=h.tailTop&&(h.tailTop+=g.top-l.top),null!=h.tailBottom&&(h.tailBottom+=l.bottom-g.bottom)):"middle"===s&&(f?(null!=h.tailLeft&&(h.tailLeft+=g.left-(h.popLeft+r.left)),null!=h.tailRight&&(h.tailRight+=h.popLeft+r.left+a.width-g.right)):(null!=h.tailTop&&(h.tailTop+=g.top-(h.popTop+r.top)),null!=h.tailBottom&&(h.tailBottom+=h.popTop+r.top+a.height-g.bottom)))}if(d){var v=o;if(this.get("offsets"))for(var y=this.get("offsets");y--;)v=v.offsetParent;var x=o.scrollWidth,w=o.scrollHeight;if(h.popLeft+a.width>x){var _=h.popLeft-(x-a.width);h.popLeft-=_,f&&h.tailLeft&&(h.tailLeft+=_),f&&h.tailRight&&(h.tailRight-=_),p&&!f&&(h.tail=!1)}if(h.popLeft<0){var k=-1*h.popLeft;h.popLeft+=k,f&&h.tailLeft&&(h.tailLeft-=k),f&&h.tailRight&&(h.tailRight+=k),p&&!f&&(h.tail=!1)}if(h.popTop+a.height>w){var O=h.popTop-(w-a.height);h.popTop-=O,!f&&h.tailTop&&(h.tailTop+=O),!f&&h.tailBottom&&(h.tailBottom-=O),p&&f&&(h.tail=!1)}if(h.popTop<0){var T=-1*h.popTop;h.popTop+=T,!f&&h.tailTop&&(h.tailTop-=T),!f&&h.tailBottom&&(h.tailBottom+=T),p&&f&&(h.tail=!1)}}this.set("position",h)}else this.set("position",null)}},t.prototype.show=function(e){this.source=e,this.set("popped",!0)},t.prototype.hide=function(){this.set("popped",!1)},t}(t);t.extendWith(u,{attributes:["popped","tail","where","align","top","left","fit","clickClose","noClickout","gap","offsets"],use:[r(),(void 0===f&&(f={}),function(e){e.instance.events[f.name||"clickout"]=a}),c()],template:d,css:function(e){return[function(e){var t=Object.assign({},e("raui.primary"),e("raui.pop.primary")),n=(e("raui.themes")||[]).slice();return(e("raui.pop.themes")||[]).forEach(function(e){~n.indexOf(e)||n.push(e)}),"\n .rpop-wrapper {\n position: absolute;\n display: inline-block;\n z-index: 21;\n transition-property: top, left, padding;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-with-tail.rpop-above {\n padding-bottom: 10px;\n }\n .rpop-with-tail.rpop-below {\n padding-top: 10px;\n }\n .rpop-with-tail.rpop-left {\n padding-right: 10px;\n }\n .rpop-with-tail.rpop-right {\n padding-left: 10px;\n }\n \n .rpop {\n position: relative;\n box-shadow: 0 1px 4px 0 rgba(0,0,0,0.24);\n border: 1px solid #ccc;\n border-radius: 0.2em;\n background-color: "+(t.bg||"#fff")+";\n color: "+(t.fg||"#222")+";\n padding: 0.5em;\n z-index: 2;\n }\n \n .rpop-modal {\n position: fixed;\n display: flex;\n z-index: 20;\n background-color: rgba(0, 0, 0, 0.2);\n align-items: center;\n justify-content: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n padding: 1em;\n overflow: auto;\n }\n \n .rpop-tail, .rpop-tail-outer {\n z-index: 3;\n width: 0;\n height: 0;\n position: absolute;\n border-style: solid;\n border-width: 10px;\n border-color: transparent;\n transition-property: top, left, bottom, right, border-color;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-tail-outer {\n z-index: 1;\n border-width: 12px;\n border-color: transparent;\n }\n \n .rpop-below .rpop-tail {\n border-bottom-color: "+(t.bg||"#fff")+";\n }\n .rpop-below .rpop-tail-outer {\n border-bottom-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-above .rpop-tail {\n border-top-color: "+(t.bg||"#fff")+";\n }\n .rpop-above .rpop-tail-outer {\n border-top-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-left .rpop-tail {\n border-left-color: "+(t.bg||"#fff")+";\n }\n .rpop-left .rpop-tail-outer {\n border-left-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-right .rpop-tail {\n border-right-color: "+(t.bg||"#fff")+";\n }\n .rpop-right .rpop-tail-outer {\n border-right-color: "+(t.bc||"#ccc")+";\n }\n "+n.map(function(t){var n=Object.assign({},e("raui.primary"),e("raui.pop.primary"),e("raui."+t),e("raui.pop."+t));return"\n ."+t+" .rpop {\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n }\n \n ."+t+".rpop-below .rpop-tail {\n border-bottom-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-below .rpop-tail-outer {\n border-bottom-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-above .rpop-tail {\n border-top-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-above .rpop-tail-outer {\n border-top-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-left .rpop-tail {\n border-left-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-left .rpop-tail-outer {\n border-left-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-right .rpop-tail {\n border-right-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-right .rpop-tail-outer {\n border-right-color: "+(n.bc||"#ccc")+";\n }\n "})}.call(this,e)].join(" ")},cssId:"rpop",noCssTransform:!0,observe:{popped:function(e){var t=this;setTimeout(function(){t.get("popped")===e&&t.set("_popped",e)},1)},_popped:{handler:function(e){var t=this;if(e){var n=this.get("@style.raui.pop.mobile");if(n&&window.matchMedia("(max-width: "+n+")").matches){p||(p=new b({target:document.body,append:!0}));var i=this.getContext().getParent(!0);i.isContext=1,this.set("__popped",!1),p.unshift("contents",{content:this.partials.content,context:i,attrs:this.partials["extra-attributes"]||[],clickClose:this.get("clickClose"),noClickout:this.get("noClickout"),done:function(){t.set("popped",!1)}})}else this.set("__popped",!0)}else s?p.shift("contents"):this.set("__popped",!1)},defer:!0},__popped:{handler:function(e){if(e){var t=this.find("div"),n=t,i=n.offsetHeight+n.offsetTop,o=n.offsetWidth+n.offsetLeft,r=n.offsetParent;if(!this.overflows)for(var a=this.overflows={e:[],v:[]};t&&t.style;){if(t===r){if(t.offsetWidth>=o&&t.offsetHeight>=i)break;o+=t.offsetLeft,i+=t.offsetTop,r=t.offsetParent}var l=getComputedStyle(t);if("auto"===l.overflow)break;"hidden"===l.overflow&&(a.e.push(t),a.v.push(t.style.overflow),t.style.overflow="visible"),t=t.parentNode}this.position(),this.transition("pop",n,{intro:!0,dir:this.get("where")||"below"})}else this.source=null,this.tailSource=null},defer:!0},"align where tail fit":{handler:function(){this.position()},defer:!0}},decorators:{cleanup:function(e){var t=this;return{teardown:function(){var e=t.overflows;if(e){t.overflows=null;for(var n=0;n<e.e.length;n++)e.e[n].style.overflow=e.v[n]}}}}},data:function(){return{gap:4}}});var b=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(t);function m(){}function h(e){~this.className.indexOf("focus")||(this.className+=" focus")}function g(e){this.className=this.className.replace(/\bfocus\b/g,"").trim()}function v(e){var t,n,i,o,r,a,l,c,s,p,f,d,u,b=this.getContext(e);function v(){var b=y().split(/\s+/).filter(function(e){return!!e});(t=!!~b.indexOf("field"))||(b.push("field"),t=!0),(n=e.querySelector("input[type=checkbox]"))&&!~b.indexOf("check")&&b.push("check"),(i=e.querySelector("input[type=radio]"))&&!~b.indexOf("radio")&&b.push("radio");var m=n||i;m&&m.checked&&!~b.indexOf("checked")&&b.push("checked"),m&&m.disabled&&!~b.indexOf("disabled")&&b.push("disabled"),!m&&p?(p.cancel(),p=0,f&&(f.disconnect(),f=0),delete m._form_callback,u&&(delete u.checked,d=u=void 0)):m&&(m._form_callback=function(t,n){if(void 0===n&&(n=!0),n&&"radio"===m.type&&m.name){var i=[];i.push.apply(i,document.querySelectorAll("input[type=radio][name="+m.name+"]")),(i=i.filter(function(e){return e!==m})).forEach(function(e){return e._form_callback&&e._form_callback(t,!1)})}var o=m.checked;o&&!~e.className.indexOf("checked")?e.className+=" checked":!o&&~e.className.indexOf("checked")&&(e.className=e.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim())},MutationObserver&&(f=new MutationObserver(function(){var t;(t=m.disabled)&&!~e.className.indexOf("disabled")?e.className+=" disabled":!t&&~e.className.indexOf("disabled")&&(e.className=e.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim())})).observe(m,{attributes:!0}),p=this.getContext(m).listen("change",m._form_callback),(d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(m),"checked"))&&d.configurable&&(u=m,Object.defineProperty(m,"checked",{get:d.get,set:function(e){d.set.call(u,e),m._form_callback()},enumerable:!0,configurable:!0}))),(o=!!e.querySelector("textarea"))&&!~b.indexOf("textarea")&&b.push("textarea"),(r=!!e.querySelector("select"))&&!~b.indexOf("select")&&b.push("select"),(a=!!e.querySelector("input[type=file]"))&&!~b.indexOf("file")&&b.push("file"),(l=!!(l=e.querySelector("button"))&&l.parentNode===e)&&!~b.indexOf("button")&&b.push("button"),(c=!!e.querySelector("div"))&&!~b.indexOf("plain")&&b.push("plain"),(s=!(n||i||a||!e.querySelector("input")))&&!~b.indexOf("input")&&b.push("input"),e.className=b.join(" ")}function y(){var p=e.className;return t||(p=p.replace(/\bfield\b/g,"").trim()),n||(p=p.replace(/\bcheck(ed)?\b/g,"").trim()),i||(p=p.replace(/\bradio\b/g,"").trim()),o||(p=p.replace(/\btextarea\b/g,"").trim()),r||(p=p.replace(/\bselect\b/g,"").trim()),a||(p=p.replace(/\bfile\b/g,"").trim()),l||(p=p.replace(/\bbutton\b/g,"").trim()),c||(p=p.replace(/\bplain\b/g,"").trim()),s||(p=p.replace(/\binput\b/g,"").trim()),p=p.replace(/ +/g," ")}var x=b.listen("focusin",h),w=b.listen("focusout",g);return v.call(this),{update:m,invalidate:v.bind(this),teardown:function(){var t=y();t=t.replace(/\bfocus\b/g,"").trim(),x.cancel(),w.cancel(),p&&p.cancel(),f&&f.disconnect(),u&&(delete u.checked,d=u=void 0),e.className=t}}}function y(e,t){if(!e)return!1;for(var n=0;n<e.length;n++){if(e[n].e===t)return!0;if(e[n].f&&y(e[n].f,t))return!0}return!1}t.extendWith(b,{template:{v:d.v,t:d.p.modal},data:function(){return{contents:[]}},use:[r(),c()],observe:{contents:function(e){s=(e||[]).length>0}},on:{init:function(){p?console.warn("More than one PopOver mobile host created."):p=this}}}),v.style=function(e){var t=Object.assign({},e("raui.primary"),e("raui.form.primary")),n=Object.assign({},e("raui.primary.active"),e("raui.form.primary.active")),i=e("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(t.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(t.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(t.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(i?t.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(n.fg||t.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(n.fg||t.fga||"#07e")+";\n "+(i?"":"box-shadow: 0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n 0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+";")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(i?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(t.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(i?t.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(i?"\n border-radius: "+(t.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(i?"":":disabled")+",\n label.field select"+(i?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(i?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(i?"":"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(t.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(t.bc||"#ccc")+",\n -0.0625em 0.0625em "+(t.bc||"#ccc")+",\n 0.0625em -0.0625em "+(t.bc||"#ccc")+",\n -0.0625em -0.0625em "+(t.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n 0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+";\n }")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(t.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(t.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(t.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(t.fga||"#07e")+";\n background-color: "+(t.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(t.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(t.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(t.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(t.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(t.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(t.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(t.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(t.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(t.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(t.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(t.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(i?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(n.fg||t.fga||"#07e")+";\n "+(i?"":"box-shadow: 0 0.0625em 0 0 "+(n.fg||t.fga||"#07e")+";")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(n.fg||t.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(t.fg||"#222")+";\n text-align: "+(i?"center":"left")+";\n padding: 0.5em "+(i?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(i?"\n border-radius: "+(t.radius||"0.2em")+";\n border-color: "+(t.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(t.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(i?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(i?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(i?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(t.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(i?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(t.radius||"0.2em")+" "+(t.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(t.radius||"0.2em")+" 0 0 "+(t.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(i?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(t.fga||"#07e")+";\n color: "+(t.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "};var x=t.macro(function(e){var t=[],n=(e.template.m||[]).slice(),i=e.template.f||[],o=n.find(function(e){return"value"===e.n}),r=n.find(function(e){return"type"===e.n}),a=n.find(function(e){return"tip"===e.n});if(a&&n.splice(n.indexOf(a),1),r&&"function"==typeof x.types[r.f])t.push.apply(t,x.types[r.f](n,i,e));else if(o){var l={t:7,e:"input",m:[o]};if(y(i,"option")&&(l.e="select",l.f=i),r&&(l.m.push(r),"checkbox"===r.f||"radio"===r.f)){var c=n.find(function(e){return"target"===e.n});c?l.m.push(Object.assign({},c,{n:"name"})):l.m.splice(l.m.indexOf(o),1,Object.assign({},o,{n:"checked"}))}l.m=l.m.concat(n.filter(function(e){return 73===e.t||73===e.t||"placeholder"===e.n})),t.push(l);var s=i.filter(function(e){return"button"===e.e||y(e.f,"button")});s.length&&(t.push.apply(t,s),t=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:t}])}else{var p=i.filter(function(e){return e.e});p.find(function(e){return"button"===e.e})&&p.length>1?t=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:i}]:t.push.apply(t,i)}var f=n.find(function(e){return"label"===e.n});a&&t.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(f?"":" field-solo-tip"),g:1},{t:13,n:"title",f:a.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"}),f?t.unshift(f.f):t.unshift(" ");var d={t:7,e:"label",m:[{t:71,n:"field"}].concat(n.filter(function(e){return 13!==e.t&&73!==e.t||"value"!==e.n&&"type"!==e.n&&"inline"!==e.n&&"label"!==e.n&&"placeholder"!==e.n&&"target"!==e.n})),f:t};n.find(function(e){return"inline"===e.n})&&d.m.push({t:13,n:"class",f:"inline"}),e.setTemplate([d])});function w(e){return"function"==typeof e.focus&&e.focus(),{teardown:m}}x.types={},i("field","decorators",v),i("field","partials",x),i("autofocus","decorators",w);var _={v:4,t:[{t:7,e:"span",m:[{t:13,n:"class",f:"rautocomplete field-wrapper",g:1},{n:["pop"],t:70,f:{r:["@context","$1"],s:'[(_0).set("rac.pop",_1)]'}}],f:[{t:7,e:"input",m:[{t:8,r:"extra-attributes"},{n:["dblclick"],t:70,f:{r:["rac.pop","@node"],s:"[_0.show(_1)]"}},{n:["focus"],t:70,f:{r:["rac"],s:"[_0.stash()]"}},{n:["input"],t:70,f:{r:["rac","@event"],s:"[_0.input(_1)]"}},{n:["keydown"],t:70,f:{r:["rac","@event"],s:"[_0.key(_1)]"}},{t:73,v:"t",f:"false"},{n:"value",f:[{t:2,r:"rac.display"}],t:13}]}," ",{t:7,e:"rac-pop",m:[{t:13,n:"style",f:"padding: 0;",g:1},{t:13,n:"class",f:"rac-pop",g:1},{n:["init"],t:70,f:{r:["@context","$1"],s:'[(_0).raise("pop",{},_1)]'}},{n:"popped",t:13,f:[{t:2,r:"rac.popped"}]},{n:"where",f:"below",t:13,g:1},{n:"align",f:"end",t:13,g:1},{n:"gap",f:[{t:2,x:{r:[],s:"2"},s:1}],t:13},{n:"offsets",t:13,f:[{t:2,r:"rac.offsets"}]},{n:"fit",t:13,f:[{t:2,r:"rac.fit"}]}],f:[{t:4,f:[{t:7,e:"input",m:[{n:"class-rac-modal",t:13},{n:["input"],t:70,f:{r:["rac","@event"],s:"[_0.input(_1)]"}},{n:["keydown"],t:70,f:{r:["rac","@event"],s:"[_0.key(_1)]"}},{t:73,v:"t",f:"false"},{n:"value",f:[{t:2,r:"rac.display"}],t:13},{n:"autocompletefocus",t:71}]}],n:50,r:"inModal"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rac-list",g:1},{n:"tabindex",f:"-1",t:13,g:1}],f:[{t:55,f:[{f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item rac-invalid",g:1}],f:["Loading..."]}],t:4},{t:62,f:[" ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item",g:1},{n:"tabindex",f:"-1",t:13,g:1},{n:"class-rac-selected",t:13,f:[{t:2,x:{r:["rac.value","."],s:"_0===_1"}}]},{n:"class-rac-hover",t:13,f:[{t:2,x:{r:["rac.selected","@index"],s:"_0===_1"}}]},{n:["click"],t:70,f:{r:["@context","."],s:'[(_0).set("rac.value",_1)]'}},{n:["mouseover"],t:70,f:{r:["@context","@index"],s:'[(_0).set("rac.selected",_1)]'}}],f:[{t:2,x:{r:["rac","."],s:"_0._display(_1)"}}]}],n:52,r:"items"}," "],n:"items"},{t:63,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item rac-invalid",g:1}],f:["Load failed."]}]}],r:"rac.list"}]}]}]}],e:{2:function(){return 2},'[(_0).set("rac.pop",_1)]':function(e,t){return[e.set("rac.pop",t)]},"[_0.show(_1)]":function(e,t){return[e.show(t)]},"[_0.stash()]":function(e){return[e.stash()]},"[_0.input(_1)]":function(e,t){return[e.input(t)]},"[_0.key(_1)]":function(e,t){return[e.key(t)]},'[(_0).raise("pop",{},_1)]':function(e,t){return[e.raise("pop",{},t)]},"_0===_1":function(e,t){return e===t},'[(_0).set("rac.value",_1)]':function(e,t){return[e.set("rac.value",t)]},'[(_0).set("rac.selected",_1)]':function(e,t){return[e.set("rac.selected",t)]},"_0._display(_1)":function(e,t){return e._display(t)}}};function k(e,t){return t.reduce(function(e,t){return e?e[t]:e},e)}var O=t.macro(function(e){var n,i;function o(t){null==t&&(t=null==e.get("rac.value")?"":e.get("rac.display")),t===e.get("rac.tempDisplay")&&(t="");var n=e.get("rac._items");if("function"==typeof n){var i=n(t);"object"==typeof i&&"function"==typeof i.then?i.then(function(t){return e.set("rac.list",t)}):e.set("rac.list",i)}else if(Array.isArray(n)){var o,r=e.get("rac._display");try{o=new RegExp(t||"","i")}catch(e){o=new RegExp((t||"").replace(/([\{\(\[\]\)\}\?\*\^\$])/g,"\\$1"))}e.set("rac.list",n.filter(function(e){return o.test(r(e))}))}else e.set("rac.list",[])}function r(n,r,l){var c=e.get("rac.displayprop");if(e.get("rac.__display")!==c||void 0===e.get("rac._display")){if("string"==typeof c){var s=t.splitKeypath(c);c=function(e){return null==e?"(none)":k(e,s)}}else Array.isArray(c)?c=function(e){return null==e?"(none)":k(e,e)}:c||(c=function(e){return null==e?"(none)":""+e});e.set("rac._display",c),e.set("rac.__display",e.get("rac.displayprop")),e.set("rac.display",c(e.get("rac.value")))}if(c=e.get("rac.member"),e.get("rac.__member")!==c||void 0===e.get("rac._member")){if("string"==typeof c){var p=t.splitKeypath(c);c=function(e){return k(e,p)}}else Array.isArray(c)?c=function(e){return k(e,e)}:c||(c=function(e){return e});e.set("rac._member",c),e.set("rac.__member",e.get("rac.member"))}c=e.get("rac.items"),e.get("rac.__items")===c&&void 0!==e.get("rac._items")||(Array.isArray(c)?e.set("rac._items",c):"function"==typeof c?e.set("rac._items",c):"object"==typeof c&&"function"==typeof c.then?c.then(function(t){e.set("rac._items",t),o()}):e.set("rac._items",[]),e.set("rac.__items",e.get("rac.items"))),i&&"rac.display"===l&&e.get("rac.limit")&&!i.contains(document.activeElement)&&a(),o()}function a(){var t=e.get("rac._display");if("function"==typeof t){var n=t(e.get("rac.value"));e.set("rac.display",n),e.set("rac.tempDisplay",n)}}function l(t){(t.items&&e.link(t.items,"rac.items"),t.value&&e.link(t.value,"rac._value"),t.selected&&e.link(t.selected,"rac.selected"),t["display-value"]&&e.link(t["display-value"],"rac.display"),"display"in t&&e.set("rac.displayprop",t.display),"member"in t&&e.set("rac.member",t.member),"offsets"in t?(e.set("rac.offsets",t.offsets),e.set("rac.fit",!0)):e.set("rac.fit",!1),e.set("rac.limit",t["limit-set"]),e.get("rac.limit")&&e.get("input"))&&(e.get("input")!==document.activeElement&&a());r()}e.aliasLocal("rac"),e.set("rac.list",[]),e.set("rac.popped",!1),e.set("rac.stash",function(){e.set("rac.tempDisplay",e.get("rac.display")),e.set("rac.tempValue",e.get("rac.value"))}),e.set("rac.key",function(t){var n=t.which;if(27===n)e.set("rac.popped",!1),e.set("rac.display",e.get("rac.tempDisplay")),e.set("rac.value",e.get("rac.tempValue"));else if(38===n||40===n){t.preventDefault(),e.get("rac.pop").show(e.find("input"));var i=e.get("rac.selected"),o=e.get("rac.list");38===n?i<=0||null==i?e.set("rac.selected",Array.isArray(o)?o.length-1:0):e.set("rac.selected",i-1):Array.isArray(o)?e.set("rac.selected",i<o.length?i+1:0):e.set("rac.selected",0)}else if(10===n||13===n){var r=e.get("rac.list");Array.isArray(r)&&e.set("rac.value",r[e.get("rac.selected")])}else 9===n&&(e.set("rac.popped",!1),e.get("rac.updateDisplay")())}),e.set("rac.input",function(t){n&&clearTimeout(n),n=setTimeout(function(){n=null,o(t.target.value),e.get("rac.pop").show(e.find("input"))},500),e.set("rac.display",t.target.value)}),e.setTemplate(_),e.set("rac.updateDisplay",function(t){setTimeout(function(){i&&e.get("rac.limit")&&!i.contains(document.activeElement)&&a()},140)}),l(e.attributes);var c={init:!1,defer:!0},s=[e.observe("rac.displayprop",r,c),e.observe("rac.memberprop",r,c),e.observe("rac.items",r,c),e.observe("rac.list",function(t){Array.isArray(t)?e.set("rac.selected",t.indexOf(e.get("rac.value"))):e.set("rac.selected",-1)},c),e.observe("rac.value",function(t){a(),function(){if(!e.get("rac._value")||e.get("rac.value")){var t=e.get("rac._member");if("function"==typeof t){var n=t(e.get("rac.value"));e.set("rac._value",n)}e.ractive.getContext(e.find("input")).raise("selected",{},e.get("rac._value"),e.get("rac.display"))}}(),e.set("rac.popped",!1),e.set("rac.tempValue",t)}),e.observe("rac._value",function(t){var n=e.get("rac._member"),i=e.get("rac.list").find(function(e){return n(e)===t});i!==e.get("rac.value")&&e.set("rac.value",i)})];return{teardown:function(){e.unlink("rac.items"),e.unlink("rac._value"),e.unlink("rac.selected"),e.unlink("rac.display"),s.forEach(function(e){return e.cancel()})},update:l,render:function(){i=e.find("span")}}},{attributes:["items","selected","display","value","member","limit-set","offsets","display-value"],css:function(e){return[function(e){var t=Object.assign({},e("raui.primary"),e("raui.autocomplete.primary"));return".rautocomplete {\n position: relative;\n display: inline-block;\n }\n \n .rac-pop {\n min-width: 100%;\n }\n \n .rac-pop > .rpop {\n padding: 0;\n }\n \n .rac-list {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n min-height: 2.125em;\n max-width: 100%;\n overflow: auto;\n }\n \n .rac-item {\n color: "+(t.fg||"#222")+";\n background-color: "+(t.bg||"#fff")+";\n padding: 0.25em;\n cursor: pointer;\n }\n \n .rac-selected {\n color: "+(t.bg||"#fff")+";\n background-color: "+(t.fga||"#07e")+";\n }\n \n .rac-hover {\n color: "+(t.fg||"#222")+";\n background-color: "+(t.bc||"#ccc")+";\n }\n \n .rac-invalid {\n cursor: not-allowed;\n }\n \n input.rac-modal {\n width: 100%;\n box-sizing: border-box;\n }"}.call(this,e)].join(" ")},cssId:"rautocomplete",noCssTransform:!0});function T(e){return void 0===e&&(e={}),function(t){var n=t.instance;n.partials[e.name||"autocomplete"]=O,n.components["rac-pop"]=u,n.decorators.autocompletefocus=w}}e.Autocomplete=O,e.FieldType=function(e){return void 0===e&&(e={}),function(t,n,i){return[{t:7,e:e.name||"autocomplete",m:t,f:n}]}},e.plugin=T,e.default=T,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],t):t(e.RMAutocomplete={},e.Ractive)}(this,function(e,t){"use strict";t=t&&t.hasOwnProperty("default")?t.default:t;var n="undefined"!=typeof window?window:null;function i(e,t,i){if(n&&n.Ractive&&"object"==typeof n.Ractive[t]){var o=document.currentScript;if(o||(o=(o=document.querySelectorAll("script"))[o.length-1]),o){var r=o.getAttribute("data-alias");r&&(r=(r=r.split("&")).reduce(function(e,t){var n=t.split("="),i=n[0],o=n[1];return e[i]=o,e},{})),Ractive[t][r&&r[e]||e]=i}}}function o(e,t){void 0===t&&(t={});var n=e.processParams(t,{duration:400,easing:"easeInOut"});t.dir=t.dir||!1;var i=t.distance||"20px",o=t.scale||"0.9",r="above"===t.dir?"translateY("+i+")":"left"===t.dir?"translateX("+i+")":"right"===t.dir?"translateX(-"+i+")":"translateY(-"+i+")";return e.isIntro||n.intro?(e.setStyle("opacity",0),e.setStyle("transform","scale("+o+") "+r),e.animateStyle({opacity:1,transform:"none"},n)):(e.setStyle("opacity",1),e.setStyle("transform","none"),e.animateStyle({opacity:0,transform:"scale("+o+") "+r},n))}function r(e){return void 0===e&&(e={}),function(t){t.instance.transitions[e.name||"pop"]=o}}function a(e,t){var n=!1,i=!1;function o(n){for(var i=n.target;i;){if(i===e)return;if(!i.parentNode&&i!==document)return;i=i.parentNode}t(n)}return setTimeout(function(){n=!0,i||(document.body.addEventListener("click",o,{capture:!0}),document.body.addEventListener("touchstop",o,{capture:!0}))}),{teardown:function(){i=!0,n&&(document.body.removeEventListener("click",o,{capture:!0}),document.body.removeEventListener("touchstop",o,{capture:!0}))}}}function l(e,t){var n=e.processParams(t,{duration:200,easing:"easeInOut"});return e.isIntro||n.intro?(e.setStyle("opacity",0),e.animateStyle("opacity",1,n)):(e.setStyle("opacity",1),e.animateStyle("opacity",0,n))}function c(e){return void 0===e&&(e={}),function(t){t.instance.transitions[e.name||"fade"]=l}}i("pop","transitions",o),i("fade","transitions",l);var s,p,f,d={v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-wrapper",g:1},{n:"class-rpop-with-tail",t:13,f:[{t:2,r:"position.tail"}]},{n:"class",f:["rpop-",{t:2,x:{r:["where"],s:'_0||"below"'}}," rpop-align-",{t:2,x:{r:["align"],s:'_0||"middle"'}}],t:13},{t:4,f:[{n:"style-top",f:[{t:2,r:"position.popTop"},"px"],t:13},{n:"style-left",f:[{t:2,r:"position.popLeft"},"px"],t:13}],n:50,r:"position"},{t:4,f:[{t:4,f:[{n:"style-top",f:[{t:2,r:"top"}],t:13}],n:50,r:"top"},{t:4,f:[{n:"style-left",f:[{t:2,r:"left"}],t:13}],n:50,r:"left"}],n:51,l:1},{n:"pop",t:72,f:{r:["where"],s:'[{dir:_0||"below"}]'},v:"t2"},{n:"cleanup",t:71},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:50,r:"clickClose"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:51,r:"noClickout"},{t:16,r:"extra-attributes"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailRight"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail-outer",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailRight"}]}],n:50,r:"~/tail"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1}],f:[{t:16,r:"content"}]}]}],n:50,r:"__popped"}],e:{'_0||"below"':function(e){return e||"below"},'_0||"middle"':function(e){return e||"middle"},'[{dir:_0||"below"}]':function(e){return[{dir:e||"below"}]},'[_0.set("popped",false)]':function(e){return[e.set("popped",!1)]},"_0+(_1?1:0)":function(e,t){return e+(t?1:0)},"_0+(_1?0:1)":function(e,t){return e+(t?0:1)},"_0-2":function(e){return e-2},"[{delay:200}]":function(){return[{delay:200}]},"[_0===_1&&_2.done(),true]":function(e,t,n){return[e===t&&n.done(),!0]},"[_0.done()]":function(e){return[e.done()]},true:function(){return!0}},p:{modal:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-modal",g:1},{n:"fade",t:72,v:"t1"},{n:"fade",t:72,f:{r:[],s:"[{delay:200}]"},v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["@node","@event.target","."],s:"[_0===_1&&_2.done(),true]"}}],n:51,r:".noClickout"}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1},{n:"pop",t:72,f:{r:[],s:"[{delay:200}]"},v:"t1"},{n:"pop",t:72,v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.done()]"}}],n:50,r:".clickClose"},{t:8,r:".attrs",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}],f:[{t:8,r:".content",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}]}]}],n:54,r:"contents.0"}],n:50,r:"contents.length"}]}},u=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t.prototype.position=function(e){var t=e||this.source,n=this.get("popped");if(t&&n){var i=this.find("div");if(t&&i&&i.offsetParent){var o=i.offsetParent,r=o.getBoundingClientRect(),a=i.getBoundingClientRect(),l=t.getBoundingClientRect(),c=this.get("where")||"below",s=this.get("align")||"middle",p=this.get("tail"),f="above"===c||"below"===c,d=this.get("fit"),u=this.get("gap"),b="above"===c||"below"===c?0:"left"===c?-a.width-u:l.width+u,m="left"===c||"right"===c?-l.height:"above"===c?-l.height-a.height-u:u;"middle"===s?"below"===c||"above"===c?b-=(a.width-l.width)/2:"left"!==c&&"right"!==c||(m-=(a.height-l.height)/2):"end"===s&&("below"===c||"above"===c?b+=l.width-a.width:"left"!==c&&"right"!==c||(m+=l.height-a.height));var h={popTop:l.bottom-r.top+m,popLeft:l.left-r.left+b,tail:p,vert:"above"===c||"below"===c};if(o.scrollTop&&(h.popTop+=o.scrollTop),o.scrollLeft&&(h.popLeft+=o.scrollLeft),p){"above"===c?h.tailBottom=-10:"below"===c?h.tailTop=-10:"left"===c?h.tailRight=-10:"right"===c&&(h.tailLeft=-10);var g=this.tailSource?this.tailSource.getBoundingClientRect():l;"start"===s?f?h.tailLeft=Math.floor(g.width/2)-10:h.tailTop=Math.floor(g.height/2)-10:"end"===s?f?h.tailRight=Math.floor(g.width/2)-10:h.tailBottom=Math.floor(g.height/2)-10:"middle"===s&&(f?h.tailLeft=Math.floor(g.width/2)-10:h.tailTop=Math.floor(g.height/2)-10),g!==l?f?(null!=h.tailLeft&&(h.tailLeft+=g.left-l.left),null!=h.tailRight&&(h.tailRight+=l.right-g.right)):(null!=h.tailTop&&(h.tailTop+=g.top-l.top),null!=h.tailBottom&&(h.tailBottom+=l.bottom-g.bottom)):"middle"===s&&(f?(null!=h.tailLeft&&(h.tailLeft+=g.left-(h.popLeft+r.left)),null!=h.tailRight&&(h.tailRight+=h.popLeft+r.left+a.width-g.right)):(null!=h.tailTop&&(h.tailTop+=g.top-(h.popTop+r.top)),null!=h.tailBottom&&(h.tailBottom+=h.popTop+r.top+a.height-g.bottom)))}if(d){var v=o;if(this.get("offsets"))for(var y=this.get("offsets");y--;)v=v.offsetParent;var x=o.scrollWidth,w=o.scrollHeight;if(h.popLeft+a.width>x){var _=h.popLeft-(x-a.width);h.popLeft-=_,f&&h.tailLeft&&(h.tailLeft+=_),f&&h.tailRight&&(h.tailRight-=_),p&&!f&&(h.tail=!1)}if(h.popLeft<0){var k=-1*h.popLeft;h.popLeft+=k,f&&h.tailLeft&&(h.tailLeft-=k),f&&h.tailRight&&(h.tailRight+=k),p&&!f&&(h.tail=!1)}if(h.popTop+a.height>w){var O=h.popTop-(w-a.height);h.popTop-=O,!f&&h.tailTop&&(h.tailTop+=O),!f&&h.tailBottom&&(h.tailBottom-=O),p&&f&&(h.tail=!1)}if(h.popTop<0){var T=-1*h.popTop;h.popTop+=T,!f&&h.tailTop&&(h.tailTop-=T),!f&&h.tailBottom&&(h.tailBottom+=T),p&&f&&(h.tail=!1)}}this.set("position",h)}else this.set("position",null)}},t.prototype.show=function(e){this.source=e,this.set("popped",!0)},t.prototype.hide=function(){this.set("popped",!1)},t}(t);t.extendWith(u,{attributes:["popped","tail","where","align","top","left","fit","clickClose","noClickout","gap","offsets"],use:[r(),(void 0===f&&(f={}),function(e){e.instance.events[f.name||"clickout"]=a}),c()],template:d,css:function(e){return[function(e){var t=Object.assign({},e("raui.primary"),e("raui.pop.primary")),n=(e("raui.themes")||[]).slice();return(e("raui.pop.themes")||[]).forEach(function(e){~n.indexOf(e)||n.push(e)}),"\n .rpop-wrapper {\n position: absolute;\n display: inline-block;\n z-index: 21;\n transition-property: top, left, padding;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-with-tail.rpop-above {\n padding-bottom: 10px;\n }\n .rpop-with-tail.rpop-below {\n padding-top: 10px;\n }\n .rpop-with-tail.rpop-left {\n padding-right: 10px;\n }\n .rpop-with-tail.rpop-right {\n padding-left: 10px;\n }\n \n .rpop {\n position: relative;\n box-shadow: 0 1px 4px 0 rgba(0,0,0,0.24);\n border: 1px solid #ccc;\n border-radius: 0.2em;\n background-color: "+(t.bg||"#fff")+";\n color: "+(t.fg||"#222")+";\n padding: 0.5em;\n z-index: 2;\n }\n \n .rpop-modal {\n position: fixed;\n display: flex;\n z-index: 20;\n background-color: rgba(0, 0, 0, 0.2);\n align-items: center;\n justify-content: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n padding: 1em;\n overflow: auto;\n }\n \n .rpop-tail, .rpop-tail-outer {\n z-index: 3;\n width: 0;\n height: 0;\n position: absolute;\n border-style: solid;\n border-width: 10px;\n border-color: transparent;\n transition-property: top, left, bottom, right, border-color;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-tail-outer {\n z-index: 1;\n border-width: 12px;\n border-color: transparent;\n }\n \n .rpop-below .rpop-tail {\n border-bottom-color: "+(t.bg||"#fff")+";\n }\n .rpop-below .rpop-tail-outer {\n border-bottom-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-above .rpop-tail {\n border-top-color: "+(t.bg||"#fff")+";\n }\n .rpop-above .rpop-tail-outer {\n border-top-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-left .rpop-tail {\n border-left-color: "+(t.bg||"#fff")+";\n }\n .rpop-left .rpop-tail-outer {\n border-left-color: "+(t.bc||"#ccc")+";\n }\n \n .rpop-right .rpop-tail {\n border-right-color: "+(t.bg||"#fff")+";\n }\n .rpop-right .rpop-tail-outer {\n border-right-color: "+(t.bc||"#ccc")+";\n }\n "+n.map(function(t){var n=Object.assign({},e("raui.primary"),e("raui.pop.primary"),e("raui."+t),e("raui.pop."+t));return"\n ."+t+" .rpop {\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n }\n \n ."+t+".rpop-below .rpop-tail {\n border-bottom-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-below .rpop-tail-outer {\n border-bottom-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-above .rpop-tail {\n border-top-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-above .rpop-tail-outer {\n border-top-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-left .rpop-tail {\n border-left-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-left .rpop-tail-outer {\n border-left-color: "+(n.bc||"#ccc")+";\n }\n \n ."+t+".rpop-right .rpop-tail {\n border-right-color: "+(n.bg||"#fff")+";\n }\n ."+t+".rpop-right .rpop-tail-outer {\n border-right-color: "+(n.bc||"#ccc")+";\n }\n "})}.call(this,e)].join(" ")},cssId:"rpop",noCssTransform:!0,observe:{popped:function(e){var t=this;setTimeout(function(){t.get("popped")===e&&t.set("_popped",e)},1)},_popped:{handler:function(e){var t=this;if(e){var n=this.get("@style.raui.pop.mobile");if(n&&window.matchMedia("(max-width: "+n+")").matches){p||(p=new b({target:document.body,append:!0}));var i=this.getContext().getParent(!0);i.isContext=1,this.set("__popped",!1),p.unshift("contents",{content:this.partials.content,context:i,attrs:this.partials["extra-attributes"]||[],clickClose:this.get("clickClose"),noClickout:this.get("noClickout"),done:function(){t.set("popped",!1)}})}else this.set("__popped",!0)}else s?p.shift("contents"):this.set("__popped",!1)},defer:!0},__popped:{handler:function(e){if(e){var t=this.find("div"),n=t,i=n.offsetHeight+n.offsetTop,o=n.offsetWidth+n.offsetLeft,r=n.offsetParent;if(!this.overflows)for(var a=this.overflows={e:[],v:[]};t&&t.style;){if(t===r){if(t.offsetWidth>=o&&t.offsetHeight>=i)break;o+=t.offsetLeft,i+=t.offsetTop,r=t.offsetParent}var l=getComputedStyle(t);if("auto"===l.overflow)break;"hidden"===l.overflow&&(a.e.push(t),a.v.push(t.style.overflow),t.style.overflow="visible"),t=t.parentNode}this.position(),this.transition("pop",n,{intro:!0,dir:this.get("where")||"below"})}else this.source=null,this.tailSource=null},defer:!0},"align where tail fit":{handler:function(){this.position()},defer:!0}},decorators:{cleanup:function(e){var t=this;return{teardown:function(){var e=t.overflows;if(e){t.overflows=null;for(var n=0;n<e.e.length;n++)e.e[n].style.overflow=e.v[n]}}}}},data:function(){return{gap:4}}});var b=function(e){function t(t){e.call(this,t)}return e&&(t.__proto__=e),t.prototype=Object.create(e&&e.prototype),t.prototype.constructor=t,t}(t);function m(){}function h(e){~this.className.indexOf("focus")||(this.className+=" focus")}function g(e){this.className=this.className.replace(/\bfocus\b/g,"").trim()}function v(e){var t,n,i,o,r,a,l,c,s,p,f,d,u,b=this.getContext(e);function v(){var b=y().split(/\s+/).filter(function(e){return!!e});(t=!!~b.indexOf("field"))||(b.push("field"),t=!0),(n=e.querySelector("input[type=checkbox]"))&&!~b.indexOf("check")&&b.push("check"),(i=e.querySelector("input[type=radio]"))&&!~b.indexOf("radio")&&b.push("radio");var m=n||i;m&&m.checked&&!~b.indexOf("checked")&&b.push("checked"),m&&m.disabled&&!~b.indexOf("disabled")&&b.push("disabled"),!m&&p?(p.cancel(),p=0,f&&(f.disconnect(),f=0),delete m._form_callback,u&&(delete u.checked,d=u=void 0)):m&&(m._form_callback=function(t,n){if(void 0===n&&(n=!0),n&&"radio"===m.type&&m.name){var i=[];i.push.apply(i,document.querySelectorAll("input[type=radio][name="+m.name+"]")),(i=i.filter(function(e){return e!==m})).forEach(function(e){return e._form_callback&&e._form_callback(t,!1)})}var o=m.checked;o&&!~e.className.indexOf("checked")?e.className+=" checked":!o&&~e.className.indexOf("checked")&&(e.className=e.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim())},MutationObserver&&(f=new MutationObserver(function(){var t;(t=m.disabled)&&!~e.className.indexOf("disabled")?e.className+=" disabled":!t&&~e.className.indexOf("disabled")&&(e.className=e.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim())})).observe(m,{attributes:!0}),p=this.getContext(m).listen("change",m._form_callback),(d=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(m),"checked"))&&d.configurable&&(u=m,Object.defineProperty(m,"checked",{get:d.get,set:function(e){d.set.call(u,e),m._form_callback()},enumerable:!0,configurable:!0}))),(o=!!e.querySelector("textarea"))&&!~b.indexOf("textarea")&&b.push("textarea"),(r=!!e.querySelector("select"))&&!~b.indexOf("select")&&b.push("select"),(a=!!e.querySelector("input[type=file]"))&&!~b.indexOf("file")&&b.push("file"),(l=!!(l=e.querySelector("button"))&&l.parentNode===e)&&!~b.indexOf("button")&&b.push("button"),(c=!!e.querySelector("div"))&&!~b.indexOf("plain")&&b.push("plain"),(s=!(n||i||a||!e.querySelector("input")))&&!~b.indexOf("input")&&b.push("input"),e.className=b.join(" ")}function y(){var p=e.className;return t||(p=p.replace(/\bfield\b/g,"").trim()),n||(p=p.replace(/\bcheck(ed)?\b/g,"").trim()),i||(p=p.replace(/\bradio\b/g,"").trim()),o||(p=p.replace(/\btextarea\b/g,"").trim()),r||(p=p.replace(/\bselect\b/g,"").trim()),a||(p=p.replace(/\bfile\b/g,"").trim()),l||(p=p.replace(/\bbutton\b/g,"").trim()),c||(p=p.replace(/\bplain\b/g,"").trim()),s||(p=p.replace(/\binput\b/g,"").trim()),p=p.replace(/ +/g," ")}var x=b.listen("focusin",h),w=b.listen("focusout",g);return v.call(this),{update:m,invalidate:v.bind(this),teardown:function(){var t=y();t=t.replace(/\bfocus\b/g,"").trim(),x.cancel(),w.cancel(),p&&p.cancel(),f&&f.disconnect(),u&&(delete u.checked,d=u=void 0),e.className=t}}}function y(e,t){if(!e)return!1;for(var n=0;n<e.length;n++){if(e[n].e===t)return!0;if(e[n].f&&y(e[n].f,t))return!0}return!1}t.extendWith(b,{template:{v:d.v,t:d.p.modal},data:function(){return{contents:[]}},use:[r(),c()],observe:{contents:function(e){s=(e||[]).length>0}},on:{init:function(){p?console.warn("More than one PopOver mobile host created."):p=this}}}),v.style=function(e){var t=Object.assign({},e("raui.primary"),e("raui.form.primary")),n=Object.assign({},e("raui.primary.active"),e("raui.form.primary.active")),i=e("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(t.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(t.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(t.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(i?t.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(n.fg||t.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(n.fg||t.fga||"#07e")+";\n "+(i?"":"box-shadow: 0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n 0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+";")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(i?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(t.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(i?t.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(i?"\n border-radius: "+(t.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(i?"":":disabled")+",\n label.field select"+(i?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(i?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(i?"":"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(t.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(t.bc||"#ccc")+",\n -0.0625em 0.0625em "+(t.bc||"#ccc")+",\n 0.0625em -0.0625em "+(t.bc||"#ccc")+",\n -0.0625em -0.0625em "+(t.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em 0.0625em "+(n.fg||t.fga||"#07e")+",\n 0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+",\n -0.0625em -0.0625em "+(n.fg||t.fga||"#07e")+";\n }")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(t.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(t.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(t.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(t.fga||"#07e")+";\n background-color: "+(t.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(t.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(t.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(t.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(t.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(t.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(t.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(t.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(t.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(t.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(t.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(t.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(t.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(i?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(n.fg||t.fga||"#07e")+";\n "+(i?"":"box-shadow: 0 0.0625em 0 0 "+(n.fg||t.fga||"#07e")+";")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(n.fg||t.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(t.fg||"#222")+";\n text-align: "+(i?"center":"left")+";\n padding: 0.5em "+(i?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(i?"\n border-radius: "+(t.radius||"0.2em")+";\n border-color: "+(t.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(t.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(i?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(i?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(i?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(t.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(i?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(t.radius||"0.2em")+" "+(t.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(t.radius||"0.2em")+" 0 0 "+(t.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(i?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(t.fga||"#07e")+";\n color: "+(t.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "};var x=t.macro(function(e){var t=[],n=(e.template.m||[]).slice(),i=e.template.f||[],o=n.find(function(e){return"value"===e.n}),r=n.find(function(e){return"type"===e.n}),a=n.find(function(e){return"tip"===e.n});if(a&&n.splice(n.indexOf(a),1),r&&"function"==typeof x.types[r.f])t.push.apply(t,x.types[r.f](n,i,e));else if(o){var l={t:7,e:"input",m:[o]};if(y(i,"option")&&(l.e="select",l.f=i),r&&(l.m.push(r),"checkbox"===r.f||"radio"===r.f)){var c=n.find(function(e){return"target"===e.n});c?l.m.push(Object.assign({},c,{n:"name"})):l.m.splice(l.m.indexOf(o),1,Object.assign({},o,{n:"checked"}))}l.m=l.m.concat(n.filter(function(e){return 73===e.t||73===e.t||"placeholder"===e.n})),t.push(l);var s=i.filter(function(e){return"button"===e.e||y(e.f,"button")});s.length&&(t.push.apply(t,s),t=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:t}])}else{var p=i.filter(function(e){return e.e});p.find(function(e){return"button"===e.e})&&p.length>1?t=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:i}]:t.push.apply(t,i)}var f=n.find(function(e){return"label"===e.n});a&&t.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(f?"":" field-solo-tip"),g:1},{t:13,n:"title",f:a.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"}),f?t.unshift.apply(t,Array.isArray(f.f)?f.f:[f.f]):t.unshift(" ");var d={t:7,e:"label",m:[{t:71,n:"field"}].concat(n.filter(function(e){return 13!==e.t&&73!==e.t||"value"!==e.n&&"type"!==e.n&&"inline"!==e.n&&"label"!==e.n&&"placeholder"!==e.n&&"target"!==e.n})),f:t};n.find(function(e){return"inline"===e.n})&&d.m.push({t:13,n:"class",f:"inline"}),e.setTemplate([d])});function w(e){return"function"==typeof e.focus&&e.focus(),{teardown:m}}x.types={},i("field","decorators",v),i("field","partials",x),i("autofocus","decorators",w);var _={v:4,t:[{t:7,e:"span",m:[{t:13,n:"class",f:"rautocomplete field-wrapper",g:1},{n:["pop"],t:70,f:{r:["@context","$1"],s:'[(_0).set("rac.pop",_1)]'}}],f:[{t:7,e:"input",m:[{t:8,r:"extra-attributes"},{n:["dblclick"],t:70,f:{r:["rac.pop","@node"],s:"[_0.show(_1)]"}},{n:["focus"],t:70,f:{r:["rac"],s:"[_0.stash()]"}},{n:["input"],t:70,f:{r:["rac","@event"],s:"[_0.input(_1)]"}},{n:["keydown"],t:70,f:{r:["rac","@event"],s:"[_0.key(_1)]"}},{t:73,v:"t",f:"false"},{n:"value",f:[{t:2,r:"rac.display"}],t:13}]}," ",{t:7,e:"rac-pop",m:[{t:13,n:"style",f:"padding: 0;",g:1},{t:13,n:"class",f:"rac-pop",g:1},{n:["init"],t:70,f:{r:["@context","$1"],s:'[(_0).raise("pop",{},_1)]'}},{n:"popped",t:13,f:[{t:2,r:"rac.popped"}]},{n:"where",f:"below",t:13,g:1},{n:"align",f:"end",t:13,g:1},{n:"gap",f:[{t:2,x:{r:[],s:"2"},s:1}],t:13},{n:"offsets",t:13,f:[{t:2,r:"rac.offsets"}]},{n:"fit",t:13,f:[{t:2,r:"rac.fit"}]}],f:[{t:4,f:[{t:7,e:"input",m:[{n:"class-rac-modal",t:13},{n:["input"],t:70,f:{r:["rac","@event"],s:"[_0.input(_1)]"}},{n:["keydown"],t:70,f:{r:["rac","@event"],s:"[_0.key(_1)]"}},{t:73,v:"t",f:"false"},{n:"value",f:[{t:2,r:"rac.display"}],t:13},{n:"autocompletefocus",t:71}]}],n:50,r:"inModal"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rac-list",g:1},{n:"tabindex",f:"-1",t:13,g:1}],f:[{t:55,f:[{f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item rac-invalid",g:1}],f:["Loading..."]}],t:4},{t:62,f:[" ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item",g:1},{n:"tabindex",f:"-1",t:13,g:1},{n:"class-rac-selected",t:13,f:[{t:2,x:{r:["rac.value","."],s:"_0===_1"}}]},{n:"class-rac-hover",t:13,f:[{t:2,x:{r:["rac.selected","@index"],s:"_0===_1"}}]},{n:["click"],t:70,f:{r:["@context","."],s:'[(_0).set("rac.value",_1)]'}},{n:["mouseover"],t:70,f:{r:["@context","@index"],s:'[(_0).set("rac.selected",_1)]'}}],f:[{t:2,x:{r:["rac","."],s:"_0._display(_1)"}}]}],n:52,r:"items"}," "],n:"items"},{t:63,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rac-item rac-invalid",g:1}],f:["Load failed."]}]}],r:"rac.list"}]}]}]}],e:{2:function(){return 2},'[(_0).set("rac.pop",_1)]':function(e,t){return[e.set("rac.pop",t)]},"[_0.show(_1)]":function(e,t){return[e.show(t)]},"[_0.stash()]":function(e){return[e.stash()]},"[_0.input(_1)]":function(e,t){return[e.input(t)]},"[_0.key(_1)]":function(e,t){return[e.key(t)]},'[(_0).raise("pop",{},_1)]':function(e,t){return[e.raise("pop",{},t)]},"_0===_1":function(e,t){return e===t},'[(_0).set("rac.value",_1)]':function(e,t){return[e.set("rac.value",t)]},'[(_0).set("rac.selected",_1)]':function(e,t){return[e.set("rac.selected",t)]},"_0._display(_1)":function(e,t){return e._display(t)}}};function k(e,t){return t.reduce(function(e,t){return e?e[t]:e},e)}var O=t.macro(function(e){var n,i;function o(t){null==t&&(t=null==e.get("rac.value")?"":e.get("rac.display")),t===e.get("rac.tempDisplay")&&(t="");var n=e.get("rac._items");if("function"==typeof n){var i=n(t);"object"==typeof i&&"function"==typeof i.then?i.then(function(t){return e.set("rac.list",t)}):e.set("rac.list",i)}else if(Array.isArray(n)){var o,r=e.get("rac._display");try{o=new RegExp(t||"","i")}catch(e){o=new RegExp((t||"").replace(/([\{\(\[\]\)\}\?\*\^\$])/g,"\\$1"))}e.set("rac.list",n.filter(function(e){return o.test(r(e))}))}else e.set("rac.list",[])}function r(n,r,l){var c=e.get("rac.displayprop");if(e.get("rac.__display")!==c||void 0===e.get("rac._display")){if("string"==typeof c){var s=t.splitKeypath(c);c=function(e){return null==e?"(none)":k(e,s)}}else Array.isArray(c)?c=function(e){return null==e?"(none)":k(e,e)}:c||(c=function(e){return null==e?"(none)":""+e});e.set("rac._display",c),e.set("rac.__display",e.get("rac.displayprop")),e.set("rac.display",c(e.get("rac.value")))}if(c=e.get("rac.member"),e.get("rac.__member")!==c||void 0===e.get("rac._member")){if("string"==typeof c){var p=t.splitKeypath(c);c=function(e){return k(e,p)}}else Array.isArray(c)?c=function(e){return k(e,e)}:c||(c=function(e){return e});e.set("rac._member",c),e.set("rac.__member",e.get("rac.member"))}c=e.get("rac.items"),e.get("rac.__items")===c&&void 0!==e.get("rac._items")||(Array.isArray(c)?e.set("rac._items",c):"function"==typeof c?e.set("rac._items",c):"object"==typeof c&&"function"==typeof c.then?c.then(function(t){e.set("rac._items",t),o()}):e.set("rac._items",[]),e.set("rac.__items",e.get("rac.items"))),i&&"rac.display"===l&&e.get("rac.limit")&&!i.contains(document.activeElement)&&a(),o()}function a(){var t=e.get("rac._display");if("function"==typeof t){var n=t(e.get("rac.value"));e.set("rac.display",n),e.set("rac.tempDisplay",n)}}function l(t){(t.items&&e.link(t.items,"rac.items"),t.value&&e.link(t.value,"rac._value"),t.selected&&e.link(t.selected,"rac.selected"),t["display-value"]&&e.link(t["display-value"],"rac.display"),"display"in t&&e.set("rac.displayprop",t.display),"member"in t&&e.set("rac.member",t.member),"offsets"in t?(e.set("rac.offsets",t.offsets),e.set("rac.fit",!0)):e.set("rac.fit",!1),e.set("rac.limit",t["limit-set"]),e.get("rac.limit")&&e.get("input"))&&(e.get("input")!==document.activeElement&&a());r()}e.aliasLocal("rac"),e.set("rac.list",[]),e.set("rac.popped",!1),e.set("rac.stash",function(){e.set("rac.tempDisplay",e.get("rac.display")),e.set("rac.tempValue",e.get("rac.value"))}),e.set("rac.key",function(t){var n=t.which;if(27===n)e.set("rac.popped",!1),e.set("rac.display",e.get("rac.tempDisplay")),e.set("rac.value",e.get("rac.tempValue"));else if(38===n||40===n){t.preventDefault(),e.get("rac.pop").show(e.find("input"));var i=e.get("rac.selected"),o=e.get("rac.list");38===n?i<=0||null==i?e.set("rac.selected",Array.isArray(o)?o.length-1:0):e.set("rac.selected",i-1):Array.isArray(o)?e.set("rac.selected",i<o.length?i+1:0):e.set("rac.selected",0)}else if(10===n||13===n){var r=e.get("rac.list");Array.isArray(r)&&e.set("rac.value",r[e.get("rac.selected")])}else 9===n&&(e.set("rac.popped",!1),e.get("rac.updateDisplay")())}),e.set("rac.input",function(t){n&&clearTimeout(n),n=setTimeout(function(){n=null,o(t.target.value),e.get("rac.pop").show(e.find("input"))},500),e.set("rac.display",t.target.value)}),e.setTemplate(_),e.set("rac.updateDisplay",function(t){setTimeout(function(){i&&e.get("rac.limit")&&!i.contains(document.activeElement)&&a()},140)}),l(e.attributes);var c={init:!1,defer:!0},s=[e.observe("rac.displayprop",r,c),e.observe("rac.memberprop",r,c),e.observe("rac.items",r,c),e.observe("rac.list",function(t){Array.isArray(t)?e.set("rac.selected",t.indexOf(e.get("rac.value"))):e.set("rac.selected",-1)},c),e.observe("rac.value",function(t){a(),function(){if(!e.get("rac._value")||e.get("rac.value")){var t=e.get("rac._member");if("function"==typeof t){var n=t(e.get("rac.value"));e.set("rac._value",n)}e.ractive.getContext(e.find("input")).raise("selected",{},e.get("rac._value"),e.get("rac.display"))}}(),e.set("rac.popped",!1),e.set("rac.tempValue",t)}),e.observe("rac._value",function(t){var n=e.get("rac._member"),i=e.get("rac.list").find(function(e){return n(e)===t});i!==e.get("rac.value")&&e.set("rac.value",i)})];return{teardown:function(){e.unlink("rac.items"),e.unlink("rac._value"),e.unlink("rac.selected"),e.unlink("rac.display"),s.forEach(function(e){return e.cancel()})},update:l,render:function(){i=e.find("span")}}},{attributes:["items","selected","display","value","member","limit-set","offsets","display-value"],css:function(e){return[function(e){var t=Object.assign({},e("raui.primary"),e("raui.autocomplete.primary"));return".rautocomplete {\n position: relative;\n display: inline-block;\n }\n \n .rac-pop {\n min-width: 100%;\n }\n \n .rac-pop > .rpop {\n padding: 0;\n }\n \n .rac-list {\n display: flex;\n flex-direction: column;\n max-height: 50vh;\n min-height: 2.125em;\n max-width: 100%;\n overflow: auto;\n }\n \n .rac-item {\n color: "+(t.fg||"#222")+";\n background-color: "+(t.bg||"#fff")+";\n padding: 0.25em;\n cursor: pointer;\n }\n \n .rac-selected {\n color: "+(t.bg||"#fff")+";\n background-color: "+(t.fga||"#07e")+";\n }\n \n .rac-hover {\n color: "+(t.fg||"#222")+";\n background-color: "+(t.bc||"#ccc")+";\n }\n \n .rac-invalid {\n cursor: not-allowed;\n }\n \n input.rac-modal {\n width: 100%;\n box-sizing: border-box;\n }"}.call(this,e)].join(" ")},cssId:"rautocomplete",noCssTransform:!0});function T(e){return void 0===e&&(e={}),function(t){var n=t.instance;n.partials[e.name||"autocomplete"]=O,n.components["rac-pop"]=u,n.decorators.autocompletefocus=w}}e.Autocomplete=O,e.FieldType=function(e){return void 0===e&&(e={}),function(t,n,i){return[{t:7,e:e.name||"autocomplete",m:t,f:n}]}},e.plugin=T,e.default=T,Object.defineProperty(e,"__esModule",{value:!0})}); |
@@ -165,3 +165,5 @@ (function (global, factory) { | ||
var selectGroup = function () { | ||
var group = groupForPos(groups, node.selectionStart); | ||
var group; | ||
if (node.selectionStart === node.value.length && node.selectionEnd === node.value.length) { group = groups[0]; } | ||
else { group = groupForPos(groups, node.selectionStart); } | ||
document.activeElement === node && node.setSelectionRange(group.start, group.end); | ||
@@ -168,0 +170,0 @@ }; |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.RMDate={})}(this,function(e){"use strict";var t=/[^\d]+/,n=/[^\d_]+/,a="_",l={y:0,M:1,d:2,H:3,m:4,s:5,S:6};function u(e,t,n){void 0===n&&(n="0");for(var a=null==e?"":""+e,l=a.length;l<t;l++)a=n+a;return a}function r(e,t,n){void 0===n&&(n="0");for(var a=null==e?"":""+e,l=a.length;l<t;l++)a+=n;return a}var i={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function(){var e=new Date;return new Date(e.getFullYear()+"-"+u(e.getMonth()+1,2)+"-"+u(e.getDate(),2)+"T"+i.time)}};function s(e,l,i,s){void 0===i&&(i=0),void 0===s&&(s=!1);for(var o=!1,v=0;v<e.length;v++){var f=e[v],c=f.input.replace(t,""),g=e[v+1]&&e[v+1].prefix&&n.test(f.input);if(c.length>f.length&&f===l){var p=c.length-l.length;c=c.substr(0,i-l.start)+c.substr(i-l.start+p)}else c=c.substr(0,f.length);if(f.input=c,""===c)f.value=null,f.display=d(f);else if(f!==l)f.value=+c,"M"===f.type&&f.value--,f.display=d(f);else if("M"===f.type&&+c>1||"d"===f.type&&+c>3||"H"===f.type&&+c>2||("m"===f.type||"s"===f.type)&&+c>6)f.value=+c,"M"===f.type&&f.value--,f.display=u(c,f.length),o=!0;else if("y"===f.type&&2===c.length&&(g||s)){var h=(new Date).getFullYear(),y=100*Math.floor(h/100),m=Math.abs(h-(y+ +c))<20?y+ +c:y-100+ +c;f.value=m,f.input=f.display=u(m,f.length),o=!0}else f.display=r(c,f.length,a),f.value=+c}return o}function o(e,t){var n=(t=e.value=t&&x(t))?[t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()]:[null,null,null,null,null,null,null];e.forEach(function(e){e.value=n[l[e.type]],e.input=e.display=d(e)})}function v(e,t,n){var a=e.value||b,u=[a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds()];if(e.forEach(function(e){var t=e.value;null!==t&&"M"===e.type?t<0?t=0:t>11&&(t=11):null===t||"m"!==e.type&&"s"!==e.type?null!==t&&"H"===e.type?t<0?t=0:t>23&&(t=23):null!==t&&"h"===e.type&&(t<1?t=1:t>12&&(t=12)):t<0?t=0:t>59&&(t=59),t!==e.value&&(e.value=t,e.display=d(e)),u[l[e.type]]=e.value}),null!==u[0]&&null!==u[1]&&null!==u[2]){var r=e.find(function(e){return"d"===e.type});if(r)if(u[2]<1)r.value=u[2]=1,r.display=d(r);else{var i=m(new Date(u[0],u[1],1));u[2]>i&&(r.value=u[2]=i,r.display=d(r))}}e.find(function(e){return null===e.value})||0===u[0]||u[1]>11||u[1]<0||0===u[2]?e.value=null:(u.unshift(null),e.value=new(Date.bind.apply(Date,u))),t(n)}function f(e,t){t.value=e.reduce(function(e,t){return e+t.prefix+t.display},"")+e.suffix}function c(e,t){return e.find(function(e){return t>=e.start&&t<=e.end})}function d(e){if(null===e.value)return u("",e.length,a);switch(e.type){case"y":return e.value?e.length<=2?(""+e.value).substr(2,2):""+u(e.value,e.length):u("",e.length,a);case"M":return~e.value?1===e.length?""+(e.value+1):2===e.length?(e.value<9?"0":"")+(e.value+1):3===e.length?p[e.value].substr(0,3):p[e.value]:u("",e.length,a);case"d":return e.value?1===e.length?""+e.value:2===e.length?(e.value<=9?"0":"")+e.value:3===e.length?h[e.groups.value.getDay()].substr(0,3):h[e.groups.value.getDay()]:u("",e.length,a);case"H":case"h":case"m":case"s":return 1===e.length?""+e.value:u(e.value,e.length);case"S":return 1===e.length?""+e.value:u(e.value,3)}}var g=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g,p=["January","February","March","April","May","June","July","August","September","October","November","December"],h=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],y={teardown:function(){}};function m(e){return new Date(new Date(e.getFullYear(),e.getMonth()+1,1)-864e5).getDate()}var b=new Date("0000-01-01T00:00:00");function x(e){var t=e;if("function"==typeof t&&(t=e()),"string"==typeof t)try{t=new Date(t)}catch(e){return defaultDate()}return t instanceof Date?t:b}e.padl=u,e.padr=r,e.defaults=i,e.default=function(e){void 0===e&&(e={});var t=e.mask||i.mask,n=(e.time||i.time,e.date||i.date);if("function"!=typeof n){var l=n;n=function(){return l}}return function(l){l.instance.decorators[e.name||"date"]=function(l,u,i){void 0===u&&(u={});var p=Object.assign({},e,"string"==typeof u?{value:u}:0,"string"==typeof i?{mask:i}:0,"object"==typeof u?u:0),h=this.getContext(l),b=p.mask||t,D={observers:[],listeners:[]};if("INPUT"!==l.tagName)return console.warn("Attempted to add a date decorator a "+l.tagName),y;if(!b)return y;for(var M,w=[],S=0;M=g.exec(b);){var k={mask:M[0],type:M[0][0],length:M[0].length,start:M.index,end:M.index+M[0].length,chunk:w.length,prefix:b.substring(S,M.index),groups:w,value:null,display:r("",M[0].length,a)};S=k.end,w.push(k)}if(w.suffix=b.substring(w[w.length-1].end),w.last=null,w.slice(1).find(function(e){return!e.prefix}))return console.warn("Attempted to add a date decorator missing interstitial between fields '"+b+"'"),y;function E(e){if(null===w.value&&null===w.last||+w.value==+w.last)return 1;if(!e||!1===p.lazy){if(!1===p.null&&null===w.value)return o(w,w.last),1;p.min&&w.value<p.min?(o(w,p.min),f(w,l)):p.max&&w.value>p.max&&(o(w,p.max),f(w,l)),w.last=w.value,"string"==typeof p.value&&(D.observers.forEach(function(e){return e.silence()}),h.set(p.value,w.value),D.observers.forEach(function(e){return e.resume()}))}}p.min>p.max&&delete p.min,"string"==typeof p.value?D.observers.push(h.observe(p.value,function(e){e||!1!==p.null||(e=n()),w.value=e,o(w,e),w.last=e,f(w,l),(p.min&&e<p.min||p.max&&e>p.max)&&(w.last=null,setTimeout(E))},{defer:!0})):((p.date||!1===p.null)&&(w.value=x(p.date||n())),f(w,l)),D.listeners.push(h.listen("input",function(){var e=l.selectionStart,t=l.value;!function(e,t,n){var a=t.value,l=t.selectionStart,u=c(e,l),r=0,i=e[r],s=e[r+1];e.forEach(function(e){return e.input=""});for(var o=0;o<a.length;o++)s&&a[o]===s.prefix[0]&&(u!==i||i.input.length>=i.length||a.length-o<n.length-i.end+(i.length-i.input.length))?(s.prefix.length>1&&(o+=s.prefix.length-1),a[o+1]===s.prefix[0]&&(o+=s.prefix.length),i=e[++r],s=e[r+1]):i.input+=a[o]}(w,l,b);var n=c(w,e),a=s(w,n,e);if(v(w,E,!0),f(w,l),n&&(t.length>=b.length&&e===n.end||a)&&n!==w[w.length-1]){var u=w[w.indexOf(n)+1];l.setSelectionRange(u.start,u.end)}else l.setSelectionRange(e,e)})),D.listeners.push(h.listen("blur",function(){E(!1)&&o(w,w.value),f(w,l)}));var H=function(){var e=c(w,l.selectionStart);document.activeElement===l&&l.setSelectionRange(e.start,e.end)};return D.listeners.push(h.listen("click",H)),D.listeners.push(h.listen("focus",H)),D.listeners.push(h.listen("keydown",function(e){switch(e.key){case"Enter":case"Tab":var t=c(w,l.selectionStart),n=w.indexOf(t);s(w,t,l.selectionStart,!0)&&(f(w,l),v(w,E,e.shiftKey&&n>0||!e.shiftKey&&n+1<w.length)),e.shiftKey&&n>0?(l.setSelectionRange(w[n-1].start,w[n-1].end),e.preventDefault(),e.stopPropagation()):!e.shiftKey&&n+1<w.length&&(l.setSelectionRange(w[n+1].start,w[n+1].end),e.preventDefault(),e.stopPropagation());break;case"ArrowUp":case"ArrowDown":var a=[l.selectionStart,l.selectionEnd],u=a[0],r=a[1],i=c(w,u);null===i.value&&(i.value=1),function(e,t){switch(e.type){case"y":e.value=e.value+(t?-1:1);break;case"M":e.value=t?e.value<1?11:e.value-1:e.value>10?0:e.value+1;break;case"d":var n=e.groups,a=m(new Date((n.find(function(e){return"y"===e.type})||{value:1}).value,(n.find(function(e){return"M"===e.type})||{value:1}).value));e.value=t?e.value<2?a:e.value-1:e.value+1>a?1:e.value+1;break;case"H":e.value=t?e.value<1?23:e.value-1:e.value>22?0:e.value+1;break;case"h":e.value=t?e.value<1?12:e.value-1:e.value>11?1:e.value+1;break;case"m":case"s":e.value=t?e.value<1?59:e.value-1:e.value>58?0:e.value+1;break;case"S":e.value=t?e.value<1?999:e.value-1:e.value>998?0:e.value+1}}(i,"ArrowDown"===e.key),i.input=i.display=d(i),v(w,E,!0),f(w,l),e.preventDefault(),e.stopPropagation(),l.setSelectionRange(u,r)}})),{teardown:function(){D.observers.forEach(function(e){return e.cancel()}),D.listeners.forEach(function(e){return e.cancel()})}}}}},Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(e.RMDate={})}(this,function(e){"use strict";var t=/[^\d]+/,n=/[^\d_]+/,a="_",l={y:0,M:1,d:2,H:3,m:4,s:5,S:6};function u(e,t,n){void 0===n&&(n="0");for(var a=null==e?"":""+e,l=a.length;l<t;l++)a=n+a;return a}function r(e,t,n){void 0===n&&(n="0");for(var a=null==e?"":""+e,l=a.length;l<t;l++)a+=n;return a}var i={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function(){var e=new Date;return new Date(e.getFullYear()+"-"+u(e.getMonth()+1,2)+"-"+u(e.getDate(),2)+"T"+i.time)}};function s(e,l,i,s){void 0===i&&(i=0),void 0===s&&(s=!1);for(var o=!1,v=0;v<e.length;v++){var f=e[v],c=f.input.replace(t,""),g=e[v+1]&&e[v+1].prefix&&n.test(f.input);if(c.length>f.length&&f===l){var p=c.length-l.length;c=c.substr(0,i-l.start)+c.substr(i-l.start+p)}else c=c.substr(0,f.length);if(f.input=c,""===c)f.value=null,f.display=d(f);else if(f!==l)f.value=+c,"M"===f.type&&f.value--,f.display=d(f);else if("M"===f.type&&+c>1||"d"===f.type&&+c>3||"H"===f.type&&+c>2||("m"===f.type||"s"===f.type)&&+c>6)f.value=+c,"M"===f.type&&f.value--,f.display=u(c,f.length),o=!0;else if("y"===f.type&&2===c.length&&(g||s)){var h=(new Date).getFullYear(),y=100*Math.floor(h/100),m=Math.abs(h-(y+ +c))<20?y+ +c:y-100+ +c;f.value=m,f.input=f.display=u(m,f.length),o=!0}else f.display=r(c,f.length,a),f.value=+c}return o}function o(e,t){var n=(t=e.value=t&&x(t))?[t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()]:[null,null,null,null,null,null,null];e.forEach(function(e){e.value=n[l[e.type]],e.input=e.display=d(e)})}function v(e,t,n){var a=e.value||b,u=[a.getFullYear(),a.getMonth(),a.getDate(),a.getHours(),a.getMinutes(),a.getSeconds(),a.getMilliseconds()];if(e.forEach(function(e){var t=e.value;null!==t&&"M"===e.type?t<0?t=0:t>11&&(t=11):null===t||"m"!==e.type&&"s"!==e.type?null!==t&&"H"===e.type?t<0?t=0:t>23&&(t=23):null!==t&&"h"===e.type&&(t<1?t=1:t>12&&(t=12)):t<0?t=0:t>59&&(t=59),t!==e.value&&(e.value=t,e.display=d(e)),u[l[e.type]]=e.value}),null!==u[0]&&null!==u[1]&&null!==u[2]){var r=e.find(function(e){return"d"===e.type});if(r)if(u[2]<1)r.value=u[2]=1,r.display=d(r);else{var i=m(new Date(u[0],u[1],1));u[2]>i&&(r.value=u[2]=i,r.display=d(r))}}e.find(function(e){return null===e.value})||0===u[0]||u[1]>11||u[1]<0||0===u[2]?e.value=null:(u.unshift(null),e.value=new(Date.bind.apply(Date,u))),t(n)}function f(e,t){t.value=e.reduce(function(e,t){return e+t.prefix+t.display},"")+e.suffix}function c(e,t){return e.find(function(e){return t>=e.start&&t<=e.end})}function d(e){if(null===e.value)return u("",e.length,a);switch(e.type){case"y":return e.value?e.length<=2?(""+e.value).substr(2,2):""+u(e.value,e.length):u("",e.length,a);case"M":return~e.value?1===e.length?""+(e.value+1):2===e.length?(e.value<9?"0":"")+(e.value+1):3===e.length?p[e.value].substr(0,3):p[e.value]:u("",e.length,a);case"d":return e.value?1===e.length?""+e.value:2===e.length?(e.value<=9?"0":"")+e.value:3===e.length?h[e.groups.value.getDay()].substr(0,3):h[e.groups.value.getDay()]:u("",e.length,a);case"H":case"h":case"m":case"s":return 1===e.length?""+e.value:u(e.value,e.length);case"S":return 1===e.length?""+e.value:u(e.value,3)}}var g=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g,p=["January","February","March","April","May","June","July","August","September","October","November","December"],h=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],y={teardown:function(){}};function m(e){return new Date(new Date(e.getFullYear(),e.getMonth()+1,1)-864e5).getDate()}var b=new Date("0000-01-01T00:00:00");function x(e){var t=e;if("function"==typeof t&&(t=e()),"string"==typeof t)try{t=new Date(t)}catch(e){return defaultDate()}return t instanceof Date?t:b}e.padl=u,e.padr=r,e.defaults=i,e.default=function(e){void 0===e&&(e={});var t=e.mask||i.mask,n=(e.time||i.time,e.date||i.date);if("function"!=typeof n){var l=n;n=function(){return l}}return function(l){l.instance.decorators[e.name||"date"]=function(l,u,i){void 0===u&&(u={});var p=Object.assign({},e,"string"==typeof u?{value:u}:0,"string"==typeof i?{mask:i}:0,"object"==typeof u?u:0),h=this.getContext(l),b=p.mask||t,D={observers:[],listeners:[]};if("INPUT"!==l.tagName)return console.warn("Attempted to add a date decorator a "+l.tagName),y;if(!b)return y;for(var M,w=[],S=0;M=g.exec(b);){var k={mask:M[0],type:M[0][0],length:M[0].length,start:M.index,end:M.index+M[0].length,chunk:w.length,prefix:b.substring(S,M.index),groups:w,value:null,display:r("",M[0].length,a)};S=k.end,w.push(k)}if(w.suffix=b.substring(w[w.length-1].end),w.last=null,w.slice(1).find(function(e){return!e.prefix}))return console.warn("Attempted to add a date decorator missing interstitial between fields '"+b+"'"),y;function E(e){if(null===w.value&&null===w.last||+w.value==+w.last)return 1;if(!e||!1===p.lazy){if(!1===p.null&&null===w.value)return o(w,w.last),1;p.min&&w.value<p.min?(o(w,p.min),f(w,l)):p.max&&w.value>p.max&&(o(w,p.max),f(w,l)),w.last=w.value,"string"==typeof p.value&&(D.observers.forEach(function(e){return e.silence()}),h.set(p.value,w.value),D.observers.forEach(function(e){return e.resume()}))}}p.min>p.max&&delete p.min,"string"==typeof p.value?D.observers.push(h.observe(p.value,function(e){e||!1!==p.null||(e=n()),w.value=e,o(w,e),w.last=e,f(w,l),(p.min&&e<p.min||p.max&&e>p.max)&&(w.last=null,setTimeout(E))},{defer:!0})):((p.date||!1===p.null)&&(w.value=x(p.date||n())),f(w,l)),D.listeners.push(h.listen("input",function(){var e=l.selectionStart,t=l.value;!function(e,t,n){var a=t.value,l=t.selectionStart,u=c(e,l),r=0,i=e[r],s=e[r+1];e.forEach(function(e){return e.input=""});for(var o=0;o<a.length;o++)s&&a[o]===s.prefix[0]&&(u!==i||i.input.length>=i.length||a.length-o<n.length-i.end+(i.length-i.input.length))?(s.prefix.length>1&&(o+=s.prefix.length-1),a[o+1]===s.prefix[0]&&(o+=s.prefix.length),i=e[++r],s=e[r+1]):i.input+=a[o]}(w,l,b);var n=c(w,e),a=s(w,n,e);if(v(w,E,!0),f(w,l),n&&(t.length>=b.length&&e===n.end||a)&&n!==w[w.length-1]){var u=w[w.indexOf(n)+1];l.setSelectionRange(u.start,u.end)}else l.setSelectionRange(e,e)})),D.listeners.push(h.listen("blur",function(){E(!1)&&o(w,w.value),f(w,l)}));var H=function(){var e;e=l.selectionStart===l.value.length&&l.selectionEnd===l.value.length?w[0]:c(w,l.selectionStart),document.activeElement===l&&l.setSelectionRange(e.start,e.end)};return D.listeners.push(h.listen("click",H)),D.listeners.push(h.listen("focus",H)),D.listeners.push(h.listen("keydown",function(e){switch(e.key){case"Enter":case"Tab":var t=c(w,l.selectionStart),n=w.indexOf(t);s(w,t,l.selectionStart,!0)&&(f(w,l),v(w,E,e.shiftKey&&n>0||!e.shiftKey&&n+1<w.length)),e.shiftKey&&n>0?(l.setSelectionRange(w[n-1].start,w[n-1].end),e.preventDefault(),e.stopPropagation()):!e.shiftKey&&n+1<w.length&&(l.setSelectionRange(w[n+1].start,w[n+1].end),e.preventDefault(),e.stopPropagation());break;case"ArrowUp":case"ArrowDown":var a=[l.selectionStart,l.selectionEnd],u=a[0],r=a[1],i=c(w,u);null===i.value&&(i.value=1),function(e,t){switch(e.type){case"y":e.value=e.value+(t?-1:1);break;case"M":e.value=t?e.value<1?11:e.value-1:e.value>10?0:e.value+1;break;case"d":var n=e.groups,a=m(new Date((n.find(function(e){return"y"===e.type})||{value:1}).value,(n.find(function(e){return"M"===e.type})||{value:1}).value));e.value=t?e.value<2?a:e.value-1:e.value+1>a?1:e.value+1;break;case"H":e.value=t?e.value<1?23:e.value-1:e.value>22?0:e.value+1;break;case"h":e.value=t?e.value<1?12:e.value-1:e.value>11?1:e.value+1;break;case"m":case"s":e.value=t?e.value<1?59:e.value-1:e.value>58?0:e.value+1;break;case"S":e.value=t?e.value<1?999:e.value-1:e.value>998?0:e.value+1}}(i,"ArrowDown"===e.key),i.input=i.display=d(i),v(w,E,!0),f(w,l),e.preventDefault(),e.stopPropagation(),l.setSelectionRange(u,r)}})),{teardown:function(){D.observers.forEach(function(e){return e.cancel()}),D.listeners.forEach(function(e){return e.cancel()})}}}}},Object.defineProperty(e,"__esModule",{value:!0})}); |
@@ -1,1 +0,1 @@ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],e):e(t.RMDateInput={},t.Ractive)}(this,function(t,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var n=function(){try{var t=navigator.language||navigator.browserLanguage||navigator.languages[0]||"en";return[[0,1,2,3,4,5,6,7,8,9,10,11].map(function(e){return new Date(2006,e,1).toLocaleString(t,{month:"long"})}),[1,2,3,4,5,6,7].map(function(e){return new Date(2006,0,e).toLocaleString(t,{weekday:"long"})})]}catch(t){return[["January","February","March","April","May","June","July","August","September","October","November","December"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]]}}(),r=n[0],i=n[1],a=i.map(function(t){return t[0]}).concat(i.map(function(t){return t[0].toUpperCase()})),o=r.map(function(t){return t.substr(0,3)}),l=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.month=function(t,e){void 0===e&&(e=0);var n,r=t||new Date;if(!(r instanceof Date))return{};isNaN(r)&&(r=new Date),e&&(r=new Date(r.getFullYear(),r.getMonth()+e,r.getDate()));try{n=+this.get("firstDay")}catch(t){}("number"!=typeof n||isNaN(n))&&(n=0),n>6&&(n=0);for(var i=new Date(r.getFullYear(),r.getMonth(),0),o=new Date(r.getFullYear(),r.getMonth()+1,0).getDate(),l=new Date(r.getFullYear(),r.getMonth()+1,1),s=new Date(r.getFullYear(),r.getMonth(),1).getDay(),f=[],c=f[0]=[],u=0;u<7;u++)f[0].unshift({y:i.getFullYear(),m:i.getMonth(),d:i.getDate()-u}),f[0].push({y:r.getFullYear(),m:r.getMonth(),d:u+1});f[0]=n<=s?f[0].slice(7-(s-n),14-(s-n)):f[0].slice(n-s,7+n-s),1===f[0][0].d&&f.unshift(c.slice(0,7));for(var p=f[f.length-1][f[f.length-1].length-1].d,d=f.length;d<5;d++){f[d]=[];for(var g=0;g<7&&p+1<=o;g++)f[d].push({y:r.getFullYear(),m:r.getMonth(),d:++p});if(f[d].length<7){for(var h=7-f[d].length,v=1;v<=h;v++)f[d].push({y:l.getFullYear(),m:l.getMonth(),d:v});f[d+1]=[];for(var m=0,y=h+1;m<7;m++,y++)f[d+1].push({y:l.getFullYear(),m:l.getMonth(),d:y})}}if(!f[5]){for(f[5]=[];p<o;)f[5].push({y:r.getFullYear(),m:r.getMonth(),d:++p});for(var b=1;b<8;b++)f[5].push({y:l.getFullYear(),m:l.getMonth(),d:b});f[5]=f[5].slice(0,7)}return{days:a.slice(n,n+7),weeks:f,year:r.getFullYear(),month:r.getMonth(),currentYear:(new Date).getFullYear()}},e.prototype.year=function(t,e){void 0===e&&(e=0);var n=t||new Date;if(!(n instanceof Date))return{};e&&(n=new Date(n.getFullYear()+e,n.getMonth(),n.getDate()));for(var r=[],i=0;i<4;i++){r.push([]);for(var a=0;a<3;a++)r[i].push({m:3*i+a,y:n.getFullYear()})}return{year:n.getFullYear(),months:r}},e.prototype.decade=function(t,e){void 0===e&&(e=0);var n=t||new Date;if(!(n instanceof Date))return{};e&&(n=new Date(n.getFullYear()+10*e,n.getMonth(),n.getDate()));for(var r=10*Math.floor(n.getFullYear()/10),i=r-1,a=[],o=0;o<4;o++){a.push([]);for(var l=0;l<3;l++)a[o].push({y:i+3*o+l})}return{start:r,end:r+9,years:a}},e.prototype.monthName=function(t){return r[t]},e.prototype.shortMonthName=function(t){return o[t]},e.prototype.dayName=function(t){return i[t]},e.prototype.select=function(t){if(t&&t instanceof Date)this.set("date",t);else{var e=this.get("safeCurrent");t&&this.set("date",new Date(t.y||e.getFullYear(),"number"==typeof t.m?t.m:e.getMonth(),t.d||e.getDate()));var n=this.get("mode");"year"===n?this.set("mode","months"):"months"===n&&this.set("mode","month"),this.set("target",this.get("date"))}},e.prototype.isCurrent=function(t){var e=this.get("safeCurrent");return!!e&&(t&&t.y===e.getFullYear()&&(null==t.m||t.m===e.getMonth())&&(null==t.d||t.d===e.getDate()))},e.prototype.next=function(){var t=this.get("safeTarget"),e=this.get("mode");"month"===e&&this.set("target",new Date(t.getFullYear(),t.getMonth()+1,1)),"months"===e&&this.set("target",new Date(t.getFullYear()+1,t.getMonth(),1)),"year"===e&&this.set("target",new Date(t.getFullYear()+10,t.getMonth(),1))},e.prototype.prev=function(){var t=this.get("safeTarget"),e=this.get("mode");"month"===e&&this.set("target",new Date(t.getFullYear(),t.getMonth()-1,1)),"months"===e&&this.set("target",new Date(t.getFullYear()-1,t.getMonth(),1)),"year"===e&&this.set("target",new Date(t.getFullYear()-10,t.getMonth(),1))},e.prototype.today=function(){this.set("date",new Date),this.set("target",this.get("date"))},e}(e);e.extendWith(l,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal",g:1}],f:[{t:4,f:[{t:4,f:[{t:19,f:[{t:8,r:"~/mode"}],n:54,z:[{n:"left",x:{x:{r:["@index"],s:"_0===0"}}},{n:"right",x:{x:{r:["@last","@index"],s:"_0===_1"}}}]}],n:52,z:[{n:"offset",x:{r:"."}}],r:"~/padding"}],n:50,r:"~/padding"},{t:4,f:[{t:19,f:[{t:8,r:"~/mode"}],n:54,z:[{n:"offset",x:{x:{r:[],s:"0"}}},{n:"left",x:{x:{r:[],s:"true"}}},{n:"right",x:{x:{r:[],s:"true"}}}]}],n:51,l:1}]}],e:{0:function(){return 0},"_0===0":function(t){return 0===t},"_0===_1":function(t,e){return t===e},true:function(){return!0},"[_0.prev(),false]":function(t){return[t.prev(),!1]},'[_0.set("mode","month"),false]':function(t){return[t.set("mode","month"),!1]},"[_0.next(),false]":function(t){return[t.next(),!1]},"_1>_0||_1<_2":function(t,e,n){return e>t||e<n},"_0.isCurrent(_1)":function(t,e){return t.isCurrent(e)},"[_0.select(_1),false]":function(t,e){return[t.select(e),!1]},"_0.decade(_1,_2)":function(t,e,n){return t.decade(e,n)},'[_0.set("mode","year"),false]':function(t){return[t.set("mode","year"),!1]},"_0.shortMonthName(_1)":function(t,e){return t.shortMonthName(e)},"_0.year(_1,_2)":function(t,e,n){return t.year(e,n)},'[_0.set("mode","months"),false]':function(t){return[t.set("mode","months"),!1]},"_0.monthName(_1)":function(t,e){return t.monthName(e)},"_0!==_1":function(t,e){return t!==e},"[_0.select(_1)]":function(t,e){return[t.select(e)]},"_0.month(_1,_2)":function(t,e,n){return t.month(e,n)}},p:{year:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","month"),false]'}}],f:[{t:2,r:".start"}," - ",{t:2,r:".end"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:19,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-decade",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-row",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-pick",g:1},{n:"class-rcal-off-day",t:13,f:[{t:2,x:{r:["year.end",".y","year.start"],s:"_1>_0||_1<_2"}}]},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1),false]"}}],f:[{t:2,r:".y"}]}],n:52,r:"."}]}],n:52,r:".years"}]}],n:54,z:[{n:"year",x:{r:"."}}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.decade(_1,_2)"}}],months:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","year"),false]'}}],f:[{t:2,r:".year"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-year",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-row",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-pick",g:1},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1),false]"}}],f:[{t:2,x:{r:["@this",".m"],s:"_0.shortMonthName(_1)"}}]}],n:52,r:"."}]}],n:52,r:".months"}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.year(_1,_2)"}}],month:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1},{n:"class-rcal-pad",t:13,f:[{t:2,r:"~/pad"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","months"),false]'}}],f:[{t:2,x:{r:["@this",".month"],s:"_0.monthName(_1)"}},{t:4,f:[", ",{t:2,r:".year"}],n:50,x:{r:[".currentYear",".year"],s:"_0!==_1"}}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-month",g:1}],f:[{t:19,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-week rcal-week-header",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-day rcal-day-header",g:1}],f:[{t:2,r:"."}]}],n:52,r:".days"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-week",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-day",g:1},{n:"class-rcal-off-day",t:13,f:[{t:2,x:{r:[".m","month.month"],s:"_0!==_1"}}]},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1)]"}}],f:[{t:2,r:".d"}]}],n:52,r:"."}]}],n:52,r:".weeks"}],n:54,z:[{n:"month",x:{r:"."}}]}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.month(_1,_2)"}}]}},css:function(t){return[function(t){return".rcal-wrapper {\n display: flex;\n flex-direction: column;\n width: 15em;\n height: 17em;\n }\n \n .rcal-pad {\n padding: 0.5em;\n }\n \n .rcal-block-outer {\n border: 1px solid "+(t("raui.datePicker.primary.bga")||t("raui.primary.bga")||"#f4f4f4")+";\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n }\n \n .rcal-block-header {\n text-align: center;\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n cursor: default;\n display: flex;\n justify-content: space-between;\n line-height: 2em;\n height: 2em;\n align-items: center;\n }\n \n .rcal-arrow {\n width: 2em;\n }\n .rcal-title {\n flex-grow: 1;\n }\n \n .rcal-click {\n cursor: pointer;\n }\n \n .rcal-left, .rcal-right {\n height: 0.8em;\n display: inline-block;\n box-sizing: border-box;\n border: 0.4em solid transparent;\n cursor: pointer;\n }\n .rcal-left {\n border-right-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n }\n .rcal-right {\n border-left-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n }\n \n .rcal-month, .rcal-year, .rcal-decade {\n display: flex;\n flex-direction: column;\n background-color: "+(t("raui.datePicker.primary.bga")||t("raui.primary.bga")||"#f4f4f4")+";\n justify-content: space-between;\n flex-grow: 1;\n }\n .rcal-year, .rcal-decade {\n justify-content: space-around;\n }\n \n .rcal-week {\n height: 2em;\n display: flex;\n justify-content: space-between;\n }\n \n .rcal-inner-row {\n height: 2em;\n display: flex;\n justify-content: space-around;\n }\n \n .rcal-inner-pick {\n background-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n width: 3em;\n height: 2em;\n line-height: 2em;\n text-align: center;\n cursor: pointer;\n }\n \n .rcal-week-header {\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n }\n \n .rcal-day {\n background-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n width: 2em;\n height: 2em;\n text-align: center;\n line-height: 2em;\n cursor: pointer;\n }\n \n .rcal-day-header {\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n cursor: default;\n }\n \n .rcal-off-day {\n background-color: "+(t("raui.datePicker.primary.bc")||t("raui.primary.bc")||"#ccc")+";\n }\n \n .rcal-current {\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n background-color: "+(t("raui.datePicker.primary.fg")||t("raui.primary.fg")||"#222")+";\n }\n "}.call(this,t)].join(" ")},noCssTransform:!0,data:function(){return{mode:"month",target:new Date}},computed:{safeCurrent:function(){var t=this.get("date");if("string"==typeof t)try{t=new Date(t)}catch(t){}return t&&t instanceof Date&&!isNaN(t)?t:new Date},safeTarget:function(){var t=this.get("target");if(t||(t=this.get("date")),"string"==typeof t)try{t=new Date(t)}catch(t){}return t&&t instanceof Date&&!isNaN(t)?t:new Date}}});var s="undefined"!=typeof window?window:null;function f(t,e,n){if(s&&s.Ractive&&"object"==typeof s.Ractive[e]){var r=document.currentScript;if(r||(r=(r=document.querySelectorAll("script"))[r.length-1]),r){var i=r.getAttribute("data-alias");i&&(i=(i=i.split("&")).reduce(function(t,e){var n=e.split("="),r=n[0],i=n[1];return t[r]=i,t},{})),Ractive[e][i&&i[t]||t]=n}}}function c(t,e){void 0===e&&(e={});var n=t.processParams(e,{duration:400,easing:"easeInOut"});e.dir=e.dir||!1;var r=e.distance||"20px",i=e.scale||"0.9",a="above"===e.dir?"translateY("+r+")":"left"===e.dir?"translateX("+r+")":"right"===e.dir?"translateX(-"+r+")":"translateY(-"+r+")";return t.isIntro||n.intro?(t.setStyle("opacity",0),t.setStyle("transform","scale("+i+") "+a),t.animateStyle({opacity:1,transform:"none"},n)):(t.setStyle("opacity",1),t.setStyle("transform","none"),t.animateStyle({opacity:0,transform:"scale("+i+") "+a},n))}function u(t){return void 0===t&&(t={}),function(e){e.instance.transitions[t.name||"pop"]=c}}function p(t,e){var n=!1,r=!1;function i(n){for(var r=n.target;r;){if(r===t)return;if(!r.parentNode&&r!==document)return;r=r.parentNode}e(n)}return setTimeout(function(){n=!0,r||(document.body.addEventListener("click",i,{capture:!0}),document.body.addEventListener("touchstop",i,{capture:!0}))}),{teardown:function(){r=!0,n&&(document.body.removeEventListener("click",i,{capture:!0}),document.body.removeEventListener("touchstop",i,{capture:!0}))}}}function d(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"});return t.isIntro||n.intro?(t.setStyle("opacity",0),t.animateStyle("opacity",1,n)):(t.setStyle("opacity",1),t.animateStyle("opacity",0,n))}function g(t){return void 0===t&&(t={}),function(e){e.instance.transitions[t.name||"fade"]=d}}f("pop","transitions",c),f("fade","transitions",d);var h,v,m,y,b={v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-wrapper",g:1},{n:"class-rpop-with-tail",t:13,f:[{t:2,r:"position.tail"}]},{n:"class",f:["rpop-",{t:2,x:{r:["where"],s:'_0||"below"'}}," rpop-align-",{t:2,x:{r:["align"],s:'_0||"middle"'}}],t:13},{t:4,f:[{n:"style-top",f:[{t:2,r:"position.popTop"},"px"],t:13},{n:"style-left",f:[{t:2,r:"position.popLeft"},"px"],t:13}],n:50,r:"position"},{t:4,f:[{t:4,f:[{n:"style-top",f:[{t:2,r:"top"}],t:13}],n:50,r:"top"},{t:4,f:[{n:"style-left",f:[{t:2,r:"left"}],t:13}],n:50,r:"left"}],n:51,l:1},{n:"pop",t:72,f:{r:["where"],s:'[{dir:_0||"below"}]'},v:"t2"},{n:"cleanup",t:71},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:50,r:"clickClose"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:51,r:"noClickout"},{t:16,r:"extra-attributes"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailRight"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail-outer",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailRight"}]}],n:50,r:"~/tail"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1}],f:[{t:16,r:"content"}]}]}],n:50,r:"__popped"}],e:{'_0||"below"':function(t){return t||"below"},'_0||"middle"':function(t){return t||"middle"},'[{dir:_0||"below"}]':function(t){return[{dir:t||"below"}]},'[_0.set("popped",false)]':function(t){return[t.set("popped",!1)]},"_0+(_1?1:0)":function(t,e){return t+(e?1:0)},"_0+(_1?0:1)":function(t,e){return t+(e?0:1)},"_0-2":function(t){return t-2},"[{delay:200}]":function(){return[{delay:200}]},"[_0===_1&&_2.done(),true]":function(t,e,n){return[t===e&&n.done(),!0]},"[_0.done()]":function(t){return[t.done()]},true:function(){return!0}},p:{modal:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-modal",g:1},{n:"fade",t:72,v:"t1"},{n:"fade",t:72,f:{r:[],s:"[{delay:200}]"},v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["@node","@event.target","."],s:"[_0===_1&&_2.done(),true]"}}],n:51,r:".noClickout"}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1},{n:"pop",t:72,f:{r:[],s:"[{delay:200}]"},v:"t1"},{n:"pop",t:72,v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.done()]"}}],n:50,r:".clickClose"},{t:8,r:".attrs",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}],f:[{t:8,r:".content",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}]}]}],n:54,r:"contents.0"}],n:50,r:"contents.length"}]}};function w(){}var x,_=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.position=function(t){var e=t||this.source,n=this.get("popped");if(e&&n){var r=this.find("div");if(e&&r&&r.offsetParent){var i=r.offsetParent,a=i.getBoundingClientRect(),o=r.getBoundingClientRect(),l=e.getBoundingClientRect(),s=this.get("where")||"below",f=this.get("align")||"middle",c=this.get("tail"),u="above"===s||"below"===s,p=this.get("fit"),d=this.get("gap"),g="above"===s||"below"===s?0:"left"===s?-o.width-d:l.width+d,h="left"===s||"right"===s?-l.height:"above"===s?-l.height-o.height-d:d;"middle"===f?"below"===s||"above"===s?g-=(o.width-l.width)/2:"left"!==s&&"right"!==s||(h-=(o.height-l.height)/2):"end"===f&&("below"===s||"above"===s?g+=l.width-o.width:"left"!==s&&"right"!==s||(h+=l.height-o.height));var v={popTop:l.bottom-a.top+h,popLeft:l.left-a.left+g,tail:c,vert:"above"===s||"below"===s};if(i.scrollTop&&(v.popTop+=i.scrollTop),i.scrollLeft&&(v.popLeft+=i.scrollLeft),c){"above"===s?v.tailBottom=-10:"below"===s?v.tailTop=-10:"left"===s?v.tailRight=-10:"right"===s&&(v.tailLeft=-10);var m=this.tailSource?this.tailSource.getBoundingClientRect():l;"start"===f?u?v.tailLeft=Math.floor(m.width/2)-10:v.tailTop=Math.floor(m.height/2)-10:"end"===f?u?v.tailRight=Math.floor(m.width/2)-10:v.tailBottom=Math.floor(m.height/2)-10:"middle"===f&&(u?v.tailLeft=Math.floor(m.width/2)-10:v.tailTop=Math.floor(m.height/2)-10),m!==l?u?(null!=v.tailLeft&&(v.tailLeft+=m.left-l.left),null!=v.tailRight&&(v.tailRight+=l.right-m.right)):(null!=v.tailTop&&(v.tailTop+=m.top-l.top),null!=v.tailBottom&&(v.tailBottom+=l.bottom-m.bottom)):"middle"===f&&(u?(null!=v.tailLeft&&(v.tailLeft+=m.left-(v.popLeft+a.left)),null!=v.tailRight&&(v.tailRight+=v.popLeft+a.left+o.width-m.right)):(null!=v.tailTop&&(v.tailTop+=m.top-(v.popTop+a.top)),null!=v.tailBottom&&(v.tailBottom+=v.popTop+a.top+o.height-m.bottom)))}if(p){var y=i;if(this.get("offsets"))for(var b=this.get("offsets");b--;)y=y.offsetParent;var w=i.scrollWidth,x=i.scrollHeight;if(v.popLeft+o.width>w){var _=v.popLeft-(w-o.width);v.popLeft-=_,u&&v.tailLeft&&(v.tailLeft+=_),u&&v.tailRight&&(v.tailRight-=_),c&&!u&&(v.tail=!1)}if(v.popLeft<0){var k=-1*v.popLeft;v.popLeft+=k,u&&v.tailLeft&&(v.tailLeft-=k),u&&v.tailRight&&(v.tailRight+=k),c&&!u&&(v.tail=!1)}if(v.popTop+o.height>x){var D=v.popTop-(x-o.height);v.popTop-=D,!u&&v.tailTop&&(v.tailTop+=D),!u&&v.tailBottom&&(v.tailBottom-=D),c&&u&&(v.tail=!1)}if(v.popTop<0){var M=-1*v.popTop;v.popTop+=M,!u&&v.tailTop&&(v.tailTop-=M),!u&&v.tailBottom&&(v.tailBottom+=M),c&&u&&(v.tail=!1)}}this.set("position",v)}else this.set("position",null)}},e.prototype.show=function(t){this.source=t,this.set("popped",!0)},e.prototype.hide=function(){this.set("popped",!1)},e}(e);e.extendWith(_,{attributes:["popped","tail","where","align","top","left","fit","clickClose","noClickout","gap","offsets"],use:[u(),(void 0===x&&(x={}),function(t){t.instance.events[x.name||"clickout"]=p}),g()],template:b,css:function(t){return[function(t){var e=Object.assign({},t("raui.primary"),t("raui.pop.primary")),n=(t("raui.themes")||[]).slice();return(t("raui.pop.themes")||[]).forEach(function(t){~n.indexOf(t)||n.push(t)}),"\n .rpop-wrapper {\n position: absolute;\n display: inline-block;\n z-index: 21;\n transition-property: top, left, padding;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-with-tail.rpop-above {\n padding-bottom: 10px;\n }\n .rpop-with-tail.rpop-below {\n padding-top: 10px;\n }\n .rpop-with-tail.rpop-left {\n padding-right: 10px;\n }\n .rpop-with-tail.rpop-right {\n padding-left: 10px;\n }\n \n .rpop {\n position: relative;\n box-shadow: 0 1px 4px 0 rgba(0,0,0,0.24);\n border: 1px solid #ccc;\n border-radius: 0.2em;\n background-color: "+(e.bg||"#fff")+";\n color: "+(e.fg||"#222")+";\n padding: 0.5em;\n z-index: 2;\n }\n \n .rpop-modal {\n position: fixed;\n display: flex;\n z-index: 20;\n background-color: rgba(0, 0, 0, 0.2);\n align-items: center;\n justify-content: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n padding: 1em;\n overflow: auto;\n }\n \n .rpop-tail, .rpop-tail-outer {\n z-index: 3;\n width: 0;\n height: 0;\n position: absolute;\n border-style: solid;\n border-width: 10px;\n border-color: transparent;\n transition-property: top, left, bottom, right, border-color;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-tail-outer {\n z-index: 1;\n border-width: 12px;\n border-color: transparent;\n }\n \n .rpop-below .rpop-tail {\n border-bottom-color: "+(e.bg||"#fff")+";\n }\n .rpop-below .rpop-tail-outer {\n border-bottom-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-above .rpop-tail {\n border-top-color: "+(e.bg||"#fff")+";\n }\n .rpop-above .rpop-tail-outer {\n border-top-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-left .rpop-tail {\n border-left-color: "+(e.bg||"#fff")+";\n }\n .rpop-left .rpop-tail-outer {\n border-left-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-right .rpop-tail {\n border-right-color: "+(e.bg||"#fff")+";\n }\n .rpop-right .rpop-tail-outer {\n border-right-color: "+(e.bc||"#ccc")+";\n }\n "+n.map(function(e){var n=Object.assign({},t("raui.primary"),t("raui.pop.primary"),t("raui."+e),t("raui.pop."+e));return"\n ."+e+" .rpop {\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n }\n \n ."+e+".rpop-below .rpop-tail {\n border-bottom-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-below .rpop-tail-outer {\n border-bottom-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-above .rpop-tail {\n border-top-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-above .rpop-tail-outer {\n border-top-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-left .rpop-tail {\n border-left-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-left .rpop-tail-outer {\n border-left-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-right .rpop-tail {\n border-right-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-right .rpop-tail-outer {\n border-right-color: "+(n.bc||"#ccc")+";\n }\n "})}.call(this,t)].join(" ")},cssId:"rpop",noCssTransform:!0,observe:{popped:function(t){var e=this;t&&(h&&(this.source=h),v&&(this.tailSource=v)),setTimeout(function(){e.get("popped")===t&&e.set("_popped",t)},1)},_popped:{handler:function(t){var e=this;if(t){var n=this.get("@style.raui.pop.mobile");if(n&&window.matchMedia("(max-width: "+n+")").matches){y||(y=new k({target:document.body,append:!0}));var r=this.getContext().getParent(!0);r.isContext=1,this.set("__popped",!1),y.unshift("contents",{content:this.partials.content,context:r,attrs:this.partials["extra-attributes"]||[],clickClose:this.get("clickClose"),noClickout:this.get("noClickout"),done:function(){e.set("popped",!1)}})}else this.set("__popped",!0)}else m?y.shift("contents"):this.set("__popped",!1)},defer:!0},__popped:{handler:function(t){if(t){var e=this.find("div"),n=e,r=n.offsetHeight+n.offsetTop,i=n.offsetWidth+n.offsetLeft,a=n.offsetParent;if(!this.overflows)for(var o=this.overflows={e:[],v:[]};e&&e.style;){if(e===a){if(e.offsetWidth>=i&&e.offsetHeight>=r)break;i+=e.offsetLeft,r+=e.offsetTop,a=e.offsetParent}var l=getComputedStyle(e);if("auto"===l.overflow)break;"hidden"===l.overflow&&(o.e.push(e),o.v.push(e.style.overflow),e.style.overflow="visible"),e=e.parentNode}this.position(),this.transition("pop",n,{intro:!0,dir:this.get("where")||"below"})}else this.source=null,this.tailSource=null},defer:!0},"align where tail fit":{handler:function(){this.position()},defer:!0}},decorators:{cleanup:function(t){var e=this;return{teardown:function(){var t=e.overflows;if(t){e.overflows=null;for(var n=0;n<t.e.length;n++)t.e[n].style.overflow=t.v[n]}}}}},data:function(){return{gap:4}}});var k=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(e);e.extendWith(k,{template:{v:b.v,t:b.p.modal},data:function(){return{contents:[]}},use:[u(),g()],observe:{contents:function(t){m=(t||[]).length>0}},on:{init:function(){y?console.warn("More than one PopOver mobile host created."):y=this}}});var D=/[^\d]+/,M=/[^\d_]+/,T="_",S={y:0,M:1,d:2,H:3,m:4,s:5,S:6};function L(t,e,n){void 0===n&&(n="0");for(var r=null==t?"":""+t,i=r.length;i<e;i++)r=n+r;return r}function F(t,e,n){void 0===n&&(n="0");for(var r=null==t?"":""+t,i=r.length;i<e;i++)r+=n;return r}var Y={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function(){var t=new Date;return new Date(t.getFullYear()+"-"+L(t.getMonth()+1,2)+"-"+L(t.getDate(),2)+"T"+Y.time)}};function C(t){void 0===t&&(t={});var e=t.mask||Y.mask,n=(t.time||Y.time,t.date||Y.date);if("function"!=typeof n){var r=n;n=function(){return r}}return function(r){r.instance.decorators[t.name||"date"]=function(r,i,a){void 0===i&&(i={});var o=Object.assign({},t,"string"==typeof i?{value:i}:0,"string"==typeof a?{mask:a}:0,"object"==typeof i?i:0),l=this.getContext(r),s=o.mask||e,f={observers:[],listeners:[]};if("INPUT"!==r.tagName)return console.warn("Attempted to add a date decorator a "+r.tagName),H;if(!s)return H;for(var c,u=[],p=0;c=z.exec(s);){var d={mask:c[0],type:c[0][0],length:c[0].length,start:c.index,end:c.index+c[0].length,chunk:u.length,prefix:s.substring(p,c.index),groups:u,value:null,display:F("",c[0].length,T)};p=d.end,u.push(d)}if(u.suffix=s.substring(u[u.length-1].end),u.last=null,u.slice(1).find(function(t){return!t.prefix}))return console.warn("Attempted to add a date decorator missing interstitial between fields '"+s+"'"),H;function g(t){if(null===u.value&&null===u.last||+u.value==+u.last)return 1;if(!t||!1===o.lazy){if(!1===o.null&&null===u.value)return P(u,u.last),1;o.min&&u.value<o.min?(P(u,o.min),j(u,r)):o.max&&u.value>o.max&&(P(u,o.max),j(u,r)),u.last=u.value,"string"==typeof o.value&&(f.observers.forEach(function(t){return t.silence()}),l.set(o.value,u.value),f.observers.forEach(function(t){return t.resume()}))}}o.min>o.max&&delete o.min,"string"==typeof o.value?f.observers.push(l.observe(o.value,function(t){t||!1!==o.null||(t=n()),u.value=t,P(u,t),u.last=t,j(u,r),(o.min&&t<o.min||o.max&&t>o.max)&&(u.last=null,setTimeout(g))},{defer:!0})):((o.date||!1===o.null)&&(u.value=J(o.date||n())),j(u,r)),f.listeners.push(l.listen("input",function(){var t=r.selectionStart,e=r.value;!function(t,e,n){var r=e.value,i=e.selectionStart,a=O(t,i),o=0,l=t[o],s=t[o+1];t.forEach(function(t){return t.input=""});for(var f=0;f<r.length;f++)s&&r[f]===s.prefix[0]&&(a!==l||l.input.length>=l.length||r.length-f<n.length-l.end+(l.length-l.input.length))?(s.prefix.length>1&&(f+=s.prefix.length-1),r[f+1]===s.prefix[0]&&(f+=s.prefix.length),l=t[++o],s=t[o+1]):l.input+=r[f]}(u,r,s);var n=O(u,t),i=R(u,n,t);if(N(u,g,!0),j(u,r),n&&(e.length>=s.length&&t===n.end||i)&&n!==u[u.length-1]){var a=u[u.indexOf(n)+1];r.setSelectionRange(a.start,a.end)}else r.setSelectionRange(t,t)})),f.listeners.push(l.listen("blur",function(){g(!1)&&P(u,u.value),j(u,r)}));var h=function(){var t=O(u,r.selectionStart);document.activeElement===r&&r.setSelectionRange(t.start,t.end)};return f.listeners.push(l.listen("click",h)),f.listeners.push(l.listen("focus",h)),f.listeners.push(l.listen("keydown",function(t){switch(t.key){case"Enter":case"Tab":var e=O(u,r.selectionStart),n=u.indexOf(e);R(u,e,r.selectionStart,!0)&&(j(u,r),N(u,g,t.shiftKey&&n>0||!t.shiftKey&&n+1<u.length)),t.shiftKey&&n>0?(r.setSelectionRange(u[n-1].start,u[n-1].end),t.preventDefault(),t.stopPropagation()):!t.shiftKey&&n+1<u.length&&(r.setSelectionRange(u[n+1].start,u[n+1].end),t.preventDefault(),t.stopPropagation());break;case"ArrowUp":case"ArrowDown":var i=[r.selectionStart,r.selectionEnd],a=i[0],o=i[1],l=O(u,a);null===l.value&&(l.value=1),function(t,e){switch(t.type){case"y":t.value=t.value+(e?-1:1);break;case"M":t.value=e?t.value<1?11:t.value-1:t.value>10?0:t.value+1;break;case"d":var n=t.groups,r=I(new Date((n.find(function(t){return"y"===t.type})||{value:1}).value,(n.find(function(t){return"M"===t.type})||{value:1}).value));t.value=e?t.value<2?r:t.value-1:t.value+1>r?1:t.value+1;break;case"H":t.value=e?t.value<1?23:t.value-1:t.value>22?0:t.value+1;break;case"h":t.value=e?t.value<1?12:t.value-1:t.value>11?1:t.value+1;break;case"m":case"s":t.value=e?t.value<1?59:t.value-1:t.value>58?0:t.value+1;break;case"S":t.value=e?t.value<1?999:t.value-1:t.value>998?0:t.value+1}}(l,"ArrowDown"===t.key),l.input=l.display=B(l),N(u,g,!0),j(u,r),t.preventDefault(),t.stopPropagation(),r.setSelectionRange(a,o)}})),{teardown:function(){f.observers.forEach(function(t){return t.cancel()}),f.listeners.forEach(function(t){return t.cancel()})}}}}}function R(t,e,n,r){void 0===n&&(n=0),void 0===r&&(r=!1);for(var i=!1,a=0;a<t.length;a++){var o=t[a],l=o.input.replace(D,""),s=t[a+1]&&t[a+1].prefix&&M.test(o.input);if(l.length>o.length&&o===e){var f=l.length-e.length;l=l.substr(0,n-e.start)+l.substr(n-e.start+f)}else l=l.substr(0,o.length);if(o.input=l,""===l)o.value=null,o.display=B(o);else if(o!==e)o.value=+l,"M"===o.type&&o.value--,o.display=B(o);else if("M"===o.type&&+l>1||"d"===o.type&&+l>3||"H"===o.type&&+l>2||("m"===o.type||"s"===o.type)&&+l>6)o.value=+l,"M"===o.type&&o.value--,o.display=L(l,o.length),i=!0;else if("y"===o.type&&2===l.length&&(s||r)){var c=(new Date).getFullYear(),u=100*Math.floor(c/100),p=Math.abs(c-(u+ +l))<20?u+ +l:u-100+ +l;o.value=p,o.input=o.display=L(p,o.length),i=!0}else o.display=F(l,o.length,T),o.value=+l}return i}function P(t,e){var n=(e=t.value=e&&J(e))?[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()]:[null,null,null,null,null,null,null];t.forEach(function(t){t.value=n[S[t.type]],t.input=t.display=B(t)})}function N(t,e,n){var r=t.value||W,i=[r.getFullYear(),r.getMonth(),r.getDate(),r.getHours(),r.getMinutes(),r.getSeconds(),r.getMilliseconds()];if(t.forEach(function(t){var e=t.value;null!==e&&"M"===t.type?e<0?e=0:e>11&&(e=11):null===e||"m"!==t.type&&"s"!==t.type?null!==e&&"H"===t.type?e<0?e=0:e>23&&(e=23):null!==e&&"h"===t.type&&(e<1?e=1:e>12&&(e=12)):e<0?e=0:e>59&&(e=59),e!==t.value&&(t.value=e,t.display=B(t)),i[S[t.type]]=t.value}),null!==i[0]&&null!==i[1]&&null!==i[2]){var a=t.find(function(t){return"d"===t.type});if(a)if(i[2]<1)a.value=i[2]=1,a.display=B(a);else{var o=I(new Date(i[0],i[1],1));i[2]>o&&(a.value=i[2]=o,a.display=B(a))}}t.find(function(t){return null===t.value})||0===i[0]||i[1]>11||i[1]<0||0===i[2]?t.value=null:(i.unshift(null),t.value=new(Date.bind.apply(Date,i))),e(n)}function j(t,e){e.value=t.reduce(function(t,e){return t+e.prefix+e.display},"")+t.suffix}function O(t,e){return t.find(function(t){return e>=t.start&&e<=t.end})}function B(t){if(null===t.value)return L("",t.length,T);switch(t.type){case"y":return t.value?t.length<=2?(""+t.value).substr(2,2):""+L(t.value,t.length):L("",t.length,T);case"M":return~t.value?1===t.length?""+(t.value+1):2===t.length?(t.value<9?"0":"")+(t.value+1):3===t.length?E[t.value].substr(0,3):E[t.value]:L("",t.length,T);case"d":return t.value?1===t.length?""+t.value:2===t.length?(t.value<=9?"0":"")+t.value:3===t.length?A[t.groups.value.getDay()].substr(0,3):A[t.groups.value.getDay()]:L("",t.length,T);case"H":case"h":case"m":case"s":return 1===t.length?""+t.value:L(t.value,t.length);case"S":return 1===t.length?""+t.value:L(t.value,3)}}var z=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g,E=["January","February","March","April","May","June","July","August","September","October","November","December"],A=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],H={teardown:function(){}};function I(t){return new Date(new Date(t.getFullYear(),t.getMonth()+1,1)-864e5).getDate()}var W=new Date("0000-01-01T00:00:00");function J(t){var e=t;if("function"==typeof e&&(e=t()),"string"==typeof e)try{e=new Date(e)}catch(t){return defaultDate()}return e instanceof Date?e:W}function K(t){t.strObserver&&t.strObserver.cancel(),t.attributes.value?t.link(t.attributes.value,"rdi.val"):t.unlink("rdi.val"),t.attributes.string&&(t.strObserver=t.observe("rdi.val",function(e){return t.set(t.attributes.string,e?e.toString():"")}));var e={value:"rdi.val"};["null","lazy","mask","min","max","mask"].forEach(function(n){n in t.attributes&&(e[n]=t.attributes[n])}),t.set("rdi.opts",e)}var U=Ractive.macro(function(t){return t.aliasLocal("rdi"),K(t),t.setTemplate({v:4,t:[{t:7,e:"span",m:[{t:13,n:"class",f:"rdi-date field-wrapper",g:1}],f:[{t:7,e:"input",m:[{n:"rdi-reg",t:71,f:{r:[],s:'["node"]'}},{n:"rdi-date",t:71,f:{r:["rdi.opts"],s:"[_0]"}},{n:"class-rdi-date",t:13},{t:8,r:"extra-attributes"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rdi-x",g:1},{n:["click"],t:70,f:{r:["@context"],s:'[(_0).set("rdi.val",null)]'}},{n:"title",f:"Clear",t:13,g:1}],f:["×"]}],n:50,x:{r:["rdi.opts.null","rdi.val"],s:"_0&&_1!==null"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rdi-pop",g:1},{n:"rdi-pop",t:71,f:{r:["rdi.node","rdi.tail"],s:'[{path:"rdi.popped",node:_0,tail:_1}]'}},{n:["click"],t:70,f:{r:[],s:"[false,false]"}},{n:"title",f:"Select from calendar",t:13,g:1}],f:[{t:7,e:"svg",m:[{n:"rdi-reg",t:71,f:{r:[],s:'["tail"]'}},{n:"x",f:"0px",t:13,g:1},{n:"y",f:"0px",t:13,g:1},{n:"viewBox",f:"0 0 48 48",t:13,g:1},{n:"xml:space",f:"preserve",t:13}],f:[{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.5;fill:none;stroke-width:1;",g:1},{n:"y",f:"1",t:13,g:1},{n:"x",f:"1",t:13,g:1},{n:"height",f:"46",t:13,g:1},{n:"width",f:"46",t:13,g:1}]}," ",{t:7,e:"rect",m:[{n:"y",f:"1",t:13,g:1},{n:"x",f:"1",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"46",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.8;stroke:none;",g:1},{t:13,n:"class",f:"rdi-today",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}]}]}]}," ",{t:7,e:"rdi-pop",m:[{n:"popped",t:13,f:[{t:2,r:"rdi.popped"}]},{n:"tail",f:0,t:13},{n:"align",f:"end",t:13,g:1}],f:[{t:7,e:"rdi-picker",m:[{n:["init"],t:70,f:{r:["@context","rdi.val"],s:'[(_0).component.set("target",_1)]'}},{n:"date",t:13,f:[{t:2,r:"rdi.val"}]}]}]}],e:{'["node"]':function(){return["node"]},"[_0]":function(t){return[t]},'[(_0).set("rdi.val",null)]':function(t){return[t.set("rdi.val",null)]},"_0&&_1!==null":function(t,e){return t&&null!==e},'[{path:"rdi.popped",node:_0,tail:_1}]':function(t,e){return[{path:"rdi.popped",node:t,tail:e}]},"[false,false]":function(){return[!1,!1]},'["tail"]':function(){return["tail"]},'[(_0).component.set("target",_1)]':function(t,e){return[t.component.set("target",e)]}}}),{update:function(){K(t)}}},{css:function(t){return[function(t){return".rdi-date {\n position: relative;\n display: inline-block;\n }\n \n .rdi-date input.rdi-date {\n width: 100%;\n box-sizing: border-box;\n }\n \n .rdi-x {\n position: absolute;\n right: 2em;\n top: 0.025em;\n cursor: pointer;\n }\n \n .rdi-pop {\n position: absolute;\n display: flex;\n justify-content: space-around;\n align-items: flex-end;\n flex-direction: column;\n right: 0.5em;\n height: 100%;\n top: 0;\n cursor: pointer;\n }\n \n .rdi-pop > svg {\n height: 48px;\n max-height: 60%;\n fill: "+(t("raui.dateInput.primary.fg")||t("raui.primary.fg")||"#222")+";\n }\n \n .rdi-today {\n fill: "+(t("raui.dateInput.primary.fga")||t("raui.primary.fga")||"#07e")+";\n }"}.call(this,t)].join(" ")},cssId:"rdi",noCssTransform:!0,attributes:["value","null","lazy","mask","string","min","max"]});t.DateInput=U,t.default=function(t){return void 0===t&&(t={}),function(e){var n,r=e.instance;r.components["rdi-picker"]=l,r.components["rdi-pop"]=_,(void 0===(n={name:"rdi-pop"})&&(n={}),function(t){t.instance.decorators[n.name||"pop"]=function(t,e,r){if(void 0===r&&(r={}),!e)return{teardown:w};"string"==typeof e?r.path=e:"object"==typeof e&&(r=e);var i,a,o=this.getContext(t);function l(n){if("mouseover"!==n.type||!o.get(e)){if("click"!==n.type||!a||i){var l=h,s=v;"function"==typeof(h=r.node||t)&&(h=h()),h=h||t,"function"==typeof(v=r.tail)&&(v=v()),o.toggle(r.path),h=l,v=s}a&&"click"===n.type&&(i=o.observeOnce(r.path,function(){i=null}))}}function s(t){i||o.set(r.path,!1)}return("click"in r?r.click:!1!==n.click)&&o.listen("click",l),("hover"in r?r.hover:n.hover)&&(a=1,o.listen("mouseover",l),o.listen("mouseout",s)),{teardown:function(){o.unlisten("click",l),a&&(o.unlisten("mouseover",l),o.unlisten("mouseout",s),i&&i.cancel())}}}})({instance:r}),C({name:"rdi-date"})({instance:r}),r.partials[t.name||"date-input"]=U,r.decorators["rdi-reg"]=function(t,e){return this.getContext(t).set("rdi."+e,function(){return t}),{teardown:function(){}}}}},Object.defineProperty(t,"__esModule",{value:!0})}); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],e):e(t.RMDateInput={},t.Ractive)}(this,function(t,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var n=function(){try{var t=navigator.language||navigator.browserLanguage||navigator.languages[0]||"en";return[[0,1,2,3,4,5,6,7,8,9,10,11].map(function(e){return new Date(2006,e,1).toLocaleString(t,{month:"long"})}),[1,2,3,4,5,6,7].map(function(e){return new Date(2006,0,e).toLocaleString(t,{weekday:"long"})})]}catch(t){return[["January","February","March","April","May","June","July","August","September","October","November","December"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]]}}(),r=n[0],i=n[1],a=i.map(function(t){return t[0]}).concat(i.map(function(t){return t[0].toUpperCase()})),o=r.map(function(t){return t.substr(0,3)}),l=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.month=function(t,e){void 0===e&&(e=0);var n,r=t||new Date;if(!(r instanceof Date))return{};isNaN(r)&&(r=new Date),e&&(r=new Date(r.getFullYear(),r.getMonth()+e,r.getDate()));try{n=+this.get("firstDay")}catch(t){}("number"!=typeof n||isNaN(n))&&(n=0),n>6&&(n=0);for(var i=new Date(r.getFullYear(),r.getMonth(),0),o=new Date(r.getFullYear(),r.getMonth()+1,0).getDate(),l=new Date(r.getFullYear(),r.getMonth()+1,1),s=new Date(r.getFullYear(),r.getMonth(),1).getDay(),f=[],c=f[0]=[],u=0;u<7;u++)f[0].unshift({y:i.getFullYear(),m:i.getMonth(),d:i.getDate()-u}),f[0].push({y:r.getFullYear(),m:r.getMonth(),d:u+1});f[0]=n<=s?f[0].slice(7-(s-n),14-(s-n)):f[0].slice(n-s,7+n-s),1===f[0][0].d&&f.unshift(c.slice(0,7));for(var p=f[f.length-1][f[f.length-1].length-1].d,d=f.length;d<5;d++){f[d]=[];for(var g=0;g<7&&p+1<=o;g++)f[d].push({y:r.getFullYear(),m:r.getMonth(),d:++p});if(f[d].length<7){for(var h=7-f[d].length,v=1;v<=h;v++)f[d].push({y:l.getFullYear(),m:l.getMonth(),d:v});f[d+1]=[];for(var m=0,y=h+1;m<7;m++,y++)f[d+1].push({y:l.getFullYear(),m:l.getMonth(),d:y})}}if(!f[5]){for(f[5]=[];p<o;)f[5].push({y:r.getFullYear(),m:r.getMonth(),d:++p});for(var b=1;b<8;b++)f[5].push({y:l.getFullYear(),m:l.getMonth(),d:b});f[5]=f[5].slice(0,7)}return{days:a.slice(n,n+7),weeks:f,year:r.getFullYear(),month:r.getMonth(),currentYear:(new Date).getFullYear()}},e.prototype.year=function(t,e){void 0===e&&(e=0);var n=t||new Date;if(!(n instanceof Date))return{};e&&(n=new Date(n.getFullYear()+e,n.getMonth(),n.getDate()));for(var r=[],i=0;i<4;i++){r.push([]);for(var a=0;a<3;a++)r[i].push({m:3*i+a,y:n.getFullYear()})}return{year:n.getFullYear(),months:r}},e.prototype.decade=function(t,e){void 0===e&&(e=0);var n=t||new Date;if(!(n instanceof Date))return{};e&&(n=new Date(n.getFullYear()+10*e,n.getMonth(),n.getDate()));for(var r=10*Math.floor(n.getFullYear()/10),i=r-1,a=[],o=0;o<4;o++){a.push([]);for(var l=0;l<3;l++)a[o].push({y:i+3*o+l})}return{start:r,end:r+9,years:a}},e.prototype.monthName=function(t){return r[t]},e.prototype.shortMonthName=function(t){return o[t]},e.prototype.dayName=function(t){return i[t]},e.prototype.select=function(t){if(t&&t instanceof Date)this.set("date",t);else{var e=this.get("safeCurrent");t&&this.set("date",new Date(t.y||e.getFullYear(),"number"==typeof t.m?t.m:e.getMonth(),t.d||e.getDate()));var n=this.get("mode");"year"===n?this.set("mode","months"):"months"===n&&this.set("mode","month"),this.set("target",this.get("date"))}},e.prototype.isCurrent=function(t){var e=this.get("safeCurrent");return!!e&&(t&&t.y===e.getFullYear()&&(null==t.m||t.m===e.getMonth())&&(null==t.d||t.d===e.getDate()))},e.prototype.next=function(){var t=this.get("safeTarget"),e=this.get("mode");"month"===e&&this.set("target",new Date(t.getFullYear(),t.getMonth()+1,1)),"months"===e&&this.set("target",new Date(t.getFullYear()+1,t.getMonth(),1)),"year"===e&&this.set("target",new Date(t.getFullYear()+10,t.getMonth(),1))},e.prototype.prev=function(){var t=this.get("safeTarget"),e=this.get("mode");"month"===e&&this.set("target",new Date(t.getFullYear(),t.getMonth()-1,1)),"months"===e&&this.set("target",new Date(t.getFullYear()-1,t.getMonth(),1)),"year"===e&&this.set("target",new Date(t.getFullYear()-10,t.getMonth(),1))},e.prototype.today=function(){this.set("date",new Date),this.set("target",this.get("date"))},e}(e);e.extendWith(l,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal",g:1}],f:[{t:4,f:[{t:4,f:[{t:19,f:[{t:8,r:"~/mode"}],n:54,z:[{n:"left",x:{x:{r:["@index"],s:"_0===0"}}},{n:"right",x:{x:{r:["@last","@index"],s:"_0===_1"}}}]}],n:52,z:[{n:"offset",x:{r:"."}}],r:"~/padding"}],n:50,r:"~/padding"},{t:4,f:[{t:19,f:[{t:8,r:"~/mode"}],n:54,z:[{n:"offset",x:{x:{r:[],s:"0"}}},{n:"left",x:{x:{r:[],s:"true"}}},{n:"right",x:{x:{r:[],s:"true"}}}]}],n:51,l:1}]}],e:{0:function(){return 0},"_0===0":function(t){return 0===t},"_0===_1":function(t,e){return t===e},true:function(){return!0},"[_0.prev(),false]":function(t){return[t.prev(),!1]},'[_0.set("mode","month"),false]':function(t){return[t.set("mode","month"),!1]},"[_0.next(),false]":function(t){return[t.next(),!1]},"_1>_0||_1<_2":function(t,e,n){return e>t||e<n},"_0.isCurrent(_1)":function(t,e){return t.isCurrent(e)},"[_0.select(_1),false]":function(t,e){return[t.select(e),!1]},"_0.decade(_1,_2)":function(t,e,n){return t.decade(e,n)},'[_0.set("mode","year"),false]':function(t){return[t.set("mode","year"),!1]},"_0.shortMonthName(_1)":function(t,e){return t.shortMonthName(e)},"_0.year(_1,_2)":function(t,e,n){return t.year(e,n)},'[_0.set("mode","months"),false]':function(t){return[t.set("mode","months"),!1]},"_0.monthName(_1)":function(t,e){return t.monthName(e)},"_0!==_1":function(t,e){return t!==e},"[_0.select(_1)]":function(t,e){return[t.select(e)]},"_0.month(_1,_2)":function(t,e,n){return t.month(e,n)}},p:{year:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","month"),false]'}}],f:[{t:2,r:".start"}," - ",{t:2,r:".end"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:19,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-decade",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-row",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-pick",g:1},{n:"class-rcal-off-day",t:13,f:[{t:2,x:{r:["year.end",".y","year.start"],s:"_1>_0||_1<_2"}}]},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1),false]"}}],f:[{t:2,r:".y"}]}],n:52,r:"."}]}],n:52,r:".years"}]}],n:54,z:[{n:"year",x:{r:"."}}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.decade(_1,_2)"}}],months:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","year"),false]'}}],f:[{t:2,r:".year"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-year",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-row",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-inner-pick",g:1},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1),false]"}}],f:[{t:2,x:{r:["@this",".m"],s:"_0.shortMonthName(_1)"}}]}],n:52,r:"."}]}],n:52,r:".months"}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.year(_1,_2)"}}],month:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-wrapper",g:1},{n:"class-rcal-pad",t:13,f:[{t:2,r:"~/pad"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-outer",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-block-header",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.prev(),false]"}}],n:50,r:"left"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-left",g:1}]}],n:50,r:"left"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-title",g:1},{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("mode","months"),false]'}}],f:[{t:2,x:{r:["@this",".month"],s:"_0.monthName(_1)"}},{t:4,f:[", ",{t:2,r:".year"}],n:50,x:{r:[".currentYear",".year"],s:"_0!==_1"}}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-click rcal-arrow",g:1},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:"[_0.next(),false]"}}],n:50,r:"right"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-right",g:1}]}],n:50,r:"right"}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-month",g:1}],f:[{t:19,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-week rcal-week-header",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-day rcal-day-header",g:1}],f:[{t:2,r:"."}]}],n:52,r:".days"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-week",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rcal-day",g:1},{n:"class-rcal-off-day",t:13,f:[{t:2,x:{r:[".m","month.month"],s:"_0!==_1"}}]},{n:"class-rcal-current",t:13,f:[{t:2,x:{r:["@this","."],s:"_0.isCurrent(_1)"}}]},{n:["click"],t:70,f:{r:["@this","."],s:"[_0.select(_1)]"}}],f:[{t:2,r:".d"}]}],n:52,r:"."}]}],n:52,r:".weeks"}],n:54,z:[{n:"month",x:{r:"."}}]}]}]}]}],n:54,x:{r:["@this","~/safeTarget","offset"],s:"_0.month(_1,_2)"}}]}},css:function(t){return[function(t){return".rcal-wrapper {\n display: flex;\n flex-direction: column;\n width: 15em;\n height: 17em;\n }\n \n .rcal-pad {\n padding: 0.5em;\n }\n \n .rcal-block-outer {\n border: 1px solid "+(t("raui.datePicker.primary.bga")||t("raui.primary.bga")||"#f4f4f4")+";\n display: flex;\n flex-direction: column;\n flex-grow: 1;\n }\n \n .rcal-block-header {\n text-align: center;\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n cursor: default;\n display: flex;\n justify-content: space-between;\n line-height: 2em;\n height: 2em;\n align-items: center;\n }\n \n .rcal-arrow {\n width: 2em;\n }\n .rcal-title {\n flex-grow: 1;\n }\n \n .rcal-click {\n cursor: pointer;\n }\n \n .rcal-left, .rcal-right {\n height: 0.8em;\n display: inline-block;\n box-sizing: border-box;\n border: 0.4em solid transparent;\n cursor: pointer;\n }\n .rcal-left {\n border-right-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n }\n .rcal-right {\n border-left-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n }\n \n .rcal-month, .rcal-year, .rcal-decade {\n display: flex;\n flex-direction: column;\n background-color: "+(t("raui.datePicker.primary.bga")||t("raui.primary.bga")||"#f4f4f4")+";\n justify-content: space-between;\n flex-grow: 1;\n }\n .rcal-year, .rcal-decade {\n justify-content: space-around;\n }\n \n .rcal-week {\n height: 2em;\n display: flex;\n justify-content: space-between;\n }\n \n .rcal-inner-row {\n height: 2em;\n display: flex;\n justify-content: space-around;\n }\n \n .rcal-inner-pick {\n background-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n width: 3em;\n height: 2em;\n line-height: 2em;\n text-align: center;\n cursor: pointer;\n }\n \n .rcal-week-header {\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n }\n \n .rcal-day {\n background-color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n width: 2em;\n height: 2em;\n text-align: center;\n line-height: 2em;\n cursor: pointer;\n }\n \n .rcal-day-header {\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n background-color: "+(t("raui.datePicker.primary.fga")||t("raui.primary.fga")||"#07e")+";\n cursor: default;\n }\n \n .rcal-off-day {\n background-color: "+(t("raui.datePicker.primary.bc")||t("raui.primary.bc")||"#ccc")+";\n }\n \n .rcal-current {\n color: "+(t("raui.datePicker.primary.bg")||t("raui.primary.bg")||"#fff")+";\n background-color: "+(t("raui.datePicker.primary.fg")||t("raui.primary.fg")||"#222")+";\n }\n "}.call(this,t)].join(" ")},noCssTransform:!0,data:function(){return{mode:"month",target:new Date}},computed:{safeCurrent:function(){var t=this.get("date");if("string"==typeof t)try{t=new Date(t)}catch(t){}return t&&t instanceof Date&&!isNaN(t)?t:new Date},safeTarget:function(){var t=this.get("target");if(t||(t=this.get("date")),"string"==typeof t)try{t=new Date(t)}catch(t){}return t&&t instanceof Date&&!isNaN(t)?t:new Date}}});var s="undefined"!=typeof window?window:null;function f(t,e,n){if(s&&s.Ractive&&"object"==typeof s.Ractive[e]){var r=document.currentScript;if(r||(r=(r=document.querySelectorAll("script"))[r.length-1]),r){var i=r.getAttribute("data-alias");i&&(i=(i=i.split("&")).reduce(function(t,e){var n=e.split("="),r=n[0],i=n[1];return t[r]=i,t},{})),Ractive[e][i&&i[t]||t]=n}}}function c(t,e){void 0===e&&(e={});var n=t.processParams(e,{duration:400,easing:"easeInOut"});e.dir=e.dir||!1;var r=e.distance||"20px",i=e.scale||"0.9",a="above"===e.dir?"translateY("+r+")":"left"===e.dir?"translateX("+r+")":"right"===e.dir?"translateX(-"+r+")":"translateY(-"+r+")";return t.isIntro||n.intro?(t.setStyle("opacity",0),t.setStyle("transform","scale("+i+") "+a),t.animateStyle({opacity:1,transform:"none"},n)):(t.setStyle("opacity",1),t.setStyle("transform","none"),t.animateStyle({opacity:0,transform:"scale("+i+") "+a},n))}function u(t){return void 0===t&&(t={}),function(e){e.instance.transitions[t.name||"pop"]=c}}function p(t,e){var n=!1,r=!1;function i(n){for(var r=n.target;r;){if(r===t)return;if(!r.parentNode&&r!==document)return;r=r.parentNode}e(n)}return setTimeout(function(){n=!0,r||(document.body.addEventListener("click",i,{capture:!0}),document.body.addEventListener("touchstop",i,{capture:!0}))}),{teardown:function(){r=!0,n&&(document.body.removeEventListener("click",i,{capture:!0}),document.body.removeEventListener("touchstop",i,{capture:!0}))}}}function d(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"});return t.isIntro||n.intro?(t.setStyle("opacity",0),t.animateStyle("opacity",1,n)):(t.setStyle("opacity",1),t.animateStyle("opacity",0,n))}function g(t){return void 0===t&&(t={}),function(e){e.instance.transitions[t.name||"fade"]=d}}f("pop","transitions",c),f("fade","transitions",d);var h,v,m,y,b={v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-wrapper",g:1},{n:"class-rpop-with-tail",t:13,f:[{t:2,r:"position.tail"}]},{n:"class",f:["rpop-",{t:2,x:{r:["where"],s:'_0||"below"'}}," rpop-align-",{t:2,x:{r:["align"],s:'_0||"middle"'}}],t:13},{t:4,f:[{n:"style-top",f:[{t:2,r:"position.popTop"},"px"],t:13},{n:"style-left",f:[{t:2,r:"position.popLeft"},"px"],t:13}],n:50,r:"position"},{t:4,f:[{t:4,f:[{n:"style-top",f:[{t:2,r:"top"}],t:13}],n:50,r:"top"},{t:4,f:[{n:"style-left",f:[{t:2,r:"left"}],t:13}],n:50,r:"left"}],n:51,l:1},{n:"pop",t:72,f:{r:["where"],s:'[{dir:_0||"below"}]'},v:"t2"},{n:"cleanup",t:71},{t:4,f:[{n:["click"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:50,r:"clickClose"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this"],s:'[_0.set("popped",false)]'}}],n:51,r:"noClickout"},{t:16,r:"extra-attributes"}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom","position.vert"],s:"_0+(_1?1:0)"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight","position.vert"],s:"_0+(_1?0:1)"}},"px"],t:13}],n:50,r:"position.tailRight"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-tail-outer",g:1},{t:4,f:[{n:"style-top",f:[{t:2,x:{r:["position.tailTop"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailTop"},{t:4,f:[{n:"style-bottom",f:[{t:2,x:{r:["position.tailBottom"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailBottom"},{t:4,f:[{n:"style-left",f:[{t:2,x:{r:["position.tailLeft"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailLeft"},{t:4,f:[{n:"style-right",f:[{t:2,x:{r:["position.tailRight"],s:"_0-2"}},"px"],t:13}],n:50,r:"position.tailRight"}]}],n:50,r:"~/tail"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1}],f:[{t:16,r:"content"}]}]}],n:50,r:"__popped"}],e:{'_0||"below"':function(t){return t||"below"},'_0||"middle"':function(t){return t||"middle"},'[{dir:_0||"below"}]':function(t){return[{dir:t||"below"}]},'[_0.set("popped",false)]':function(t){return[t.set("popped",!1)]},"_0+(_1?1:0)":function(t,e){return t+(e?1:0)},"_0+(_1?0:1)":function(t,e){return t+(e?0:1)},"_0-2":function(t){return t-2},"[{delay:200}]":function(){return[{delay:200}]},"[_0===_1&&_2.done(),true]":function(t,e,n){return[t===e&&n.done(),!0]},"[_0.done()]":function(t){return[t.done()]},true:function(){return!0}},p:{modal:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop-modal",g:1},{n:"fade",t:72,v:"t1"},{n:"fade",t:72,f:{r:[],s:"[{delay:200}]"},v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["@node","@event.target","."],s:"[_0===_1&&_2.done(),true]"}}],n:51,r:".noClickout"}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rpop",g:1},{n:"pop",t:72,f:{r:[],s:"[{delay:200}]"},v:"t1"},{n:"pop",t:72,v:"t2"},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.done()]"}}],n:50,r:".clickClose"},{t:8,r:".attrs",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}],f:[{t:8,r:".content",c:{r:".context"},z:[{n:"inModal",x:{x:{r:[],s:"true"}}}]}]}]}],n:54,r:"contents.0"}],n:50,r:"contents.length"}]}};function w(){}var x,_=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.position=function(t){var e=t||this.source,n=this.get("popped");if(e&&n){var r=this.find("div");if(e&&r&&r.offsetParent){var i=r.offsetParent,a=i.getBoundingClientRect(),o=r.getBoundingClientRect(),l=e.getBoundingClientRect(),s=this.get("where")||"below",f=this.get("align")||"middle",c=this.get("tail"),u="above"===s||"below"===s,p=this.get("fit"),d=this.get("gap"),g="above"===s||"below"===s?0:"left"===s?-o.width-d:l.width+d,h="left"===s||"right"===s?-l.height:"above"===s?-l.height-o.height-d:d;"middle"===f?"below"===s||"above"===s?g-=(o.width-l.width)/2:"left"!==s&&"right"!==s||(h-=(o.height-l.height)/2):"end"===f&&("below"===s||"above"===s?g+=l.width-o.width:"left"!==s&&"right"!==s||(h+=l.height-o.height));var v={popTop:l.bottom-a.top+h,popLeft:l.left-a.left+g,tail:c,vert:"above"===s||"below"===s};if(i.scrollTop&&(v.popTop+=i.scrollTop),i.scrollLeft&&(v.popLeft+=i.scrollLeft),c){"above"===s?v.tailBottom=-10:"below"===s?v.tailTop=-10:"left"===s?v.tailRight=-10:"right"===s&&(v.tailLeft=-10);var m=this.tailSource?this.tailSource.getBoundingClientRect():l;"start"===f?u?v.tailLeft=Math.floor(m.width/2)-10:v.tailTop=Math.floor(m.height/2)-10:"end"===f?u?v.tailRight=Math.floor(m.width/2)-10:v.tailBottom=Math.floor(m.height/2)-10:"middle"===f&&(u?v.tailLeft=Math.floor(m.width/2)-10:v.tailTop=Math.floor(m.height/2)-10),m!==l?u?(null!=v.tailLeft&&(v.tailLeft+=m.left-l.left),null!=v.tailRight&&(v.tailRight+=l.right-m.right)):(null!=v.tailTop&&(v.tailTop+=m.top-l.top),null!=v.tailBottom&&(v.tailBottom+=l.bottom-m.bottom)):"middle"===f&&(u?(null!=v.tailLeft&&(v.tailLeft+=m.left-(v.popLeft+a.left)),null!=v.tailRight&&(v.tailRight+=v.popLeft+a.left+o.width-m.right)):(null!=v.tailTop&&(v.tailTop+=m.top-(v.popTop+a.top)),null!=v.tailBottom&&(v.tailBottom+=v.popTop+a.top+o.height-m.bottom)))}if(p){var y=i;if(this.get("offsets"))for(var b=this.get("offsets");b--;)y=y.offsetParent;var w=i.scrollWidth,x=i.scrollHeight;if(v.popLeft+o.width>w){var _=v.popLeft-(w-o.width);v.popLeft-=_,u&&v.tailLeft&&(v.tailLeft+=_),u&&v.tailRight&&(v.tailRight-=_),c&&!u&&(v.tail=!1)}if(v.popLeft<0){var k=-1*v.popLeft;v.popLeft+=k,u&&v.tailLeft&&(v.tailLeft-=k),u&&v.tailRight&&(v.tailRight+=k),c&&!u&&(v.tail=!1)}if(v.popTop+o.height>x){var D=v.popTop-(x-o.height);v.popTop-=D,!u&&v.tailTop&&(v.tailTop+=D),!u&&v.tailBottom&&(v.tailBottom-=D),c&&u&&(v.tail=!1)}if(v.popTop<0){var M=-1*v.popTop;v.popTop+=M,!u&&v.tailTop&&(v.tailTop-=M),!u&&v.tailBottom&&(v.tailBottom+=M),c&&u&&(v.tail=!1)}}this.set("position",v)}else this.set("position",null)}},e.prototype.show=function(t){this.source=t,this.set("popped",!0)},e.prototype.hide=function(){this.set("popped",!1)},e}(e);e.extendWith(_,{attributes:["popped","tail","where","align","top","left","fit","clickClose","noClickout","gap","offsets"],use:[u(),(void 0===x&&(x={}),function(t){t.instance.events[x.name||"clickout"]=p}),g()],template:b,css:function(t){return[function(t){var e=Object.assign({},t("raui.primary"),t("raui.pop.primary")),n=(t("raui.themes")||[]).slice();return(t("raui.pop.themes")||[]).forEach(function(t){~n.indexOf(t)||n.push(t)}),"\n .rpop-wrapper {\n position: absolute;\n display: inline-block;\n z-index: 21;\n transition-property: top, left, padding;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-with-tail.rpop-above {\n padding-bottom: 10px;\n }\n .rpop-with-tail.rpop-below {\n padding-top: 10px;\n }\n .rpop-with-tail.rpop-left {\n padding-right: 10px;\n }\n .rpop-with-tail.rpop-right {\n padding-left: 10px;\n }\n \n .rpop {\n position: relative;\n box-shadow: 0 1px 4px 0 rgba(0,0,0,0.24);\n border: 1px solid #ccc;\n border-radius: 0.2em;\n background-color: "+(e.bg||"#fff")+";\n color: "+(e.fg||"#222")+";\n padding: 0.5em;\n z-index: 2;\n }\n \n .rpop-modal {\n position: fixed;\n display: flex;\n z-index: 20;\n background-color: rgba(0, 0, 0, 0.2);\n align-items: center;\n justify-content: center;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n padding: 1em;\n overflow: auto;\n }\n \n .rpop-tail, .rpop-tail-outer {\n z-index: 3;\n width: 0;\n height: 0;\n position: absolute;\n border-style: solid;\n border-width: 10px;\n border-color: transparent;\n transition-property: top, left, bottom, right, border-color;\n transition-timing-function: ease-in-out;\n transition-duration: 0.3s;\n }\n .rpop-tail-outer {\n z-index: 1;\n border-width: 12px;\n border-color: transparent;\n }\n \n .rpop-below .rpop-tail {\n border-bottom-color: "+(e.bg||"#fff")+";\n }\n .rpop-below .rpop-tail-outer {\n border-bottom-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-above .rpop-tail {\n border-top-color: "+(e.bg||"#fff")+";\n }\n .rpop-above .rpop-tail-outer {\n border-top-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-left .rpop-tail {\n border-left-color: "+(e.bg||"#fff")+";\n }\n .rpop-left .rpop-tail-outer {\n border-left-color: "+(e.bc||"#ccc")+";\n }\n \n .rpop-right .rpop-tail {\n border-right-color: "+(e.bg||"#fff")+";\n }\n .rpop-right .rpop-tail-outer {\n border-right-color: "+(e.bc||"#ccc")+";\n }\n "+n.map(function(e){var n=Object.assign({},t("raui.primary"),t("raui.pop.primary"),t("raui."+e),t("raui.pop."+e));return"\n ."+e+" .rpop {\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n }\n \n ."+e+".rpop-below .rpop-tail {\n border-bottom-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-below .rpop-tail-outer {\n border-bottom-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-above .rpop-tail {\n border-top-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-above .rpop-tail-outer {\n border-top-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-left .rpop-tail {\n border-left-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-left .rpop-tail-outer {\n border-left-color: "+(n.bc||"#ccc")+";\n }\n \n ."+e+".rpop-right .rpop-tail {\n border-right-color: "+(n.bg||"#fff")+";\n }\n ."+e+".rpop-right .rpop-tail-outer {\n border-right-color: "+(n.bc||"#ccc")+";\n }\n "})}.call(this,t)].join(" ")},cssId:"rpop",noCssTransform:!0,observe:{popped:function(t){var e=this;t&&(h&&(this.source=h),v&&(this.tailSource=v)),setTimeout(function(){e.get("popped")===t&&e.set("_popped",t)},1)},_popped:{handler:function(t){var e=this;if(t){var n=this.get("@style.raui.pop.mobile");if(n&&window.matchMedia("(max-width: "+n+")").matches){y||(y=new k({target:document.body,append:!0}));var r=this.getContext().getParent(!0);r.isContext=1,this.set("__popped",!1),y.unshift("contents",{content:this.partials.content,context:r,attrs:this.partials["extra-attributes"]||[],clickClose:this.get("clickClose"),noClickout:this.get("noClickout"),done:function(){e.set("popped",!1)}})}else this.set("__popped",!0)}else m?y.shift("contents"):this.set("__popped",!1)},defer:!0},__popped:{handler:function(t){if(t){var e=this.find("div"),n=e,r=n.offsetHeight+n.offsetTop,i=n.offsetWidth+n.offsetLeft,a=n.offsetParent;if(!this.overflows)for(var o=this.overflows={e:[],v:[]};e&&e.style;){if(e===a){if(e.offsetWidth>=i&&e.offsetHeight>=r)break;i+=e.offsetLeft,r+=e.offsetTop,a=e.offsetParent}var l=getComputedStyle(e);if("auto"===l.overflow)break;"hidden"===l.overflow&&(o.e.push(e),o.v.push(e.style.overflow),e.style.overflow="visible"),e=e.parentNode}this.position(),this.transition("pop",n,{intro:!0,dir:this.get("where")||"below"})}else this.source=null,this.tailSource=null},defer:!0},"align where tail fit":{handler:function(){this.position()},defer:!0}},decorators:{cleanup:function(t){var e=this;return{teardown:function(){var t=e.overflows;if(t){e.overflows=null;for(var n=0;n<t.e.length;n++)t.e[n].style.overflow=t.v[n]}}}}},data:function(){return{gap:4}}});var k=function(t){function e(e){t.call(this,e)}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e}(e);e.extendWith(k,{template:{v:b.v,t:b.p.modal},data:function(){return{contents:[]}},use:[u(),g()],observe:{contents:function(t){m=(t||[]).length>0}},on:{init:function(){y?console.warn("More than one PopOver mobile host created."):y=this}}});var D=/[^\d]+/,M=/[^\d_]+/,T="_",S={y:0,M:1,d:2,H:3,m:4,s:5,S:6};function L(t,e,n){void 0===n&&(n="0");for(var r=null==t?"":""+t,i=r.length;i<e;i++)r=n+r;return r}function F(t,e,n){void 0===n&&(n="0");for(var r=null==t?"":""+t,i=r.length;i<e;i++)r+=n;return r}var Y={mask:"yyyy-MM-dd",time:"00:00:00.000",date:function(){var t=new Date;return new Date(t.getFullYear()+"-"+L(t.getMonth()+1,2)+"-"+L(t.getDate(),2)+"T"+Y.time)}};function C(t){void 0===t&&(t={});var e=t.mask||Y.mask,n=(t.time||Y.time,t.date||Y.date);if("function"!=typeof n){var r=n;n=function(){return r}}return function(r){r.instance.decorators[t.name||"date"]=function(r,i,a){void 0===i&&(i={});var o=Object.assign({},t,"string"==typeof i?{value:i}:0,"string"==typeof a?{mask:a}:0,"object"==typeof i?i:0),l=this.getContext(r),s=o.mask||e,f={observers:[],listeners:[]};if("INPUT"!==r.tagName)return console.warn("Attempted to add a date decorator a "+r.tagName),H;if(!s)return H;for(var c,u=[],p=0;c=E.exec(s);){var d={mask:c[0],type:c[0][0],length:c[0].length,start:c.index,end:c.index+c[0].length,chunk:u.length,prefix:s.substring(p,c.index),groups:u,value:null,display:F("",c[0].length,T)};p=d.end,u.push(d)}if(u.suffix=s.substring(u[u.length-1].end),u.last=null,u.slice(1).find(function(t){return!t.prefix}))return console.warn("Attempted to add a date decorator missing interstitial between fields '"+s+"'"),H;function g(t){if(null===u.value&&null===u.last||+u.value==+u.last)return 1;if(!t||!1===o.lazy){if(!1===o.null&&null===u.value)return P(u,u.last),1;o.min&&u.value<o.min?(P(u,o.min),j(u,r)):o.max&&u.value>o.max&&(P(u,o.max),j(u,r)),u.last=u.value,"string"==typeof o.value&&(f.observers.forEach(function(t){return t.silence()}),l.set(o.value,u.value),f.observers.forEach(function(t){return t.resume()}))}}o.min>o.max&&delete o.min,"string"==typeof o.value?f.observers.push(l.observe(o.value,function(t){t||!1!==o.null||(t=n()),u.value=t,P(u,t),u.last=t,j(u,r),(o.min&&t<o.min||o.max&&t>o.max)&&(u.last=null,setTimeout(g))},{defer:!0})):((o.date||!1===o.null)&&(u.value=J(o.date||n())),j(u,r)),f.listeners.push(l.listen("input",function(){var t=r.selectionStart,e=r.value;!function(t,e,n){var r=e.value,i=e.selectionStart,a=O(t,i),o=0,l=t[o],s=t[o+1];t.forEach(function(t){return t.input=""});for(var f=0;f<r.length;f++)s&&r[f]===s.prefix[0]&&(a!==l||l.input.length>=l.length||r.length-f<n.length-l.end+(l.length-l.input.length))?(s.prefix.length>1&&(f+=s.prefix.length-1),r[f+1]===s.prefix[0]&&(f+=s.prefix.length),l=t[++o],s=t[o+1]):l.input+=r[f]}(u,r,s);var n=O(u,t),i=R(u,n,t);if(N(u,g,!0),j(u,r),n&&(e.length>=s.length&&t===n.end||i)&&n!==u[u.length-1]){var a=u[u.indexOf(n)+1];r.setSelectionRange(a.start,a.end)}else r.setSelectionRange(t,t)})),f.listeners.push(l.listen("blur",function(){g(!1)&&P(u,u.value),j(u,r)}));var h=function(){var t;t=r.selectionStart===r.value.length&&r.selectionEnd===r.value.length?u[0]:O(u,r.selectionStart),document.activeElement===r&&r.setSelectionRange(t.start,t.end)};return f.listeners.push(l.listen("click",h)),f.listeners.push(l.listen("focus",h)),f.listeners.push(l.listen("keydown",function(t){switch(t.key){case"Enter":case"Tab":var e=O(u,r.selectionStart),n=u.indexOf(e);R(u,e,r.selectionStart,!0)&&(j(u,r),N(u,g,t.shiftKey&&n>0||!t.shiftKey&&n+1<u.length)),t.shiftKey&&n>0?(r.setSelectionRange(u[n-1].start,u[n-1].end),t.preventDefault(),t.stopPropagation()):!t.shiftKey&&n+1<u.length&&(r.setSelectionRange(u[n+1].start,u[n+1].end),t.preventDefault(),t.stopPropagation());break;case"ArrowUp":case"ArrowDown":var i=[r.selectionStart,r.selectionEnd],a=i[0],o=i[1],l=O(u,a);null===l.value&&(l.value=1),function(t,e){switch(t.type){case"y":t.value=t.value+(e?-1:1);break;case"M":t.value=e?t.value<1?11:t.value-1:t.value>10?0:t.value+1;break;case"d":var n=t.groups,r=I(new Date((n.find(function(t){return"y"===t.type})||{value:1}).value,(n.find(function(t){return"M"===t.type})||{value:1}).value));t.value=e?t.value<2?r:t.value-1:t.value+1>r?1:t.value+1;break;case"H":t.value=e?t.value<1?23:t.value-1:t.value>22?0:t.value+1;break;case"h":t.value=e?t.value<1?12:t.value-1:t.value>11?1:t.value+1;break;case"m":case"s":t.value=e?t.value<1?59:t.value-1:t.value>58?0:t.value+1;break;case"S":t.value=e?t.value<1?999:t.value-1:t.value>998?0:t.value+1}}(l,"ArrowDown"===t.key),l.input=l.display=B(l),N(u,g,!0),j(u,r),t.preventDefault(),t.stopPropagation(),r.setSelectionRange(a,o)}})),{teardown:function(){f.observers.forEach(function(t){return t.cancel()}),f.listeners.forEach(function(t){return t.cancel()})}}}}}function R(t,e,n,r){void 0===n&&(n=0),void 0===r&&(r=!1);for(var i=!1,a=0;a<t.length;a++){var o=t[a],l=o.input.replace(D,""),s=t[a+1]&&t[a+1].prefix&&M.test(o.input);if(l.length>o.length&&o===e){var f=l.length-e.length;l=l.substr(0,n-e.start)+l.substr(n-e.start+f)}else l=l.substr(0,o.length);if(o.input=l,""===l)o.value=null,o.display=B(o);else if(o!==e)o.value=+l,"M"===o.type&&o.value--,o.display=B(o);else if("M"===o.type&&+l>1||"d"===o.type&&+l>3||"H"===o.type&&+l>2||("m"===o.type||"s"===o.type)&&+l>6)o.value=+l,"M"===o.type&&o.value--,o.display=L(l,o.length),i=!0;else if("y"===o.type&&2===l.length&&(s||r)){var c=(new Date).getFullYear(),u=100*Math.floor(c/100),p=Math.abs(c-(u+ +l))<20?u+ +l:u-100+ +l;o.value=p,o.input=o.display=L(p,o.length),i=!0}else o.display=F(l,o.length,T),o.value=+l}return i}function P(t,e){var n=(e=t.value=e&&J(e))?[e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()]:[null,null,null,null,null,null,null];t.forEach(function(t){t.value=n[S[t.type]],t.input=t.display=B(t)})}function N(t,e,n){var r=t.value||W,i=[r.getFullYear(),r.getMonth(),r.getDate(),r.getHours(),r.getMinutes(),r.getSeconds(),r.getMilliseconds()];if(t.forEach(function(t){var e=t.value;null!==e&&"M"===t.type?e<0?e=0:e>11&&(e=11):null===e||"m"!==t.type&&"s"!==t.type?null!==e&&"H"===t.type?e<0?e=0:e>23&&(e=23):null!==e&&"h"===t.type&&(e<1?e=1:e>12&&(e=12)):e<0?e=0:e>59&&(e=59),e!==t.value&&(t.value=e,t.display=B(t)),i[S[t.type]]=t.value}),null!==i[0]&&null!==i[1]&&null!==i[2]){var a=t.find(function(t){return"d"===t.type});if(a)if(i[2]<1)a.value=i[2]=1,a.display=B(a);else{var o=I(new Date(i[0],i[1],1));i[2]>o&&(a.value=i[2]=o,a.display=B(a))}}t.find(function(t){return null===t.value})||0===i[0]||i[1]>11||i[1]<0||0===i[2]?t.value=null:(i.unshift(null),t.value=new(Date.bind.apply(Date,i))),e(n)}function j(t,e){e.value=t.reduce(function(t,e){return t+e.prefix+e.display},"")+t.suffix}function O(t,e){return t.find(function(t){return e>=t.start&&e<=t.end})}function B(t){if(null===t.value)return L("",t.length,T);switch(t.type){case"y":return t.value?t.length<=2?(""+t.value).substr(2,2):""+L(t.value,t.length):L("",t.length,T);case"M":return~t.value?1===t.length?""+(t.value+1):2===t.length?(t.value<9?"0":"")+(t.value+1):3===t.length?z[t.value].substr(0,3):z[t.value]:L("",t.length,T);case"d":return t.value?1===t.length?""+t.value:2===t.length?(t.value<=9?"0":"")+t.value:3===t.length?A[t.groups.value.getDay()].substr(0,3):A[t.groups.value.getDay()]:L("",t.length,T);case"H":case"h":case"m":case"s":return 1===t.length?""+t.value:L(t.value,t.length);case"S":return 1===t.length?""+t.value:L(t.value,3)}}var E=/y+|M+|d+|E+|H+|m+|s+|S+|k+|a+/g,z=["January","February","March","April","May","June","July","August","September","October","November","December"],A=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],H={teardown:function(){}};function I(t){return new Date(new Date(t.getFullYear(),t.getMonth()+1,1)-864e5).getDate()}var W=new Date("0000-01-01T00:00:00");function J(t){var e=t;if("function"==typeof e&&(e=t()),"string"==typeof e)try{e=new Date(e)}catch(t){return defaultDate()}return e instanceof Date?e:W}function K(t){t.strObserver&&t.strObserver.cancel(),t.attributes.value?t.link(t.attributes.value,"rdi.val"):t.unlink("rdi.val"),t.attributes.string&&(t.strObserver=t.observe("rdi.val",function(e){return t.set(t.attributes.string,e?e.toString():"")}));var e={value:"rdi.val"};["null","lazy","mask","min","max","mask"].forEach(function(n){n in t.attributes&&(e[n]=t.attributes[n])}),t.set("rdi.opts",e)}var U=Ractive.macro(function(t){return t.aliasLocal("rdi"),K(t),t.setTemplate({v:4,t:[{t:7,e:"span",m:[{t:13,n:"class",f:"rdi-date field-wrapper",g:1}],f:[{t:7,e:"input",m:[{n:"rdi-reg",t:71,f:{r:[],s:'["node"]'}},{n:"rdi-date",t:71,f:{r:["rdi.opts"],s:"[_0]"}},{n:"class-rdi-date",t:13},{t:8,r:"extra-attributes"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rdi-x",g:1},{n:["click"],t:70,f:{r:["@context"],s:'[(_0).set("rdi.val",null)]'}},{n:"title",f:"Clear",t:13,g:1}],f:["×"]}],n:50,x:{r:["rdi.opts.null","rdi.val"],s:"_0&&_1!==null"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rdi-pop",g:1},{n:"rdi-pop",t:71,f:{r:["rdi.node","rdi.tail"],s:'[{path:"rdi.popped",node:_0,tail:_1}]'}},{n:["click"],t:70,f:{r:[],s:"[false,false]"}},{n:"title",f:"Select from calendar",t:13,g:1}],f:[{t:7,e:"svg",m:[{n:"rdi-reg",t:71,f:{r:[],s:'["tail"]'}},{n:"x",f:"0px",t:13,g:1},{n:"y",f:"0px",t:13,g:1},{n:"viewBox",f:"0 0 48 48",t:13,g:1},{n:"xml:space",f:"preserve",t:13}],f:[{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.5;fill:none;stroke-width:1;",g:1},{n:"y",f:"1",t:13,g:1},{n:"x",f:"1",t:13,g:1},{n:"height",f:"46",t:13,g:1},{n:"width",f:"46",t:13,g:1}]}," ",{t:7,e:"rect",m:[{n:"y",f:"1",t:13,g:1},{n:"x",f:"1",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"46",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.8;stroke:none;",g:1},{t:13,n:"class",f:"rdi-today",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"13",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"24",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"3",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"14",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.2;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"25",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}," ",{t:7,e:"rect",m:[{t:13,n:"style",f:"opacity:0.4;stroke:none;",g:1},{n:"y",f:"35",t:13,g:1},{n:"x",f:"37",t:13,g:1},{n:"height",f:"8",t:13,g:1},{n:"width",f:"8",t:13,g:1}]}]}]}]}," ",{t:7,e:"rdi-pop",m:[{n:"popped",t:13,f:[{t:2,r:"rdi.popped"}]},{n:"tail",f:0,t:13},{n:"align",f:"end",t:13,g:1}],f:[{t:7,e:"rdi-picker",m:[{n:["init"],t:70,f:{r:["@context","rdi.val"],s:'[(_0).component.set("target",_1)]'}},{n:"date",t:13,f:[{t:2,r:"rdi.val"}]}]}]}],e:{'["node"]':function(){return["node"]},"[_0]":function(t){return[t]},'[(_0).set("rdi.val",null)]':function(t){return[t.set("rdi.val",null)]},"_0&&_1!==null":function(t,e){return t&&null!==e},'[{path:"rdi.popped",node:_0,tail:_1}]':function(t,e){return[{path:"rdi.popped",node:t,tail:e}]},"[false,false]":function(){return[!1,!1]},'["tail"]':function(){return["tail"]},'[(_0).component.set("target",_1)]':function(t,e){return[t.component.set("target",e)]}}}),{update:function(){K(t)}}},{css:function(t){return[function(t){return".rdi-date {\n position: relative;\n display: inline-block;\n }\n \n .rdi-date input.rdi-date {\n width: 100%;\n box-sizing: border-box;\n }\n \n .rdi-x {\n position: absolute;\n right: 2em;\n top: 0.025em;\n cursor: pointer;\n }\n \n .rdi-pop {\n position: absolute;\n display: flex;\n justify-content: space-around;\n align-items: flex-end;\n flex-direction: column;\n right: 0.5em;\n height: 100%;\n top: 0;\n cursor: pointer;\n }\n \n .rdi-pop > svg {\n height: 48px;\n max-height: 60%;\n fill: "+(t("raui.dateInput.primary.fg")||t("raui.primary.fg")||"#222")+";\n }\n \n .rdi-today {\n fill: "+(t("raui.dateInput.primary.fga")||t("raui.primary.fga")||"#07e")+";\n }"}.call(this,t)].join(" ")},cssId:"rdi",noCssTransform:!0,attributes:["value","null","lazy","mask","string","min","max"]});t.DateInput=U,t.default=function(t){return void 0===t&&(t={}),function(e){var n,r=e.instance;r.components["rdi-picker"]=l,r.components["rdi-pop"]=_,(void 0===(n={name:"rdi-pop"})&&(n={}),function(t){t.instance.decorators[n.name||"pop"]=function(t,e,r){if(void 0===r&&(r={}),!e)return{teardown:w};"string"==typeof e?r.path=e:"object"==typeof e&&(r=e);var i,a,o=this.getContext(t);function l(n){if("mouseover"!==n.type||!o.get(e)){if("click"!==n.type||!a||i){var l=h,s=v;"function"==typeof(h=r.node||t)&&(h=h()),h=h||t,"function"==typeof(v=r.tail)&&(v=v()),o.toggle(r.path),h=l,v=s}a&&"click"===n.type&&(i=o.observeOnce(r.path,function(){i=null}))}}function s(t){i||o.set(r.path,!1)}return("click"in r?r.click:!1!==n.click)&&o.listen("click",l),("hover"in r?r.hover:n.hover)&&(a=1,o.listen("mouseover",l),o.listen("mouseout",s)),{teardown:function(){o.unlisten("click",l),a&&(o.unlisten("mouseover",l),o.unlisten("mouseout",s),i&&i.cancel())}}}})({instance:r}),C({name:"rdi-date"})({instance:r}),r.partials[t.name||"date-input"]=U,r.decorators["rdi-reg"]=function(t,e){return this.getContext(t).set("rdi."+e,function(){return t}),{teardown:function(){}}}}},Object.defineProperty(t,"__esModule",{value:!0})}); |
@@ -279,3 +279,3 @@ (function (global, factory) { | ||
}); } | ||
if (label) { body.unshift(label.f); } | ||
if (label) { body.unshift.apply(body, Array.isArray(label.f) ? label.f : [label.f]); } | ||
else { body.unshift('\xa0'); } | ||
@@ -282,0 +282,0 @@ |
@@ -1,1 +0,1 @@ | ||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(e.RMForm={},e.Ractive)}(this,function(e,n){"use strict";n=n&&n.hasOwnProperty("default")?n.default:n;var i="undefined"!=typeof window?window:null;function t(e,n,t){if(i&&i.Ractive&&"object"==typeof i.Ractive[n]){var l=document.currentScript;if(l||(l=(l=document.querySelectorAll("script"))[l.length-1]),l){var a=l.getAttribute("data-alias");a&&(a=(a=a.split("&")).reduce(function(e,n){var i=n.split("="),t=i[0],l=i[1];return e[t]=l,e},{})),Ractive[n][a&&a[e]||e]=t}}}function l(e){var n=Object.assign({},e("raui.primary"),e("raui.form.primary")),i=Object.assign({},e("raui.primary.active"),e("raui.form.primary.active")),t=e("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(n.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(n.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(n.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(t?n.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(i.fg||n.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(i.fg||n.fga||"#07e")+";\n "+(t?"":"box-shadow: 0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n 0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+";")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(t?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(n.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(t?n.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(t?"\n border-radius: "+(n.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(t?"":":disabled")+",\n label.field select"+(t?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(t?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(t?"":"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(n.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(n.bc||"#ccc")+",\n -0.0625em 0.0625em "+(n.bc||"#ccc")+",\n 0.0625em -0.0625em "+(n.bc||"#ccc")+",\n -0.0625em -0.0625em "+(n.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n 0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+";\n }")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(n.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(n.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(n.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(n.fga||"#07e")+";\n background-color: "+(n.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(n.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(n.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(n.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(n.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(n.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(n.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(n.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(n.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(n.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(n.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(n.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(t?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(i.fg||n.fga||"#07e")+";\n "+(t?"":"box-shadow: 0 0.0625em 0 0 "+(i.fg||n.fga||"#07e")+";")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(i.fg||n.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(n.fg||"#222")+";\n text-align: "+(t?"center":"left")+";\n padding: 0.5em "+(t?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(t?"\n border-radius: "+(n.radius||"0.2em")+";\n border-color: "+(n.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(n.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(t?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(t?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(t?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(n.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(t?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(n.radius||"0.2em")+" "+(n.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(n.radius||"0.2em")+" 0 0 "+(n.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(t?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(n.fga||"#07e")+";\n color: "+(n.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "}function a(){}function o(e){~this.className.indexOf("focus")||(this.className+=" focus")}function r(e){this.className=this.className.replace(/\bfocus\b/g,"").trim()}function c(e){var n,i,t,l,c,d,f,s,b,p,u,m,h,g=this.getContext(e);function x(){var a=y().split(/\s+/).filter(function(e){return!!e});(n=!!~a.indexOf("field"))||(a.push("field"),n=!0),(i=e.querySelector("input[type=checkbox]"))&&!~a.indexOf("check")&&a.push("check"),(t=e.querySelector("input[type=radio]"))&&!~a.indexOf("radio")&&a.push("radio");var o=i||t;o&&o.checked&&!~a.indexOf("checked")&&a.push("checked"),o&&o.disabled&&!~a.indexOf("disabled")&&a.push("disabled"),!o&&p?(p.cancel(),p=0,u&&(u.disconnect(),u=0),delete o._form_callback,h&&(delete h.checked,m=h=void 0)):o&&(o._form_callback=function(n,i){if(void 0===i&&(i=!0),i&&"radio"===o.type&&o.name){var t=[];t.push.apply(t,document.querySelectorAll("input[type=radio][name="+o.name+"]")),(t=t.filter(function(e){return e!==o})).forEach(function(e){return e._form_callback&&e._form_callback(n,!1)})}var l=o.checked;l&&!~e.className.indexOf("checked")?e.className+=" checked":!l&&~e.className.indexOf("checked")&&(e.className=e.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim())},MutationObserver&&(u=new MutationObserver(function(){var n;(n=o.disabled)&&!~e.className.indexOf("disabled")?e.className+=" disabled":!n&&~e.className.indexOf("disabled")&&(e.className=e.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim())})).observe(o,{attributes:!0}),p=this.getContext(o).listen("change",o._form_callback),(m=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(o),"checked"))&&m.configurable&&(h=o,Object.defineProperty(o,"checked",{get:m.get,set:function(e){m.set.call(h,e),o._form_callback()},enumerable:!0,configurable:!0}))),(l=!!e.querySelector("textarea"))&&!~a.indexOf("textarea")&&a.push("textarea"),(c=!!e.querySelector("select"))&&!~a.indexOf("select")&&a.push("select"),(d=!!e.querySelector("input[type=file]"))&&!~a.indexOf("file")&&a.push("file"),(f=!!(f=e.querySelector("button"))&&f.parentNode===e)&&!~a.indexOf("button")&&a.push("button"),(s=!!e.querySelector("div"))&&!~a.indexOf("plain")&&a.push("plain"),(b=!(i||t||d||!e.querySelector("input")))&&!~a.indexOf("input")&&a.push("input"),e.className=a.join(" ")}function y(){var a=e.className;return n||(a=a.replace(/\bfield\b/g,"").trim()),i||(a=a.replace(/\bcheck(ed)?\b/g,"").trim()),t||(a=a.replace(/\bradio\b/g,"").trim()),l||(a=a.replace(/\btextarea\b/g,"").trim()),c||(a=a.replace(/\bselect\b/g,"").trim()),d||(a=a.replace(/\bfile\b/g,"").trim()),f||(a=a.replace(/\bbutton\b/g,"").trim()),s||(a=a.replace(/\bplain\b/g,"").trim()),b||(a=a.replace(/\binput\b/g,"").trim()),a=a.replace(/ +/g," ")}var k=g.listen("focusin",o),v=g.listen("focusout",r);return x.call(this),{update:a,invalidate:x.bind(this),teardown:function(){var n=y();n=n.replace(/\bfocus\b/g,"").trim(),k.cancel(),v.cancel(),p&&p.cancel(),u&&u.disconnect(),h&&(delete h.checked,m=h=void 0),e.className=n}}}function d(e,n){if(!e)return!1;for(var i=0;i<e.length;i++){if(e[i].e===n)return!0;if(e[i].f&&d(e[i].f,n))return!0}return!1}c.style=l;var f=n.macro(function(e){var n=[],i=(e.template.m||[]).slice(),t=e.template.f||[],l=i.find(function(e){return"value"===e.n}),a=i.find(function(e){return"type"===e.n}),o=i.find(function(e){return"tip"===e.n});if(o&&i.splice(i.indexOf(o),1),a&&"function"==typeof f.types[a.f])n.push.apply(n,f.types[a.f](i,t,e));else if(l){var r={t:7,e:"input",m:[l]};if(d(t,"option")&&(r.e="select",r.f=t),a&&(r.m.push(a),"checkbox"===a.f||"radio"===a.f)){var c=i.find(function(e){return"target"===e.n});c?r.m.push(Object.assign({},c,{n:"name"})):r.m.splice(r.m.indexOf(l),1,Object.assign({},l,{n:"checked"}))}r.m=r.m.concat(i.filter(function(e){return 73===e.t||73===e.t||"placeholder"===e.n})),n.push(r);var s=t.filter(function(e){return"button"===e.e||d(e.f,"button")});s.length&&(n.push.apply(n,s),n=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:n}])}else{var b=t.filter(function(e){return e.e});b.find(function(e){return"button"===e.e})&&b.length>1?n=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:t}]:n.push.apply(n,t)}var p=i.find(function(e){return"label"===e.n});o&&n.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(p?"":" field-solo-tip"),g:1},{t:13,n:"title",f:o.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"}),p?n.unshift(p.f):n.unshift(" ");var u={t:7,e:"label",m:[{t:71,n:"field"}].concat(i.filter(function(e){return 13!==e.t&&73!==e.t||"value"!==e.n&&"type"!==e.n&&"inline"!==e.n&&"label"!==e.n&&"placeholder"!==e.n&&"target"!==e.n})),f:n};i.find(function(e){return"inline"===e.n})&&u.m.push({t:13,n:"class",f:"inline"}),e.setTemplate([u])});function s(e){return"function"==typeof e.focus&&e.focus(),{teardown:a}}function b(e){return void 0===e&&(e={}),function(n){var i=n.Ractive,t=n.instance;if(!i.isInstance(t)&&e.includeStyle)if(t===i)i.addCSS("form-decorator",l);else{var a=t.css;t.css=function(e){return("function"!=typeof a?a||"":a(e))+l(e)}}t.partials[e.name||"field"]=f,t.decorators[e.name||"field"]=c,t.decorators[e.autofocusName||"autofocus"]=s}}f.types={},t("field","decorators",c),t("field","partials",f),t("autofocus","decorators",s),e.style=l,e.field=c,e.macro=f,e.autofocus=s,e.plugin=b,e.default=b,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(e.RMForm={},e.Ractive)}(this,function(e,n){"use strict";n=n&&n.hasOwnProperty("default")?n.default:n;var i="undefined"!=typeof window?window:null;function t(e,n,t){if(i&&i.Ractive&&"object"==typeof i.Ractive[n]){var l=document.currentScript;if(l||(l=(l=document.querySelectorAll("script"))[l.length-1]),l){var a=l.getAttribute("data-alias");a&&(a=(a=a.split("&")).reduce(function(e,n){var i=n.split("="),t=i[0],l=i[1];return e[t]=l,e},{})),Ractive[n][a&&a[e]||e]=t}}}function l(e){var n=Object.assign({},e("raui.primary"),e("raui.form.primary")),i=Object.assign({},e("raui.primary.active"),e("raui.form.primary.active")),t=e("raui.form.boxy");return"\n label.field {\n display: inline-block;\n font-size: 0.9em;\n font-weight: 500;\n color: "+(n.fg||"#222")+";\n transition: 0.2s ease-in-out;\n transition-property: color;\n vertical-align: top;\n box-sizing: border-box;\n padding: 0.25em 0.5em;\n line-height: 1.5em;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: inherit;\n }\n\n label.field.textarea {\n display: block;\n border: 0.0625em solid "+(n.bc||"#ccc")+";\n padding: 0.5em 0.8em 0.8em 0.8em;\n border-radius: "+(n.radius||"0.2em")+";\n box-shadow: none;\n transition-property: color, border-color, box-shadow;\n margin: 0.8em 0.2em;\n min-height: auto;\n background-color: "+(t?n.bg||"#fff":"transparent")+";\n }\n\n label.field.focus {\n color: "+(i.fg||n.fga||"#07e")+";\n }\n\n label.field.textarea.focus {\n border-color: "+(i.fg||n.fga||"#07e")+";\n "+(t?"":"box-shadow: 0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n 0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+";")+"\n }\n\n label.field input,\n label.field select,\n label.field textarea\n {\n display: block;\n border-width: "+(t?"0.0625em":"0 0 0.0625em 0")+";\n border-color: "+(n.bc||"#ccc")+";\n border-style: solid;\n box-sizing: border-box;\n background-color: "+(t?n.bg||"#fff":"transparent")+";\n transition: 0.2s ease-in-out;\n transition-property: box-shadow, color;\n outline: none;\n box-shadow: none;\n width: 100%;\n margin-bottom: 0.8em;\n font-size: 1.1em;"+(t?"\n border-radius: "+(n.radius||"0.2em")+";":"")+"\n font-weight: 400;\n font-family: inherit;\n }\n\n label.field input"+(t?"":":disabled")+",\n label.field select"+(t?"":":disabled")+" {\n padding: 0 0.75em;\n }\n label.field select"+(t?"":":disabled")+" {\n padding-right: 2em;\n }\n\n label.field input:disabled,\n label.field select:disabled,\n label.field textarea:disabled {\n background: #f4f4f4;\n }\n\n label.field textarea {\n line-height: 1.2em;\n }\n label.field .field-wrapper {\n display: block;\n }\n label.field > select, label.field > input,\n label.field > .field-wrapper > input, label.field > .field-wrapper > select {\n height: 2.5em;\n }\n\n "+(t?"":"label.field:hover > input,\n label.field:hover select,\n label.field.file:hover:after {\n box-shadow: 0 0.0625em 0 0 "+(n.bc||"#ccc")+";\n }\n\n label.field.textarea:hover {\n box-shadow: 0.0625em 0.0625em "+(n.bc||"#ccc")+",\n -0.0625em 0.0625em "+(n.bc||"#ccc")+",\n 0.0625em -0.0625em "+(n.bc||"#ccc")+",\n -0.0625em -0.0625em "+(n.bc||"#ccc")+";\n }\n\n label.field.textarea.focus:hover {\n box-shadow: 0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em 0.0625em "+(i.fg||n.fga||"#07e")+",\n 0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+",\n -0.0625em -0.0625em "+(i.fg||n.fga||"#07e")+";\n }")+"\n\n /**** CHECK BOXES ****/\n\n label.field.check {\n position:relative;\n z-index: 0;\n overflow: visible;\n cursor: pointer;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.check.inline {\n padding-top: 0.7em;\n }\n\n label.field.check input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: -3px;\n top: 23px;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 40px;\n height: 40px;\n background-color: "+(n.bc||"#ccc")+";\n box-shadow: none;\n outline: none;\n opacity: 0;\n transform: scale(1);\n pointer-events: none;\n transition: opacity 0.3s, transform 0.2s;\n }\n label.field.inline.check input {\n top: 3px;\n left: -3px;\n }\n\n label.field.check input:checked {\n background-color: "+(n.fga||"#07e")+';\n }\n\n label.field.check:hover > input {\n opacity: 0.04;\n }\n\n label.field.check input:focus {\n opacity: 0.12;\n }\n\n label.field.check:hover > input:focus {\n opacity: 0.16;\n }\n\n label.field.check input:active {\n opacity: 0.6;\n transform: scale(0);\n transition: transform 0s, opacity 0s;\n }\n\n label.field.check:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 3px 11px 3px 1px;\n border: solid 2px; /* Safari */\n border-color: '+(n.fg||"#222")+';\n border-radius: 2px;\n width: 18px;\n height: 18px;\n vertical-align: bottom;\n transition: border-color 0.2s, background-color 0.2s;\n }\n\n label.field.check:after {\n content: "";\n display: block;\n position: absolute;\n top: 0px;\n left: 0px;\n width: 10px;\n height: 5px;\n border: solid 2px transparent;\n border-right: none;\n border-top: none;\n transform: translate(0.8em, 2.65em) rotate(-45deg);\n }\n\n label.field.check.inline:after {\n transform: translate(0.8em, 1.2em) rotate(-45deg);\n }\n\n label.field.check.checked:before {\n border-color: '+(n.fga||"#07e")+";\n background-color: "+(n.fga||"#07e")+";\n }\n label.field.check.focus:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.check.checked:after {\n border-color: "+(n.bg||"#fff")+";\n }\n\n label.field.check input:disabled {\n opacity: 0;\n }\n\n label.field.check.disabled {\n color: "+(n.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.check.disabled:before {\n border-color: "+(n.bc||"#ccc")+";\n }\n\n label.field.check.checked.disabled:before {\n border-color: transparent;\n background-color: "+(n.bc||"#ccc")+";\n }\n\n\n /**** RADIO BUTTONS ****/\n \n label.field.radio {\n z-index: 0;\n position: relative;\n display: inline-block;\n overflow: visible;\n padding-top: 2.2em;\n white-space: normal;\n }\n label.field.radio.inline {\n padding-top: 0.8em;\n }\n\n label.field.radio input {\n appearance: none;\n -moz-appearance: none;\n -webkit-appearance: none;\n z-index: -1;\n position: absolute;\n left: 0;\n top: 0;\n display: block;\n margin: 0;\n border-radius: 50%;\n width: 41px;\n height: 40px;\n background-color: "+(n.bc||"#ccc")+';\n outline: none;\n opacity: 0;\n pointer-events: none;\n transform: translate(-0.2em, 24px) scale(1);\n transition: opacity 0.3s, transform 0.3s;\n }\n label.field.inline.radio input {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio {\n cursor: pointer;\n position: relative;\n }\n\n label.field.radio:before {\n content: "";\n display: inline-block;\n box-sizing: border-box;\n margin: 2px 10px 2px 0;\n border: solid 2px; /* Safari */\n border-color: '+(n.fg||"#222")+';\n border-radius: 50%;\n width: 20px;\n height: 20px;\n vertical-align: middle;\n transition: border-color 0.2s;\n }\n\n label.field.radio:after {\n content: "";\n display: block;\n position: absolute;\n border-radius: 50%;\n width: 10px;\n height: 10px;\n background-color: '+(n.fga||"#07e")+";\n transform: translate(5px, -17px) scale(0);\n transition: transform 0.2s;\n }\n\n label.field.radio input:checked {\n background-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.checked:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.checked:after {\n transform: translate(5px, -17px) scale(1);\n }\n\n label.field.radio:hover input {\n opacity: 0.04;\n }\n\n label.field.radio input:focus {\n opacity: 0.12;\n transform: translate(-0.2em, 24px) scale(1);\n transition: transform 0.2s, opacity 0.2s;\n }\n label.field.inline.radio input:focus {\n transform: translate(-0.2em, 3px) scale(1);\n }\n\n label.field.radio:hover input:focus {\n opacity: 0.16;\n }\n\n label.field.radio input:active {\n opacity: 1;\n transform: translate(-0.2em, 24px) scale(0);\n transition: transform 0s, opacity 0s;\n }\n label.field.inline.radio input:active {\n transform: translate(-0.2em, 3px) scale(0);\n }\n\n label.field.radio.checked:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio.focus:before {\n border-color: "+(n.fga||"#07e")+";\n }\n\n label.field.radio input:disabled {\n opacity: 0;\n }\n\n label.field.radio.disabled {\n color: "+(n.bc||"#ccc")+";\n cursor: initial;\n }\n\n label.field.radio.disabled:before {\n border-color: "+(n.bc||"#ccc")+";\n }\n\n label.field.radio.disabled:after {\n background-color: "+(n.bc||"#ccc")+";\n }\n\n\n\n label.field select {\n padding-right: 2em;\n }\n\n label.field.select {\n cursor: pointer;\n position: relative;\n }\n\n label.field.select:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n right: 19px;\n height: 0.6em;\n top: 2.6em;\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n pointer-events: none;\n color: "+(n.bc||"#ccc")+";\n }\n\n label.field textarea {\n border: none;"+(t?"\n padding: 0;":"")+"\n }\n\n label.field > select {\n -moz-appearance: none;\n -webkit-appearance: none;\n }\n\n label.field input:focus,\n label.field select:focus,\n label.field.file.focus:after\n {\n border-color: "+(i.fg||n.fga||"#07e")+";\n "+(t?"":"box-shadow: 0 0.0625em 0 0 "+(i.fg||n.fga||"#07e")+";")+"\n }\n\n label.field input[type=checkbox]:focus,\n label.field input[type=radio]:focus {\n box-shadow: none;\n }\n\n label.field.file.focus:after {\n color: "+(i.fg||n.fga||"#07e")+";\n }\n label.field.file [type=file] {\n position: absolute;\n width: 0;\n height: 0;\n opacity: 0;\n z-index: -1;\n }\n label.field.file {\n position: relative;\n min-width: 9em;\n height: 5em;\n }\n label.field.file:after {\n position: absolute;\n content: 'Choose a file';\n box-sizing: border-box;\n width: calc(100% - 0.3em);\n height: 2.5em;\n font-size: 1.1em;\n line-height: 1.5em;\n color: "+(n.fg||"#222")+";\n text-align: "+(t?"center":"left")+";\n padding: 0.5em "+(t?"0.5em":"0")+";\n cursor: pointer;\n font-style: oblique;\n left: 0.25em;\n top: 1.6em;\n transition: 0.2s ease-in-out;\n transition-property: color, border-bolor, box-shadow;"+(t?"\n border-radius: "+(n.radius||"0.2em")+";\n border-color: "+(n.bc||"#ccc")+";\n border-style: solid;\n border-width: 0.0625em;":"\n border-bottom-color: "+(n.bc||"#ccc")+";\n border-bottom-width: 0.0625em;\n border-bottom-style: solid;\n ")+"\n }\n label.field.file.inline:after {\n top: 0.2em;\n }\n\n label.field.button {\n vertical-align: top;\n padding-top: "+(t?"1.7":"1.958")+"em;\n }\n label.field .with-buttons button, label.field.button button {\n font-size: 1.1em;\n margin-top: "+(t?"0.15em":"0")+";\n }\n\n label.field .field-wrapper.with-buttons {\n display: flex;\n }\n label.field .with-buttons button {\n flex-shrink: 0;\n padding-left: 0.5em;\n padding-right: 0.5em;\n margin-top: 0;\n margin-right: 0;\n "+(t?"height: 2.5em;\n box-shadow: none;\n border-radius: 0;\n border-left: 1px solid "+(n.bg||"#fff")+";\n margin-left: 0;":"height: 2.25em;")+"\n }"+(t?"\n label.field .with-buttons button:first-of-type {\n margin-left: -0.05em;\n border-left: none;\n }\n label.field .with-buttons button:last-of-type {\n border-radius: 0 "+(n.radius||"0.2em")+" "+(n.radius||"0.2em")+" 0;\n }\n label.field .with-buttons input {\n border-radius: "+(n.radius||"0.2em")+" 0 0 "+(n.radius||"0.2em")+";\n min-width: 0;\n }\n ":"")+"\n\n label.field.plain > div {\n position: absolute;\n font-size: 1.1em;\n top: 2.4em;\n font-weight: normal;\n }\n\n /* inline fields (no labels) */\n label.field.inline {\n height: 3.3em;\n }\n\n label.field.button.inline {\n margin-top: 0.2em;\n padding-top: 0.12em;\n }\n\n label.field.button.inline button {\n margin-top: 0;\n }\n\n label.field.inline.select:after {\n top: 1."+(t?"15":"1")+"em;\n }\n\n label.field .field-tip {\n display: inline-block;\n width: 1em;\n height: 1em;\n background-color: "+(n.fga||"#07e")+";\n color: "+(n.bg||"#fff;")+";\n cursor: default;\n user-select: none;\n border-radius: 1em;\n margin-left: 0.5em;\n line-height: 1.2em;\n text-align: center;\n margin-top: -0.2em;\n }\n\n label.field .field-solo-tip {\n margin-left: -0.1em;\n }\n "}function a(){}function o(e){~this.className.indexOf("focus")||(this.className+=" focus")}function r(e){this.className=this.className.replace(/\bfocus\b/g,"").trim()}function c(e){var n,i,t,l,c,d,f,s,b,p,u,m,h,g=this.getContext(e);function x(){var a=y().split(/\s+/).filter(function(e){return!!e});(n=!!~a.indexOf("field"))||(a.push("field"),n=!0),(i=e.querySelector("input[type=checkbox]"))&&!~a.indexOf("check")&&a.push("check"),(t=e.querySelector("input[type=radio]"))&&!~a.indexOf("radio")&&a.push("radio");var o=i||t;o&&o.checked&&!~a.indexOf("checked")&&a.push("checked"),o&&o.disabled&&!~a.indexOf("disabled")&&a.push("disabled"),!o&&p?(p.cancel(),p=0,u&&(u.disconnect(),u=0),delete o._form_callback,h&&(delete h.checked,m=h=void 0)):o&&(o._form_callback=function(n,i){if(void 0===i&&(i=!0),i&&"radio"===o.type&&o.name){var t=[];t.push.apply(t,document.querySelectorAll("input[type=radio][name="+o.name+"]")),(t=t.filter(function(e){return e!==o})).forEach(function(e){return e._form_callback&&e._form_callback(n,!1)})}var l=o.checked;l&&!~e.className.indexOf("checked")?e.className+=" checked":!l&&~e.className.indexOf("checked")&&(e.className=e.className.replace(/\bchecked\b/g,"").replace(/ +/g," ").trim())},MutationObserver&&(u=new MutationObserver(function(){var n;(n=o.disabled)&&!~e.className.indexOf("disabled")?e.className+=" disabled":!n&&~e.className.indexOf("disabled")&&(e.className=e.className.replace(/\bdisabled\b/g,"").replace(/ +/g," ").trim())})).observe(o,{attributes:!0}),p=this.getContext(o).listen("change",o._form_callback),(m=Object.getOwnPropertyDescriptor(Object.getPrototypeOf(o),"checked"))&&m.configurable&&(h=o,Object.defineProperty(o,"checked",{get:m.get,set:function(e){m.set.call(h,e),o._form_callback()},enumerable:!0,configurable:!0}))),(l=!!e.querySelector("textarea"))&&!~a.indexOf("textarea")&&a.push("textarea"),(c=!!e.querySelector("select"))&&!~a.indexOf("select")&&a.push("select"),(d=!!e.querySelector("input[type=file]"))&&!~a.indexOf("file")&&a.push("file"),(f=!!(f=e.querySelector("button"))&&f.parentNode===e)&&!~a.indexOf("button")&&a.push("button"),(s=!!e.querySelector("div"))&&!~a.indexOf("plain")&&a.push("plain"),(b=!(i||t||d||!e.querySelector("input")))&&!~a.indexOf("input")&&a.push("input"),e.className=a.join(" ")}function y(){var a=e.className;return n||(a=a.replace(/\bfield\b/g,"").trim()),i||(a=a.replace(/\bcheck(ed)?\b/g,"").trim()),t||(a=a.replace(/\bradio\b/g,"").trim()),l||(a=a.replace(/\btextarea\b/g,"").trim()),c||(a=a.replace(/\bselect\b/g,"").trim()),d||(a=a.replace(/\bfile\b/g,"").trim()),f||(a=a.replace(/\bbutton\b/g,"").trim()),s||(a=a.replace(/\bplain\b/g,"").trim()),b||(a=a.replace(/\binput\b/g,"").trim()),a=a.replace(/ +/g," ")}var k=g.listen("focusin",o),v=g.listen("focusout",r);return x.call(this),{update:a,invalidate:x.bind(this),teardown:function(){var n=y();n=n.replace(/\bfocus\b/g,"").trim(),k.cancel(),v.cancel(),p&&p.cancel(),u&&u.disconnect(),h&&(delete h.checked,m=h=void 0),e.className=n}}}function d(e,n){if(!e)return!1;for(var i=0;i<e.length;i++){if(e[i].e===n)return!0;if(e[i].f&&d(e[i].f,n))return!0}return!1}c.style=l;var f=n.macro(function(e){var n=[],i=(e.template.m||[]).slice(),t=e.template.f||[],l=i.find(function(e){return"value"===e.n}),a=i.find(function(e){return"type"===e.n}),o=i.find(function(e){return"tip"===e.n});if(o&&i.splice(i.indexOf(o),1),a&&"function"==typeof f.types[a.f])n.push.apply(n,f.types[a.f](i,t,e));else if(l){var r={t:7,e:"input",m:[l]};if(d(t,"option")&&(r.e="select",r.f=t),a&&(r.m.push(a),"checkbox"===a.f||"radio"===a.f)){var c=i.find(function(e){return"target"===e.n});c?r.m.push(Object.assign({},c,{n:"name"})):r.m.splice(r.m.indexOf(l),1,Object.assign({},l,{n:"checked"}))}r.m=r.m.concat(i.filter(function(e){return 73===e.t||73===e.t||"placeholder"===e.n})),n.push(r);var s=t.filter(function(e){return"button"===e.e||d(e.f,"button")});s.length&&(n.push.apply(n,s),n=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:n}])}else{var b=t.filter(function(e){return e.e});b.find(function(e){return"button"===e.e})&&b.length>1?n=[{t:7,e:"span",m:[{t:13,n:"class",f:"field-wrapper with-buttons",g:1}],f:t}]:n.push.apply(n,t)}var p=i.find(function(e){return"label"===e.n});o&&n.unshift({t:7,e:"span",m:[{t:13,n:"class",f:"field-tip"+(p?"":" field-solo-tip"),g:1},{t:13,n:"title",f:o.f},{t:70,n:["click"],f:{r:[],s:"[false]"}}],f:"?"}),p?n.unshift.apply(n,Array.isArray(p.f)?p.f:[p.f]):n.unshift(" ");var u={t:7,e:"label",m:[{t:71,n:"field"}].concat(i.filter(function(e){return 13!==e.t&&73!==e.t||"value"!==e.n&&"type"!==e.n&&"inline"!==e.n&&"label"!==e.n&&"placeholder"!==e.n&&"target"!==e.n})),f:n};i.find(function(e){return"inline"===e.n})&&u.m.push({t:13,n:"class",f:"inline"}),e.setTemplate([u])});function s(e){return"function"==typeof e.focus&&e.focus(),{teardown:a}}function b(e){return void 0===e&&(e={}),function(n){var i=n.Ractive,t=n.instance;if(!i.isInstance(t)&&e.includeStyle)if(t===i)i.addCSS("form-decorator",l);else{var a=t.css;t.css=function(e){return("function"!=typeof a?a||"":a(e))+l(e)}}t.partials[e.name||"field"]=f,t.decorators[e.name||"field"]=c,t.decorators[e.autofocusName||"autofocus"]=s}}f.types={},t("field","decorators",c),t("field","partials",f),t("autofocus","decorators",s),e.style=l,e.field=c,e.macro=f,e.autofocus=s,e.plugin=b,e.default=b,Object.defineProperty(e,"__esModule",{value:!0})}); |
@@ -133,3 +133,3 @@ (function (global, factory) { | ||
var Menu = /*@__PURE__*/(function (Ractive) { | ||
function Menu(opt) { | ||
function Menu(opts) { | ||
Ractive.call(this, opts); | ||
@@ -136,0 +136,0 @@ this.refs = {}; |
@@ -1,1 +0,1 @@ | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],e):e(t.RMMenu={},t.Ractive)}(this,function(t,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var n="undefined"!=typeof window?window:null;function i(t,e,i){if(n&&n.Ractive&&"object"==typeof n.Ractive[e]){var r=document.currentScript;if(r||(r=(r=document.querySelectorAll("script"))[r.length-1]),r){var o=r.getAttribute("data-alias");o&&(o=(o=o.split("&")).reduce(function(t,e){var n=e.split("="),i=n[0],r=n[1];return t[i]=r,t},{})),Ractive[e][o&&o[t]||t]=i}}}function r(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"});return new Promise(function(e){requestAnimationFrame(function(){t.setStyle("overflow","hidden");var i="x"===n.axis?"width":"height";if(t.isIntro||n.intro){var r=t.getStyle(i);t.setStyle(i,0),t.setStyle("opacity",0),e(t.animateStyle(i,r,n).then(function(){return t.animateStyle("opacity",1,n)}).then(function(){t.setStyle(i,""),t.setStyle("overflow","")}))}else t.setStyle(i,t.getStyle(i)),t.setStyle("opacity",1),e(t.animateStyle("opacity",0,n).then(function(){return t.animateStyle(i,0,n)}))})})}function o(t,e){var n=!1,i=!1;function r(n){for(var i=n.target;i;){if(i===t)return;if(!i.parentNode&&i!==document)return;i=i.parentNode}e(n)}return setTimeout(function(){n=!0,i||(document.body.addEventListener("click",r,{capture:!0}),document.body.addEventListener("touchstop",r,{capture:!0}))}),{teardown:function(){i=!0,n&&(document.body.removeEventListener("click",r,{capture:!0}),document.body.removeEventListener("touchstop",r,{capture:!0}))}}}i("expand","transitions",r);var s=function(t){function e(e){t.call(this,opts),this.refs={}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.addItem=function(t,e){return"number"==typeof e?this.splice("items",e,0,t):this.push("items",t),new u(this,null,t)},e.prototype.visibleItems=function(t){var e=this;return t.filter(function(t){return!1!==t.condition&&("string"!=typeof t.condition||!1!==e.get(t.condition))}).length},e.prototype.getHandle=function(t){var e,n=this;if("string"==typeof t)if(this.refs[t])e=this.refs[t].ctx;else{var i=this.find(t);if(i)e=this.getContext(i);else{var r=function t(e,n){for(var i=0;i<e.length;i++){if(e[i].ref===n)return[e[i]];if(e[i].items){var r=t(e[i].items,n);if(r)return r.unshift(e[i]),r}}}(this.get("items"),t);if(r)return r.reduce(function(t,e){return new u(n,t,e)},null)}}else t&&t.parentNode?e=this.getContext(t):t&&t.decorators&&(e=t);if(e){for(var o=[e.get()],s="../../";""!==e.resolve(s);)o.unshift(e.get(s)),s+="../../";return o.reduce(function(t,e){return new u(n,t,e)},null)}},e.prototype.popAllIn=function(t){t||(t="");var e=this.get(t);if(e&&e.items)for(var n=0;n<e.items.length;n++)this.popAllIn((t?t+".":"")+"items."+n);e.open&&e.popout&&this.set((t?t+".":"")+"open",!1)},e.prototype.popSiblingsIn=function(t){var e=t.resolve(),n=t.get("../");if(n)for(var i=0;i<n.length;i++)e!==t.resolve("../"+i)&&n[i].open&&n[i].popout&&t.toggle("../"+i+".open")},e.prototype._actioned=function(){this.fire("action"),this.popAllIn()},e.prototype._itemRendered=function(t){var e=this;return setTimeout(function(){return e.fire("item",t,e.getHandle(t))}),""},e.prototype.childActive=function(t){var e=this.get(t);if(e&&e.items)for(var n=0;n<e.items.length;n++)if(!0===this.get(t+".items."+n+".active")||"function"==typeof e.items[n].active&&e.items[n].active()||this.get(t+".items."+n+".activeRef")&&this.get(e.items[n].activeRef)||this.childActive(t+".items."+n))return!0},e}(e);e.extendWith(s,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-wrapper",g:1},{t:16,r:"extra-attributes"},{n:"class-rmenu-vertical",t:13,f:[{t:2,x:{r:["~/horizontal"],s:"!_0"}}]},{n:"class-rmenu-horizontal",t:13,f:[{t:2,r:"~/horizontal"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-inner",g:1}],f:[{t:8,r:"items"}]}]}]}],e:{"!_0":function(t){return!t},"_0||_1":function(t,e){return t||e},'_0&&(_1||_2==="section")':function(t,e,n){return t&&(e||"section"===n)},"_0?_3.active(_1.getHandle((_2))):_3.active()":function(t,e,n,i){return t?i.active(e.getHandle(n)):i.active()},'typeof _0==="function"':function(t){return"function"==typeof t},'typeof _0==="boolean"':function(t){return"boolean"==typeof t},"_0.childActive(_1)":function(t,e){return t.childActive(e)},"_0!=null":function(t){return null!=t},"[_0.action(),_1._actioned()]":function(t,e){return[t.action(),e._actioned()]},"[_0._actioned()]":function(t){return[t._actioned()]},'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]':function(t,e,n){return[t&&e.popSiblingsIn(n),n.toggle(".open"),!1]},"_0||(_1&&_2[_1])":function(t,e,n){return t||e&&n[e]},'[{axis:"x"}]':function(){return[{axis:"x"}]},"_2&&_0&&_1.visibleItems(_2)":function(t,e,n){return n&&t&&e.visibleItems(n)},"[_0.popAllIn(_1),false]":function(t,e){return[t.popAllIn(e),!1]},'!_0||_0==="item"':function(t){return!t||"item"===t},'_0==="section"':function(t){return"section"===t},'_0==="container"':function(t){return"container"===t},'(!_0||_0==="item")&&_1':function(t,e){return(!t||"item"===t)&&e},"[_0.popAllIn(_1)]":function(t,e){return[t.popAllIn(e)]},"[_0]":function(t){return[t]},'typeof _0==="string"':function(t){return"string"==typeof t},'_0||"item"':function(t){return t||"item"},"_0._itemRendered((_1))":function(t,e){return t._itemRendered(e)},'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())':function(t,e,n){return void 0===e||"boolean"==typeof e&&e||"string"==typeof e&&t[e]||"function"==typeof e&&n.condition()}},p:{container:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:3,r:".content"}]}],n:50,r:".pad"},{t:4,f:[{t:3,r:".content"}],n:51,l:1}],n:50,r:".content"},{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:16,r:".contentPartial"}]}],n:50,r:".pad"},{t:4,f:[{t:16,r:".contentPartial"}],n:51,l:1}],n:50,r:".contentPartial",l:1}],section:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1}],f:[{t:4,f:[{t:2,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}]}],n:50,x:{r:[".title",".titlePartial"],s:"_0||_1"}}," ",{t:8,r:"children"}],children:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-items",g:1},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:[".popout"],s:"!_0"}},{t:4,f:[{n:"pop",t:72,v:"t0"}],n:51,l:1},{n:"class-rmenu-shrink",t:13,f:[{t:2,r:".shrink"}]}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popitems",g:1}],f:[{t:8,r:"items"}]}],n:50,r:".popout"},{t:4,f:[{t:8,r:"items"}],n:51,l:1}]}],n:50,x:{r:[".items.length",".open",".type"],s:'_0&&(_1||_2==="section")'}}],item:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".activeRef"}]}}]}],n:50,r:".activeRef"},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:[".active.length","@this","@context","."],s:"_0?_3.active(_1.getHandle((_2))):_3.active()"}}]}],n:50,x:{r:[".active"],s:'typeof _0==="function"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,r:".active"}]}],n:50,x:{r:[".active"],s:'typeof _0==="boolean"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:["@this","@keypath"],s:"_0.childActive(_1)"}}]}],n:50,r:".popout",l:1},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,r:".disabled"}]}],n:50,x:{r:[".disabled"],s:"_0!=null"}},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".disabledRef"}]}}]}],n:50,r:".disabledRef",l:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-left",g:1}],f:[{t:3,r:".left"}]}],n:50,r:".left"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-left",g:1}],f:[{t:16,r:".leftPartial"}]}],n:50,r:".leftPartial",l:1}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1},{t:4,f:[{t:4,f:[{n:["click"],t:70,f:{r:[".","@this"],s:"[_0.action(),_1._actioned()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}},{t:4,f:[{t:16,r:".actionPartial"},{n:["click"],t:70,f:{r:["@this"],s:"[_0._actioned()]"}}],n:50,r:".actionPartial",l:1},{t:4,f:[{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}}],n:50,r:".items.length",l:1}],n:51,x:{r:[".disabled",".disabledRef","~/"],s:"_0||(_1&&_2[_1])"}}],f:[{t:4,f:[{t:3,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-right",g:1}],f:[{t:3,r:".right"}]}],n:50,r:".right"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-right",g:1}],f:[{t:16,r:".rightPartial"}]}],n:50,r:".rightPartial",l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-expand",g:1},{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}},{n:"expand",t:72,f:{r:[],s:'[{axis:"x"}]'},v:"t0"}]}],n:50,x:{r:[".items.length","@this",".items"],s:"_2&&_0&&_1.visibleItems(_2)"}}]}," ",{t:8,r:"children"}],items:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popout-close",g:1},{n:["click"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1),false]"}}],f:["❌ Close"]}],n:50,r:".shrink"}," ",{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-entry",g:1},{t:4,f:[{n:"class-rmenu-item",t:13}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}},{t:4,f:[{n:"class-rmenu-section",t:13}],n:50,x:{r:[".type"],s:'_0==="section"'},l:1},{t:4,f:[{n:"class-rmenu-container",t:13}],n:50,x:{r:[".type"],s:'_0==="container"'},l:1},{n:"class-rmenu-expanded",t:13,f:[{t:2,r:".open"}]},{n:"class-rmenu-popout",t:13,f:[{t:2,x:{r:[".type",".popout"],s:'(!_0||_0==="item")&&_1'}}]},{t:4,f:[{n:"pop",t:72,v:"t0"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1)]"}}],n:50,r:".open"}," "],n:50,r:".popout"},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:["~/noExpand"],s:"!_0"},l:1},{t:4,f:[{t:8,r:".refPartial"}],n:50,r:".refPartial"},{t:4,f:[{n:"ref",t:71,f:{r:[".ref"],s:"[_0]"}}],n:50,x:{r:[".ref"],s:'typeof _0==="string"'},l:1},{t:4,f:[{t:16,r:".extra"}],n:50,r:".extra"}],f:[{t:8,x:{r:[".type"],s:'_0||"item"'}}," ",{t:4,f:[{t:2,x:{r:["@this","@context"],s:"_0._itemRendered((_1))"}}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}}]}],n:50,x:{r:["~/",".condition","."],s:'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())'}}],n:52,r:".items"}]}},css:function(t){return[function(t){var e=Object.assign({},t("raui.primary"),t("raui.menu.primary"));return e.popout=Object.assign({},t("raui.menu.popout"),t("raui.menu.primary.popout")),"\n .rmenu-wrapper {\n position: relative;\n z-index: 1;\n }\n .rmenu-wrapper.rmenu-vertical {\n min-height: 100%;\n }\n .rmenu {\n "+(t("raui.menu.font")?"font-family: "+t("raui.menu.font")+";":"")+"\n color: "+(e.bg||"#fff")+";\n background-color: "+(e.fg||"#222")+";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n .rmenu-wrapper.alt > .rmenu {\n color: "+(e.fga||"#222")+";\n background-color: "+(e.bg||"#fff")+";\n }\n .rmenu-inner {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-item {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n transition: border 0.2s ease-in-out;\n }\n .rmenu-item:hover > .rmenu-main {\n background-color: "+(e.fga||"#07e")+";\n color: "+(e.bg||"#fff")+";\n }\n .rmenu-disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n .rmenu-popout {\n border: none;\n }\n .rmenu-expanded {\n border-top: 0.0625em solid "+(e.bc||"#ccc")+";\n border-bottom: 0.0625em solid "+(e.bc||"#ccc")+";\n }\n .rmenu-popout.rmenu-expanded {\n border: none;\n }\n .rmenu-popout .rmenu-popout.rmenu-expanded {\n background-color: "+(e.popout.bga||e.bg||"#fff")+";\n color: "+(e.popout.fg||e.fg||"#222")+";\n }\n .rmenu-popitems {\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-main {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n user-select: none;\n transition: 0.3s ease-in-out;\n transition-property: color, background-color;\n display: flex;\n align-items: center;\n min-height: 1em;\n }\n .rmenu-main.rmenu-active, .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(e.fga||"#07e")+";\n background-color: "+(e.bg||"#fff")+";\n }\n .rmenu-popout .rmenu-entry .rmenu-main.rmenu-active, .rmenu-popout .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(e.popout.bg||e.bg||"#fff")+";\n background-color: "+(e.popout.fga||e.fga||"#07e")+";\n }\n .rmenu-wrapper.alt .rmenu-main.rmenu.active {\n color: "+(e.bg||"#fff")+";\n background-color: "+(e.fg||"#222")+";\n }\n .rmenu-popout .rmenu-items .rmenu-item:hover > .rmenu-main {\n background-color: "+(e.popout.bga||"#f4f4f4")+";\n color: "+(e.popout.fg||"#222")+";\n }\n \n .rmenu-items {\n display: block;\n }\n .rmenu-right {\n padding-right: 0.4em; \n }\n .rmenu-left {\n padding-left: 0.4em;\n }\n .rmenu-expand {\n width: 1.5em;\n height: 1.5em;\n padding-left: 0.5em;\n cursor: pointer;\n position: relative;\n }\n .rmenu-expand:before {\n position: absolute;\n display: inline-block;\n top: 0.35em;\n content: ' ';\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out;\n box-sizing: border-box;\n border-width: 0.25em;\n border-style: solid;\n border-left-color: transparent;\n border-top-color: transparent;\n }\n .rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-135deg);\n top: 0.65em;\n }\n \n .rmenu-popout > .rmenu-items {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: "+(e.popout.bg||e.bg||"#fff")+";\n color: "+(e.popout.fg||e.fg||"#222")+";\n box-sizing: border-box;\n border-right: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n z-index: -1;\n transition: box-shadow 0.2s ease-in-out;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: 100%;\n z-index: initial;\n box-shadow: 0.2em 0 0.2em rgba(0, 0, 0, 0.2);\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: calc(100% + 1px);\n }\n \n .rmenu-popout > .rmenu-items.rmenu-shrink {\n left: 100%;\n z-index: 1;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink,\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink {\n left: 0;\n }\n \n .rmenu-popout > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-45deg);\n top: 0.4em;\n }\n \n .rmenu-popout.rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(135deg);\n left: 0.75em;\n }\n \n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items {\n height: 100%;\n width: calc(100% + 1px);\n top: 0px;\n }\n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items.rmenu-shrink {\n height: 100%;\n }\n \n .rmenu-popout-close {\n color: "+(e.popout.fga||e.fga||"#07e")+";\n display: block;\n padding: 0.5em;\n cursor: pointer;\n }\n \n .rmenu-title {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n padding: 0.5em;\n flex-grow: 1;\n }\n .rmenu-disabled > .rmenu-title {\n cursor: not-allowed;\n }\n .rmenu-item h1, .rmenu-item h2, .rmenu-item h3, .rmenu-item h4 {\n margin: 0;\n }\n \n .rmenu-section {\n padding: 0 0 0.75em 0;\n }\n .rmenu-section > .rmenu-main {\n cursor: default;\n font-size: 0.75em;\n opacity: 0.7;\n margin-bottom: 0.25em;\n }\n .rmenu-section > .rmenu-main .rmenu-title {\n cursor: default;\n }\n .rmenu-popout .rmenu-section:first-child > .rmenu-main {\n padding-top: 0;\n }\n .rmenu-popout .rmenu-section > .rmenu-main > .rmenu-title {\n font-size: 1.5em;\n text-align: center;\n padding: 0.75em;\n opacity: 1;\n font-weight: bold;\n color: "+(e.popout.fg||e.fg||"#222")+";\n background-color: "+(e.popout.bga||e.bga||"#f4f4f4")+";\n border-bottom: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n border-top: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n }\n \n .rmenu-container {\n box-sizing: border-box;\n }\n \n .rmenu-container-pad {\n padding: 0.3em 0.3em 0.8em 0.3em;\n }\n "}.call(this,t)].join(" ")},cssId:"menu",noCssTransform:!0,noIntro:!0,nestedTransitions:!1,on:{construct:function(){var t=this.component;if(!t)return;var e=t.template.f||[],n=t.template.m?t.template.m.slice():[],i=t.template;t.template={e:i.e,f:i.f,t:i.t,m:n};var r=[];e.forEach(function(t){var e=function t(e){if("item"!==e.e&&"section"!==e.e&&"container"!==e.e)return;var i={};var r=[];var o;"item"!==e.e&&(i.type=e.e);e.m&&e.m.forEach(function(t){if("title"===t.n)"string"==typeof t.f?i.title=t.f:i.titlePartial={t:t.f};else if(70===t.t&&"action"===t.n[0])i.actionPartial={t:[{n:["click"],f:t.f,t:t.t}]};else if("guard"===t.n&&t.f&&1===t.f.length&&2===t.f[0].t){var o="_cnd"+n.length;i.condition=o,n.push({t:13,n:o,f:t.f})}else if("ref"===t.n){if("string"==typeof t.f)i.ref=t.f;else if(t.f&&1===t.f.length&&2===t.f[0].t){var s="_cnd"+n.length;n.push({t:13,n:s,f:t.f}),i.refPartials={t:[{t:71,n:"ref",f:{r:s,s:"[_0]"}}]}}}else if("active"===t.n){if(t.f&&1===t.f.length&&2===t.f[0].t){var a="_cnd"+n.length;i.activeRef=a,n.push({t:13,n:a,f:t.f})}}else if("open"===t.n)i.open=!0;else if("popout"===t.n)i.popout=!0;else if("container"===e.e&&"pad"===t.n)i.pad=!0;else if("disabled"===t.n)if(t.f&&1===t.f.length&&2===t.f[0].t){var u="_cnd"+n.length;i.disabledRef=u,n.push({t:13,n:u,f:t.f})}else 0===t.f&&(i.disabled=!0);else r.push(t)});r.length&&(i.extra={t:r});if("container"===e.e)return i.contentPartial={t:e.f},i.extra=r,i;e.f&&e.f.forEach(function(e){if("title"===e.e)1===e.f.length&&"string"==typeof e.f[0]?i.title=e.f[0]:i.titlePartial={t:e.f};else if("item"===e.e||"section"===e.e||"container"===e.e){var n=t(e);n&&(i.items||(i.items=[])).push(n)}else"left"===e.e?i.leftPartial={t:e.f}:"right"===e.e?i.rightPartial={t:e.f}:"string"==typeof e&&a.test(e)||(o||(o=[]),o.push(e))});!i.titlePartial&&o&&(i.titlePartial={t:o});o=null;return i}(t);e&&r.push(e)}),this._items=r},config:function(){this._items&&this.set("items",(this.get("items")||[]).concat(this._items),{shuffle:!0})}},attributes:["noExpand"],use:[function(t){return void 0===t&&(t={}),function(e){e.instance.transitions[t.name||"expand"]=r}}(),function(t){return void 0===t&&(t={}),function(e){e.instance.events[t.name||"clickout"]=o}}()],decorators:{ref:function(t,e){var n=this,i=e;n.refs||(n.refs={});var r={update:function(t){n.refs[i]===r&&delete n.refs[i],i=t,n.refs[i]=r},teardown:function(){n.refs[i]===r&&delete n.refs[i]}};return r.ctx=n.getContext(t),n.refs[i]=r,r}},transitions:{pop:function(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"}),i=this.getContext(t.node),r=i.get(".shrink");if(t.isIntro){var o=t.node.getBoundingClientRect();function s(){for(var e=t.node.parentNode;e&&e.classList;){if(e.classList.contains("rmenu"))return e;if(e.parentNode.classList.contains("rmenu-popout"))return e;e=e.parentNode}}o.left+o.width>window.innerWidth?(setTimeout(function(){return i.set(".shrink",!0)}),r=!0,s().style.overflowX="hidden"):r?(setTimeout(function(){return i.set(".shrink",!1)}),s().style.overflowX="",r=!1):s().style.overflowX=""}else setTimeout(function(){return i.set("shrink",!1)});return t.isIntro?r?(t.setStyle("left","100%"),t.animateStyle("left",0,n)):(t.setStyle("left",0),t.setStyle("z-index",-1),t.animateStyle("left","100%",n)):r?(t.setStyle("left",0),t.animateStyle("left","100%",n)):(t.setStyle("left","100%"),t.setStyle("z-index",-1),t.animateStyle("left",0,n))}}});var a=/^\s*$/;var u=function(t,e,n){this.menu=t,this.parent=e,this.item=n},f={keypath:{configurable:!0},action:{configurable:!0},active:{configurable:!0},disabled:{configurable:!0},items:{configurable:!0},ref:{configurable:!0}};function c(t){return void 0===t&&(t={}),function(e){e.instance.components[t.name||"menu"]=s}}f.keypath.get=function(){if(!this.removed){if(!this.parent)return"items."+this.menu.get("items").indexOf(this.item);var t=this.parent.keypath+".items";return t+"."+this.menu.get(t).indexOf(this.item)}},f.action.get=function(){if(!this.removed)return this.item.action},f.action.set=function(t){return this.set(".action",t)},f.active.get=function(){if(!this.removed){var t=this.item;return t.activeRef?this.menu.get(t.activeRef):"function"==typeof t.active?t.active():t.active}},f.active.set=function(t){if(!this.removed){var e=this.item;return e.activeRef?this.menu.set(e.activeRef,t):this.set(".active",t)}},f.disabled.get=function(){if(!this.removed)return this.get(".disabled")},f.disabled.set=function(t){if(!this.removed)return this.set(".disabled",t)},f.items.get=function(){var t=this;return this.item.items?this.item.items.map(function(e){return new u(t.menu,t,e)}):[]},f.ref.get=function(){if(!this.removed)return this.item.ref},f.ref.set=function(t){return this.set(".ref",t)},u.prototype.addItem=function(t,e){if(this.removed)return!1;var n=this.keypath+".items";return"number"==typeof e?this.menu.splice(n,e,0,t):this.menu.push(n,t),new u(this.menu,this,t)},u.prototype.open=function(){if(this.removed)return!1;this.menu.set(this.keypath+".open",!0)},u.prototype.close=function(){if(this.removed)return!1;this.menu.set(this.keypath+".open",!1)},u.prototype.remove=function(){if(this.removed)return!1;var t=(this.parent?this.parent.keypath+".":"")+"items",e=this.menu.get(t);return this.menu.splice(t,e.indexOf(this.item),1),this.removed=!0,!0},u.prototype.get=function(t){if(this.removed)return!1;if(!t)return this.menu.get(this.keypath);var e=t.replace(/^[\.\/]*/,"");return this.menu.get(this.keypath+"."+e)},u.prototype.set=function(t,e){if(this.removed)return!1;var n=t.replace(/^[\.\/]*/,"");return this.menu.set(this.keypath+"."+n,e)},Object.defineProperties(u.prototype,f),i("RMMenu","components",s),t.Menu=s,t.plugin=c,t.default=c,Object.defineProperty(t,"__esModule",{value:!0})}); | ||
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],e):e(t.RMMenu={},t.Ractive)}(this,function(t,e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var n="undefined"!=typeof window?window:null;function i(t,e,i){if(n&&n.Ractive&&"object"==typeof n.Ractive[e]){var r=document.currentScript;if(r||(r=(r=document.querySelectorAll("script"))[r.length-1]),r){var o=r.getAttribute("data-alias");o&&(o=(o=o.split("&")).reduce(function(t,e){var n=e.split("="),i=n[0],r=n[1];return t[i]=r,t},{})),Ractive[e][o&&o[t]||t]=i}}}function r(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"});return new Promise(function(e){requestAnimationFrame(function(){t.setStyle("overflow","hidden");var i="x"===n.axis?"width":"height";if(t.isIntro||n.intro){var r=t.getStyle(i);t.setStyle(i,0),t.setStyle("opacity",0),e(t.animateStyle(i,r,n).then(function(){return t.animateStyle("opacity",1,n)}).then(function(){t.setStyle(i,""),t.setStyle("overflow","")}))}else t.setStyle(i,t.getStyle(i)),t.setStyle("opacity",1),e(t.animateStyle("opacity",0,n).then(function(){return t.animateStyle(i,0,n)}))})})}function o(t,e){var n=!1,i=!1;function r(n){for(var i=n.target;i;){if(i===t)return;if(!i.parentNode&&i!==document)return;i=i.parentNode}e(n)}return setTimeout(function(){n=!0,i||(document.body.addEventListener("click",r,{capture:!0}),document.body.addEventListener("touchstop",r,{capture:!0}))}),{teardown:function(){i=!0,n&&(document.body.removeEventListener("click",r,{capture:!0}),document.body.removeEventListener("touchstop",r,{capture:!0}))}}}i("expand","transitions",r);var s,a=function(t){function e(e){t.call(this,e),this.refs={}}return t&&(e.__proto__=t),e.prototype=Object.create(t&&t.prototype),e.prototype.constructor=e,e.prototype.addItem=function(t,e){return"number"==typeof e?this.splice("items",e,0,t):this.push("items",t),new f(this,null,t)},e.prototype.visibleItems=function(t){var e=this;return t.filter(function(t){return!1!==t.condition&&("string"!=typeof t.condition||!1!==e.get(t.condition))}).length},e.prototype.getHandle=function(t){var e,n=this;if("string"==typeof t)if(this.refs[t])e=this.refs[t].ctx;else{var i=this.find(t);if(i)e=this.getContext(i);else{var r=function t(e,n){for(var i=0;i<e.length;i++){if(e[i].ref===n)return[e[i]];if(e[i].items){var r=t(e[i].items,n);if(r)return r.unshift(e[i]),r}}}(this.get("items"),t);if(r)return r.reduce(function(t,e){return new f(n,t,e)},null)}}else t&&t.parentNode?e=this.getContext(t):t&&t.decorators&&(e=t);if(e){for(var o=[e.get()],s="../../";""!==e.resolve(s);)o.unshift(e.get(s)),s+="../../";return o.reduce(function(t,e){return new f(n,t,e)},null)}},e.prototype.popAllIn=function(t){t||(t="");var e=this.get(t);if(e&&e.items)for(var n=0;n<e.items.length;n++)this.popAllIn((t?t+".":"")+"items."+n);e.open&&e.popout&&this.set((t?t+".":"")+"open",!1)},e.prototype.popSiblingsIn=function(t){var e=t.resolve(),n=t.get("../");if(n)for(var i=0;i<n.length;i++)e!==t.resolve("../"+i)&&n[i].open&&n[i].popout&&t.toggle("../"+i+".open")},e.prototype._actioned=function(){this.fire("action"),this.popAllIn()},e.prototype._itemRendered=function(t){var e=this;return setTimeout(function(){return e.fire("item",t,e.getHandle(t))}),""},e.prototype.childActive=function(t){var e=this.get(t);if(e&&e.items)for(var n=0;n<e.items.length;n++)if(!0===this.get(t+".items."+n+".active")||"function"==typeof e.items[n].active&&e.items[n].active()||this.get(t+".items."+n+".activeRef")&&this.get(e.items[n].activeRef)||this.childActive(t+".items."+n))return!0},e}(e);e.extendWith(a,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-wrapper",g:1},{t:16,r:"extra-attributes"},{n:"class-rmenu-vertical",t:13,f:[{t:2,x:{r:["~/horizontal"],s:"!_0"}}]},{n:"class-rmenu-horizontal",t:13,f:[{t:2,r:"~/horizontal"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-inner",g:1}],f:[{t:8,r:"items"}]}]}]}],e:{"!_0":function(t){return!t},"_0||_1":function(t,e){return t||e},'_0&&(_1||_2==="section")':function(t,e,n){return t&&(e||"section"===n)},"_0?_3.active(_1.getHandle((_2))):_3.active()":function(t,e,n,i){return t?i.active(e.getHandle(n)):i.active()},'typeof _0==="function"':function(t){return"function"==typeof t},'typeof _0==="boolean"':function(t){return"boolean"==typeof t},"_0.childActive(_1)":function(t,e){return t.childActive(e)},"_0!=null":function(t){return null!=t},"[_0.action(),_1._actioned()]":function(t,e){return[t.action(),e._actioned()]},"[_0._actioned()]":function(t){return[t._actioned()]},'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]':function(t,e,n){return[t&&e.popSiblingsIn(n),n.toggle(".open"),!1]},"_0||(_1&&_2[_1])":function(t,e,n){return t||e&&n[e]},'[{axis:"x"}]':function(){return[{axis:"x"}]},"_2&&_0&&_1.visibleItems(_2)":function(t,e,n){return n&&t&&e.visibleItems(n)},"[_0.popAllIn(_1),false]":function(t,e){return[t.popAllIn(e),!1]},'!_0||_0==="item"':function(t){return!t||"item"===t},'_0==="section"':function(t){return"section"===t},'_0==="container"':function(t){return"container"===t},'(!_0||_0==="item")&&_1':function(t,e){return(!t||"item"===t)&&e},"[_0.popAllIn(_1)]":function(t,e){return[t.popAllIn(e)]},"[_0]":function(t){return[t]},'typeof _0==="string"':function(t){return"string"==typeof t},'_0||"item"':function(t){return t||"item"},"_0._itemRendered((_1))":function(t,e){return t._itemRendered(e)},'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())':function(t,e,n){return void 0===e||"boolean"==typeof e&&e||"string"==typeof e&&t[e]||"function"==typeof e&&n.condition()}},p:{container:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:3,r:".content"}]}],n:50,r:".pad"},{t:4,f:[{t:3,r:".content"}],n:51,l:1}],n:50,r:".content"},{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-container-pad",g:1}],f:[{t:16,r:".contentPartial"}]}],n:50,r:".pad"},{t:4,f:[{t:16,r:".contentPartial"}],n:51,l:1}],n:50,r:".contentPartial",l:1}],section:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1}],f:[{t:4,f:[{t:2,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}]}],n:50,x:{r:[".title",".titlePartial"],s:"_0||_1"}}," ",{t:8,r:"children"}],children:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-items",g:1},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:[".popout"],s:"!_0"}},{t:4,f:[{n:"pop",t:72,v:"t0"}],n:51,l:1},{n:"class-rmenu-shrink",t:13,f:[{t:2,r:".shrink"}]}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popitems",g:1}],f:[{t:8,r:"items"}]}],n:50,r:".popout"},{t:4,f:[{t:8,r:"items"}],n:51,l:1}]}],n:50,x:{r:[".items.length",".open",".type"],s:'_0&&(_1||_2==="section")'}}],item:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-main",g:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".activeRef"}]}}]}],n:50,r:".activeRef"},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:[".active.length","@this","@context","."],s:"_0?_3.active(_1.getHandle((_2))):_3.active()"}}]}],n:50,x:{r:[".active"],s:'typeof _0==="function"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,r:".active"}]}],n:50,x:{r:[".active"],s:'typeof _0==="boolean"'},l:1},{t:4,f:[{n:"class-rmenu-active",t:13,f:[{t:2,x:{r:["@this","@keypath"],s:"_0.childActive(_1)"}}]}],n:50,r:".popout",l:1},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,r:".disabled"}]}],n:50,x:{r:[".disabled"],s:"_0!=null"}},{t:4,f:[{n:"class-rmenu-disabled",t:13,f:[{t:2,rx:{r:"~/",m:[{t:30,n:".disabledRef"}]}}]}],n:50,r:".disabledRef",l:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-left",g:1}],f:[{t:3,r:".left"}]}],n:50,r:".left"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-left",g:1}],f:[{t:16,r:".leftPartial"}]}],n:50,r:".leftPartial",l:1}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-title",g:1},{t:4,f:[{t:4,f:[{n:["click"],t:70,f:{r:[".","@this"],s:"[_0.action(),_1._actioned()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}},{t:4,f:[{t:16,r:".actionPartial"},{n:["click"],t:70,f:{r:["@this"],s:"[_0._actioned()]"}}],n:50,r:".actionPartial",l:1},{t:4,f:[{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}}],n:50,r:".items.length",l:1}],n:51,x:{r:[".disabled",".disabledRef","~/"],s:"_0||(_1&&_2[_1])"}}],f:[{t:4,f:[{t:3,r:".title"}],n:50,r:".title"},{t:4,f:[{t:16,r:".titlePartial"}],n:50,r:".titlePartial",l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"menu-right",g:1}],f:[{t:3,r:".right"}]}],n:50,r:".right"},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-right",g:1}],f:[{t:16,r:".rightPartial"}]}],n:50,r:".rightPartial",l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-expand",g:1},{n:["click"],t:70,f:{r:[".popout","@this","@context"],s:'[_0&&_1.popSiblingsIn((_2)),(_2).toggle(".open"),false]'}},{n:"expand",t:72,f:{r:[],s:'[{axis:"x"}]'},v:"t0"}]}],n:50,x:{r:[".items.length","@this",".items"],s:"_2&&_0&&_1.visibleItems(_2)"}}]}," ",{t:8,r:"children"}],items:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-popout-close",g:1},{n:["click"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1),false]"}}],f:["❌ Close"]}],n:50,r:".shrink"}," ",{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rmenu-entry",g:1},{t:4,f:[{n:"class-rmenu-item",t:13}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}},{t:4,f:[{n:"class-rmenu-section",t:13}],n:50,x:{r:[".type"],s:'_0==="section"'},l:1},{t:4,f:[{n:"class-rmenu-container",t:13}],n:50,x:{r:[".type"],s:'_0==="container"'},l:1},{n:"class-rmenu-expanded",t:13,f:[{t:2,r:".open"}]},{n:"class-rmenu-popout",t:13,f:[{t:2,x:{r:[".type",".popout"],s:'(!_0||_0==="item")&&_1'}}]},{t:4,f:[{n:"pop",t:72,v:"t0"},{t:4,f:[{n:["clickout"],t:70,f:{r:["@this","@keypath"],s:"[_0.popAllIn(_1)]"}}],n:50,r:".open"}," "],n:50,r:".popout"},{t:4,f:[{n:"expand",t:72,v:"t0"}],n:50,x:{r:["~/noExpand"],s:"!_0"},l:1},{t:4,f:[{t:8,r:".refPartial"}],n:50,r:".refPartial"},{t:4,f:[{n:"ref",t:71,f:{r:[".ref"],s:"[_0]"}}],n:50,x:{r:[".ref"],s:'typeof _0==="string"'},l:1},{t:4,f:[{t:16,r:".extra"}],n:50,r:".extra"}],f:[{t:8,x:{r:[".type"],s:'_0||"item"'}}," ",{t:4,f:[{t:2,x:{r:["@this","@context"],s:"_0._itemRendered((_1))"}}],n:50,x:{r:[".type"],s:'!_0||_0==="item"'}}]}],n:50,x:{r:["~/",".condition","."],s:'_1===undefined||(typeof _1==="boolean"&&_1)||(typeof _1==="string"&&_0[_1])||(typeof _1==="function"&&_2.condition())'}}],n:52,r:".items"}]}},css:function(t){return[function(t){var e=Object.assign({},t("raui.primary"),t("raui.menu.primary"));return e.popout=Object.assign({},t("raui.menu.popout"),t("raui.menu.primary.popout")),"\n .rmenu-wrapper {\n position: relative;\n z-index: 1;\n }\n .rmenu-wrapper.rmenu-vertical {\n min-height: 100%;\n }\n .rmenu {\n "+(t("raui.menu.font")?"font-family: "+t("raui.menu.font")+";":"")+"\n color: "+(e.bg||"#fff")+";\n background-color: "+(e.fg||"#222")+";\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n }\n .rmenu-wrapper.alt > .rmenu {\n color: "+(e.fga||"#222")+";\n background-color: "+(e.bg||"#fff")+";\n }\n .rmenu-inner {\n width: 100%;\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-item {\n border-top: 1px solid transparent;\n border-bottom: 1px solid transparent;\n transition: border 0.2s ease-in-out;\n }\n .rmenu-item:hover > .rmenu-main {\n background-color: "+(e.fga||"#07e")+";\n color: "+(e.bg||"#fff")+";\n }\n .rmenu-disabled {\n opacity: 0.5;\n cursor: not-allowed;\n }\n .rmenu-popout {\n border: none;\n }\n .rmenu-expanded {\n border-top: 0.0625em solid "+(e.bc||"#ccc")+";\n border-bottom: 0.0625em solid "+(e.bc||"#ccc")+";\n }\n .rmenu-popout.rmenu-expanded {\n border: none;\n }\n .rmenu-popout .rmenu-popout.rmenu-expanded {\n background-color: "+(e.popout.bga||e.bg||"#fff")+";\n color: "+(e.popout.fg||e.fg||"#222")+";\n }\n .rmenu-popitems {\n height: 100%;\n overflow-y: auto;\n }\n .rmenu-main {\n width: 100%;\n height: 100%;\n box-sizing: border-box;\n user-select: none;\n transition: 0.3s ease-in-out;\n transition-property: color, background-color;\n display: flex;\n align-items: center;\n min-height: 1em;\n }\n .rmenu-main.rmenu-active, .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(e.fga||"#07e")+";\n background-color: "+(e.bg||"#fff")+";\n }\n .rmenu-popout .rmenu-entry .rmenu-main.rmenu-active, .rmenu-popout .rmenu-item:hover > .rmenu-main.rmenu-active {\n color: "+(e.popout.bg||e.bg||"#fff")+";\n background-color: "+(e.popout.fga||e.fga||"#07e")+";\n }\n .rmenu-wrapper.alt .rmenu-main.rmenu.active {\n color: "+(e.bg||"#fff")+";\n background-color: "+(e.fg||"#222")+";\n }\n .rmenu-popout .rmenu-items .rmenu-item:hover > .rmenu-main {\n background-color: "+(e.popout.bga||"#f4f4f4")+";\n color: "+(e.popout.fg||"#222")+";\n }\n \n .rmenu-items {\n display: block;\n }\n .rmenu-right {\n padding-right: 0.4em; \n }\n .rmenu-left {\n padding-left: 0.4em;\n }\n .rmenu-expand {\n width: 1.5em;\n height: 1.5em;\n padding-left: 0.5em;\n cursor: pointer;\n position: relative;\n }\n .rmenu-expand:before {\n position: absolute;\n display: inline-block;\n top: 0.35em;\n content: ' ';\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out, left 0.2s ease-in-out;\n box-sizing: border-box;\n border-width: 0.25em;\n border-style: solid;\n border-left-color: transparent;\n border-top-color: transparent;\n }\n .rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-135deg);\n top: 0.65em;\n }\n \n .rmenu-popout > .rmenu-items {\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background-color: "+(e.popout.bg||e.bg||"#fff")+";\n color: "+(e.popout.fg||e.fg||"#222")+";\n box-sizing: border-box;\n border-right: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n z-index: -1;\n transition: box-shadow 0.2s ease-in-out;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: 100%;\n z-index: initial;\n box-shadow: 0.2em 0 0.2em rgba(0, 0, 0, 0.2);\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items {\n left: calc(100% + 1px);\n }\n \n .rmenu-popout > .rmenu-items.rmenu-shrink {\n left: 100%;\n z-index: 1;\n }\n .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink,\n .rmenu-popout.rmenu-expanded > .rmenu-items .rmenu-popout.rmenu-expanded > .rmenu-items.rmenu-shrink {\n left: 0;\n }\n \n .rmenu-popout > .rmenu-main > .rmenu-expand:before {\n transform: rotate(-45deg);\n top: 0.4em;\n }\n \n .rmenu-popout.rmenu-expanded > .rmenu-main > .rmenu-expand:before {\n transform: rotate(135deg);\n left: 0.75em;\n }\n \n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items {\n height: 100%;\n width: calc(100% + 1px);\n top: 0px;\n }\n .rmenu-popout > .rmenu-items .rmenu-popout > .rmenu-items.rmenu-shrink {\n height: 100%;\n }\n \n .rmenu-popout-close {\n color: "+(e.popout.fga||e.fga||"#07e")+";\n display: block;\n padding: 0.5em;\n cursor: pointer;\n }\n \n .rmenu-title {\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n cursor: pointer;\n padding: 0.5em;\n flex-grow: 1;\n }\n .rmenu-disabled > .rmenu-title {\n cursor: not-allowed;\n }\n .rmenu-item h1, .rmenu-item h2, .rmenu-item h3, .rmenu-item h4 {\n margin: 0;\n }\n \n .rmenu-section {\n padding: 0 0 0.75em 0;\n }\n .rmenu-section > .rmenu-main {\n cursor: default;\n font-size: 0.75em;\n opacity: 0.7;\n margin-bottom: 0.25em;\n }\n .rmenu-section > .rmenu-main .rmenu-title {\n cursor: default;\n }\n .rmenu-popout .rmenu-section:first-child > .rmenu-main {\n padding-top: 0;\n }\n .rmenu-popout .rmenu-section > .rmenu-main > .rmenu-title {\n font-size: 1.5em;\n text-align: center;\n padding: 0.75em;\n opacity: 1;\n font-weight: bold;\n color: "+(e.popout.fg||e.fg||"#222")+";\n background-color: "+(e.popout.bga||e.bga||"#f4f4f4")+";\n border-bottom: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n border-top: 1px solid "+(e.popout.bc||e.bc||"#ccc")+";\n }\n \n .rmenu-container {\n box-sizing: border-box;\n }\n \n .rmenu-container-pad {\n padding: 0.3em 0.3em 0.8em 0.3em;\n }\n "}.call(this,t)].join(" ")},cssId:"menu",noCssTransform:!0,noIntro:!0,nestedTransitions:!1,on:{construct:function(){var t=this.component;if(!t)return;var e=t.template.f||[],n=t.template.m?t.template.m.slice():[],i=t.template;t.template={e:i.e,f:i.f,t:i.t,m:n};var r=[];e.forEach(function(t){var e=function t(e){if("item"!==e.e&&"section"!==e.e&&"container"!==e.e)return;var i={};var r=[];var o;"item"!==e.e&&(i.type=e.e);e.m&&e.m.forEach(function(t){if("title"===t.n)"string"==typeof t.f?i.title=t.f:i.titlePartial={t:t.f};else if(70===t.t&&"action"===t.n[0])i.actionPartial={t:[{n:["click"],f:t.f,t:t.t}]};else if("guard"===t.n&&t.f&&1===t.f.length&&2===t.f[0].t){var o="_cnd"+n.length;i.condition=o,n.push({t:13,n:o,f:t.f})}else if("ref"===t.n){if("string"==typeof t.f)i.ref=t.f;else if(t.f&&1===t.f.length&&2===t.f[0].t){var s="_cnd"+n.length;n.push({t:13,n:s,f:t.f}),i.refPartials={t:[{t:71,n:"ref",f:{r:s,s:"[_0]"}}]}}}else if("active"===t.n){if(t.f&&1===t.f.length&&2===t.f[0].t){var a="_cnd"+n.length;i.activeRef=a,n.push({t:13,n:a,f:t.f})}}else if("open"===t.n)i.open=!0;else if("popout"===t.n)i.popout=!0;else if("container"===e.e&&"pad"===t.n)i.pad=!0;else if("disabled"===t.n)if(t.f&&1===t.f.length&&2===t.f[0].t){var u="_cnd"+n.length;i.disabledRef=u,n.push({t:13,n:u,f:t.f})}else 0===t.f&&(i.disabled=!0);else r.push(t)});r.length&&(i.extra={t:r});if("container"===e.e)return i.contentPartial={t:e.f},i.extra=r,i;e.f&&e.f.forEach(function(e){if("title"===e.e)1===e.f.length&&"string"==typeof e.f[0]?i.title=e.f[0]:i.titlePartial={t:e.f};else if("item"===e.e||"section"===e.e||"container"===e.e){var n=t(e);n&&(i.items||(i.items=[])).push(n)}else"left"===e.e?i.leftPartial={t:e.f}:"right"===e.e?i.rightPartial={t:e.f}:"string"==typeof e&&u.test(e)||(o||(o=[]),o.push(e))});!i.titlePartial&&o&&(i.titlePartial={t:o});o=null;return i}(t);e&&r.push(e)}),this._items=r},config:function(){this._items&&this.set("items",(this.get("items")||[]).concat(this._items),{shuffle:!0})}},attributes:["noExpand"],use:[(void 0===s&&(s={}),function(t){t.instance.transitions[s.name||"expand"]=r}),function(t){return void 0===t&&(t={}),function(e){e.instance.events[t.name||"clickout"]=o}}()],decorators:{ref:function(t,e){var n=this,i=e;n.refs||(n.refs={});var r={update:function(t){n.refs[i]===r&&delete n.refs[i],i=t,n.refs[i]=r},teardown:function(){n.refs[i]===r&&delete n.refs[i]}};return r.ctx=n.getContext(t),n.refs[i]=r,r}},transitions:{pop:function(t,e){var n=t.processParams(e,{duration:200,easing:"easeInOut"}),i=this.getContext(t.node),r=i.get(".shrink");if(t.isIntro){var o=t.node.getBoundingClientRect();function s(){for(var e=t.node.parentNode;e&&e.classList;){if(e.classList.contains("rmenu"))return e;if(e.parentNode.classList.contains("rmenu-popout"))return e;e=e.parentNode}}o.left+o.width>window.innerWidth?(setTimeout(function(){return i.set(".shrink",!0)}),r=!0,s().style.overflowX="hidden"):r?(setTimeout(function(){return i.set(".shrink",!1)}),s().style.overflowX="",r=!1):s().style.overflowX=""}else setTimeout(function(){return i.set("shrink",!1)});return t.isIntro?r?(t.setStyle("left","100%"),t.animateStyle("left",0,n)):(t.setStyle("left",0),t.setStyle("z-index",-1),t.animateStyle("left","100%",n)):r?(t.setStyle("left",0),t.animateStyle("left","100%",n)):(t.setStyle("left","100%"),t.setStyle("z-index",-1),t.animateStyle("left",0,n))}}});var u=/^\s*$/;var f=function(t,e,n){this.menu=t,this.parent=e,this.item=n},c={keypath:{configurable:!0},action:{configurable:!0},active:{configurable:!0},disabled:{configurable:!0},items:{configurable:!0},ref:{configurable:!0}};function l(t){return void 0===t&&(t={}),function(e){e.instance.components[t.name||"menu"]=a}}c.keypath.get=function(){if(!this.removed){if(!this.parent)return"items."+this.menu.get("items").indexOf(this.item);var t=this.parent.keypath+".items";return t+"."+this.menu.get(t).indexOf(this.item)}},c.action.get=function(){if(!this.removed)return this.item.action},c.action.set=function(t){return this.set(".action",t)},c.active.get=function(){if(!this.removed){var t=this.item;return t.activeRef?this.menu.get(t.activeRef):"function"==typeof t.active?t.active():t.active}},c.active.set=function(t){if(!this.removed){var e=this.item;return e.activeRef?this.menu.set(e.activeRef,t):this.set(".active",t)}},c.disabled.get=function(){if(!this.removed)return this.get(".disabled")},c.disabled.set=function(t){if(!this.removed)return this.set(".disabled",t)},c.items.get=function(){var t=this;return this.item.items?this.item.items.map(function(e){return new f(t.menu,t,e)}):[]},c.ref.get=function(){if(!this.removed)return this.item.ref},c.ref.set=function(t){return this.set(".ref",t)},f.prototype.addItem=function(t,e){if(this.removed)return!1;var n=this.keypath+".items";return"number"==typeof e?this.menu.splice(n,e,0,t):this.menu.push(n,t),new f(this.menu,this,t)},f.prototype.open=function(){if(this.removed)return!1;this.menu.set(this.keypath+".open",!0)},f.prototype.close=function(){if(this.removed)return!1;this.menu.set(this.keypath+".open",!1)},f.prototype.remove=function(){if(this.removed)return!1;var t=(this.parent?this.parent.keypath+".":"")+"items",e=this.menu.get(t);return this.menu.splice(t,e.indexOf(this.item),1),this.removed=!0,!0},f.prototype.get=function(t){if(this.removed)return!1;if(!t)return this.menu.get(this.keypath);var e=t.replace(/^[\.\/]*/,"");return this.menu.get(this.keypath+"."+e)},f.prototype.set=function(t,e){if(this.removed)return!1;var n=t.replace(/^[\.\/]*/,"");return this.menu.set(this.keypath+"."+n,e)},Object.defineProperties(f.prototype,c),i("RMMenu","components",a),t.Menu=a,t.plugin=l,t.default=l,Object.defineProperty(t,"__esModule",{value:!0})}); |
@@ -465,5 +465,13 @@ (function (global, factory) { | ||
var ks; | ||
if (opts.regex) { ks = keys.map(function (k) { return typeof k === 'string' ? new RegExp(k) : k; }); } | ||
else if (opts.group) { ks = { group: keys }; } | ||
else { ks = keys.map(function (k) { return ctx.resolve(k); }); } | ||
var keyList; | ||
function setKeys(keys) { | ||
var list = keys.join(','); | ||
if (keyList === list) { return false; } | ||
keyList = list; | ||
if (opts.regex) { ks = keys.map(function (k) { return typeof k === 'string' ? new RegExp(k) : k; }); } | ||
else if (opts.group) { ks = { group: keys }; } | ||
else { ks = keys.map(function (k) { return ctx.resolve(k); }); } | ||
return true; | ||
} | ||
setKeys(keys); | ||
@@ -485,9 +493,14 @@ var levels = opts.levels || Validator.defaults.levels; | ||
var fn; | ||
fn = function () { | ||
v.refresh(ks); | ||
fn = function (ev) { | ||
n.removeEventListener('blur', fn); | ||
n.removeEventListener('input', fn); | ||
tab = null; | ||
if (ev.type === 'blur') { | ||
v.refresh(ks); | ||
hook(); | ||
} | ||
}; | ||
tab = [n, fn]; | ||
n.addEventListener('blur', fn); | ||
n.addEventListener('input', fn); | ||
} | ||
@@ -497,2 +510,3 @@ } | ||
function hook() { | ||
if (tab) { return; } | ||
var level = v.level(ks, true); | ||
@@ -511,2 +525,13 @@ syncClass(node, levels, levels[levelMap[level]]); | ||
var res = { | ||
update: function update() { | ||
var keys = [], len = arguments.length; | ||
while ( len-- ) keys[ len ] = arguments[ len ]; | ||
var old = ks; | ||
if (setKeys(keys)) { | ||
v.unhook(old, hook); | ||
v.hook(ks, hook); | ||
hook(); | ||
} | ||
}, | ||
teardown: function teardown() { | ||
@@ -513,0 +538,0 @@ v.unhook(ks, hook); |
@@ -1,1 +0,1 @@ | ||
!function(r,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(r.RMValidate={},r.Ractive)}(this,function(r,n){"use strict";n=n&&n.hasOwnProperty("default")?n.default:n;var t=function(r,n){void 0===n&&(n=500),this.ractive=r,this.debounce=n,this.state={},this.hooks={},this.patternHooks=[],this.groupHooks={},this.checks=[],this.fns=[],this.many=[]};function e(r,n,t,e){var o=this,i=!1,a=this.checks.find(function(r){return r.keys===n});a||(a={keys:n,messages:[]},this.checks.push(a));var c=r.apply(this.ractive,t)||[];if(e)for(var f=0;f<c.length;f++)if(c[f][2]){var u=Array.isArray(c[f][2])?c[f][2]:[c[f][2]];c[f][2]=u.map(function(r){return"."===r[0]?e+r:r})}for(var h=0;h<a.messages.length;h++){for(var l=a.messages[h],p=l[0],v=l[1],y=l[2],g=!0,d=0;d<c.length;d++){var m=c[d],k=m[0],b=m[1],A=m[2];if(p===k&&v===b&&s(y)===s(A)){g=!1;break}}if(g){i=!0;for(var E=y?Array.isArray(y)?y:[y]:n,x=0;x<E.length;x++)for(var w=E[x],j=this.state[w]||[],O=0;O<j.length;O++)if(j[O][0]===p&&j[O][1]===v){j.splice(O,1);break}}}for(var H=0;H<c.length;H++){for(var L=c[H],I=L[0],D=L[1],R=L[2],W=!0,q=0;q<a.messages.length;q++){var C=a.messages[q],S=C[0],z=C[1],K=C[2];if(I===S&&D===z&&s(R)===s(K)){W=!1;break}}if(W){i=!0;for(var M=R?Array.isArray(R)?R:[R]:n,P=0;P<M.length;P++){var T=M[P];(this.state[T]||(this.state[T]=[])).push([I,D])}}}a.messages=c,i&&n.forEach(function(r){return o.notify(r,!0)})}function o(r,n,t){var e;return function(){for(var o=[],i=arguments.length;i--;)o[i]=arguments[i];e||(e=setTimeout(function(){n.apply(t,o),e=null},r))}}t.prototype.check=function(r,n,t,i){var a=Array.isArray(r)?r.slice():[r],s=a.concat(Array.isArray(n)?n:"string"==typeof n?[n]:[]);"function"==typeof n&&(i=t,t=n,n=[]);var c=[a,n,t,i&&i.group&&(Array.isArray(i.group)?i.group:[i.group])];this.fns.push(c);var f=this.ractive.observe(s.join(" "),o(this.debounce,function(){var r=this;e.call(this,t,a,s.map(function(n){return r.ractive.get(n)}))},this),{init:!i||!1!==i.init});return{cancel:function(){this.fns.splice(this.fns.indexOf(c),1),f.cancel()}}},t.prototype.checkList=function(r,n,t){var i=this,a={},s=0,c=function(t,c,f){if(Array.isArray(t)&&t.length!==s){if(s>t.length)for(var u=t.length;u<s;u++)a[u]&&(a[u].forEach(function(r){var n=r[0];r[1].cancel(),n.forEach(function(r){i.clear(r,!0),i.notify(r,!0,!0)});var t=i.fns.findIndex(function(r){return r[0]===n});i.fns.splice(t,1)}),delete a[u]);else for(var h=function(t){var s=r+"."+t,c=[],f={check:function(r,n,t,a){var f=(Array.isArray(r)?r.slice():[r]).map(function(r){return"."===r[0]?s+r:r}),u=f.concat((Array.isArray(n)?n:"string"==typeof n?[n]:[]).map(function(r){return"."===r[0]?s+r:r}));"function"==typeof n&&(a=t,t=n,n=[]),c.push([f,i.ractive.observe(u.join(" "),o(i.debounce,function(){var r=this;e.call(this,t,f,u.map(function(n){return r.ractive.get(n)}),s)},i),{init:!a||!1!==a.init})]),i.fns.push([f,n,t,a&&a.group&&(Array.isArray(a.group)?a.group:[a.group])]),f.prefix=s},checkList:function(r,n,t){c.push([[],i.checkList("."===r[0]?s+r:r,n,t)])},checkDefer:function(r,n,t){c.push([[],i.checkDefer("."===r[0]?s+r:r,n,t)])}};n(s,f,t),a[t]=c},l=s;l<t.length;l++)h(l);s=t.length}},f=this.ractive.observe(r,o(this.debounce,c),{init:!t||!1!==t.init}),u=r.split(/\s+/),h=[u,function(){u.forEach(function(r){var n=i.ractive.get(r);if(Array.isArray(n))for(var t=0;t<n.length;t++)c(n[t])})}];return this.many.push(h),{cancel:function(){var r=this,n=Object.keys(a);n.forEach(function(t){n[t].forEach(function(n){var t=n[0];n[1].cancel();var e=r.fns.findIndex(function(r){return r[0]===t});r.fns.splice(e,1)})});for(var t=this.many.length;t--;)this.many[t][1]===c&&this.many.splice(t,1);f.cancel()}}},t.prototype.checkDefer=function(r,n,t){var i=this,a={},s=function(r,t,s,c){if(null==r&&a[s])a[s].forEach(function(r){var n=r[0];r[1].cancel(),n.forEach(function(r){i.clear(r,!0),i.notify(r,!0,!0)});var t=i.fns.findIndex(function(r){return r[0]===n});i.fns.splice(t,1)}),delete a[s];else if(null!=r&&!a[s]){var f=[],u={check:function(r,n,t,a){var c=(Array.isArray(r)?r.slice():[r]).map(function(r){return"."===r[0]?s+r:r}),u=c.concat((Array.isArray(n)?n:"string"==typeof n?[n]:[]).map(function(r){return"."===r[0]?s+r:r}));"function"==typeof n&&(a=t,t=n,n=[]),f.push([c,i.ractive.observe(u.join(" "),o(i.debounce,function(){var r=this;e.call(this,t,c,u.map(function(n){return r.ractive.get(n)}),s)},i),{init:!a||!1!==a.init})]),i.fns.push([c,n,t,a&&a.group&&(Array.isArray(a.group)?a.group:[a.group])]),c.prefix=s},checkList:function(r,n,t){f.push([[],i.checkList("."===r[0]?s+r:r,n,t)])},checkDefer:function(r,n,t){f.push([[],i.checkDefer("."===r[0]?s+r:r,n,t)])}};n(s,u,c),a[s]=f}},c=this.ractive.observe(r,o(this.debounce,s),{init:!t||!1!==t.init}),f=r.split(/\s+/),u=[f,function(){f.forEach(function(r){var n=i.ractive.get(r);n&&s(n,0,r)})}];return this.many.push(u),{cancel:function(){var r=this,n=Object.keys(a);n.forEach(function(t){n[t].forEach(function(n){var t=n[0];n[1].cancel();var e=r.fns.findIndex(function(r){return r[0]===t});r.fns.splice(e,1)})});for(var t=this.many.length;t--;)this.many[t][1]===s&&this.many.splice(t,1);c.cancel()}}},t.prototype.refresh=function(r,n){var t=this;void 0===n&&(n=!0);var o=Array.isArray(r)?r:[r];o.forEach(function(r){if(r.test)for(var n=0;n<t.many.length;n++){var e=t.many[n],o=e[0],i=e[1];o.find(function(n){return r.test(n)})&&i()}else for(var a=0;a<t.many.length;a++){var s=t.many[a],c=s[0],f=s[1];c.includes(r)&&f()}}),o.forEach(function(r){r.test?t.fns.forEach(function(n){var o=n[0],i=n[1],a=n[2];return o.find(function(n){return r.test(n)})&&e.call(t,a,o,o.concat(i).map(function(r){return t.ractive.get(r)}),o.prefix)}):t.fns.forEach(function(n){var o=n[0],i=n[1],a=n[2];return o.includes(r)&&e.call(t,a,o,o.concat(i).map(function(r){return t.ractive.get(r)}),o.prefix)})})},t.prototype.notify=function(r,t,e){var o=this;if(t){var i=n.splitKeypath(r);for(i.pop();i.length;){var a=n.joinKeys.apply(n,i),s=this.hooks[a];s&&s.forEach(function(r){return r()}),i.pop()}}if(this.hooks[r]&&this.hooks[r].forEach(function(r){return r()}),e){var c=r+".";Object.keys(this.hooks).forEach(function(r){r.startsWith(c)&&o.hooks[r].forEach(function(r){return r()})})}for(var f=this.patternHooks,u=0;u<f.length;u++)f[u][0].test(r)&&f[u][1]();for(var h=[],l=0;l<this.fns.length;l++){var p=this.fns[l],v=p[0],y=p[3];y&&Array.isArray(v)&&v.includes(r)&&y.forEach(function(r){return!h.includes(r)&&h.push(r)})}for(var g=0;g<h.length;g++){(this.groupHooks[h[g]]||[]).forEach(function(r){return r()})}},t.prototype.clear=function(r,n){var t=this;if(delete this.state[r],n){var e=r+".";Object.keys(this.state).forEach(function(r){r.startsWith(e)&&delete t.state[r]})}},t.prototype.level=function(r,n){void 0===n&&(n=!0),r.group&&(r=c(this,r.group));for(var t=Array.isArray(r)?r:[r],e="none",o=0;o<t.length;o++){var i=t[o];if("string"==typeof i)for(var a=this.state[i]||[],s=0;s<a.length;s++){var f=a[s][0];if("error"===f)return"error";"warn"===f?e="warn":"info"===f&&"warn"!==e&&(e="warn")}if(n||i.test)for(var u=this.state,h=Object.keys(u),l=i+".",p=0;p<h.length;p++){var v=h[p];if(i.test?i.test(v):v.startsWith(l))for(var y=u[v],g=0;g<y.length;g++){var d=y[g][0];if("error"===d)return"error";"warn"===d?e="warn":"info"===d&&"warn"!==e&&(e="info")}}}return e},t.prototype.messages=function(r,n){var t=this;r.group&&(r=c(this,r.group));var e=[];return(Array.isArray(r)?r:[r]).forEach(function(r){if("string"==typeof r){var o=t.state[r]||[];e.push.apply(e,o)}if(n||r.test){var i=t.state,a=Object.keys(i),s=r+".";a.forEach(function(n){(r.test?r.test(n):n.startsWith(s))&&e.push.apply(e,i[n])})}}),e},t.prototype.hook=function(r,n){var t=this;r.group?(Array.isArray(r.group)?r.group:[r.group]).forEach(function(r){return(t.groupHooks[r]||(t.groupHooks[r]=[])).push(n)}):(Array.isArray(r)?r:[r]).forEach(function(r){"string"==typeof r?(t.hooks[r]||(t.hooks[r]=[])).push(n):r.test&&t.patternHooks.push([r,n])});return{cancel:function(){return t.unhook(r,n)}}},t.prototype.unhook=function(r,n){var t=this;r.group?(Array.isArray(r.group)?r.group:[r.group]).forEach(function(r){var e=t.groupHooks[r]||[],o=e.indexOf(n);e.splice(o,1)}):(Array.isArray(r)?r:[r]).forEach(function(r){if("string"==typeof r){var e=t.hooks[r]||[],o=e.indexOf(n);e.splice(o,1)}else if(r.test){var i=t.patternHooks.findIndex(function(t){return t[0]===r&&t[1]===n});t.patternHooks.splice(i,1)}})},t.prototype.decorator=function(r){void 0===r&&(r={});var e=this;return function(o){for(var s=[],c=arguments.length-1;c-- >0;)s[c]=arguments[c+1];var u,h=this.getLocalContext(),l=h.resolve();u=r.regex?s.map(function(r){return"string"==typeof r?new RegExp(r):r}):r.group?{group:s}:s.map(function(r){return h.resolve(r)});var p,v,y=r.levels||t.defaults.levels,g=o.style.position;if(r.indicator&&!g&&(o.style.position="relative"),r.indicator&&(f||(n.addCSS("validation-decorator","\n span.valid-indicator {\n display: none;\n position: absolute;\n top: 0.25em;\n right: 0.5em;\n width: 1em;\n height: 1em;\n border-radius: 1em;\n z-index: 19;\n }\n span.valid-indicator:after {\n color: #fff;\n width: 100%;\n display: block;\n font-weight: bold;\n text-align: center;\n line-height: 1.1em;\n font-size: 1.1em;\n }\n .none > span.valid-indicator {\n display: flex;\n background-color: #16ab39;\n }\n .error > span.valid-indicator {\n display: flex;\n background-color: #ca3c3c;\n }\n .warn > span.valid-indicator {\n display: flex;\n background-color: #f79e0b;\n }\n .info > span.valid-indicator {\n display: flex;\n background-color: #1f5b93;\n }\n "),f=!0),(p=document.createElement("span")).setAttribute("class","valid-indicator"),o.appendChild(p)),r.tab&&!r.regex){var d,m=o.querySelector("input,select,textarea");if(m)d=function(){e.refresh(u),m.removeEventListener("blur",d),v=null},v=[m,d],m.addEventListener("blur",d)}function k(){var n=e.level(u,!0);a(o,y,y[i[n]]),r.indicator&&("none"!==n?p.setAttribute("title",function(r){if(1===r.length)return r[0][1].join("\n");return r.map(function(r){return r[0]+":\n"+r[1].join("\n")}).join("\n\n")}(function(r){var n=[],t=r.filter(function(r){return"error"===r[0]});t.length&&n.push(["Errors",t.map(function(r){return r[1]})]);(t=r.filter(function(r){return"warn"===r[0]})).length&&n.push(["Warnings",t.map(function(r){return r[1]})]);(t=r.filter(function(r){return"info"===r[0]||"none"===r[0]})).length&&n.push(["Info",t.map(function(r){return r[1]})]);return n}(e.messages(u,!0)))):p.setAttribute("title",""))}e.hook(u,k),r.tab||r.regex||setTimeout(k,e.debounce||500);var b={teardown:function(){e.unhook(u,k),a(o,y),o.style.position=g,p&&p.remove(),v&&v[0].removeEventListener("blur",v[1])}};return r.regex?b.update=function(){for(var n=[],t=arguments.length;t--;)n[t]=arguments[t];var o=h.resolve();e.unhook(u,k),u=r.regex?n.map(function(r){return"string"==typeof r?new RegExp(r):r}):n.map(function(r){return h.resolve(r)}),e.hook(u,k),l=o,k()}:r.group||(b.shuffled=function(){var n=h.resolve();n!==l&&(e.unhook(u,k),u=r.regex?s.map(function(r){return"string"==typeof r?new RegExp(r):r}):s.map(function(r){return h.resolve(r)}),e.hook(u,k),l=n,k())}),b}},t.defaults={levels:["","info","warn","error"]};var i={none:0,info:1,warn:2,error:3};function a(r,n,t){var e=r.classList;n.forEach(function(r){r&&t!==r&&e.contains(r)&&e.remove(r)}),t&&!e.contains(t)&&e.add(t)}function s(r){return"string"==typeof r?r:Array.isArray(r)?r.join(","):void 0}function c(r,n){for(var t=Array.isArray(n)?n:[n],e=[],o=0;o<t.length;o++)for(var i=r.fns,a=0;a<i.length;a++){var s=i[a][0];if(Array.isArray(s)&&i[a][3]&&i[a][3].includes(t[o]))for(var c=0;c<s.length;c++)e.includes(s[c])||e.push(s[c])}return e}var f=!1;var u="should probably";r.Validator=t,r.required=function(r,n){return void 0===n&&(n="error"),function(t){if(!t)return[[n,r+" "+("error"!==n?"should probably be provided":"is required")]]}},r.lt=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e>=n)return[[t,r+" "+("error"!==t?u:"must")+" be at most "+(n-1)]]}},r.lte=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e>n)return[[t,r+" "+("error"!==t?u:"must")+" be at most "+n]]}},r.gt=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e<=n)return[[t,r+" "+("error"!==t?u:"must")+" be at least "+(n+1)]]}},r.gte=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e<=n)return[[t,r+" "+("error"!==t?u:"must")+" be at least "+n]]}},r.between=function(r,n,t,e){return void 0===e&&(e="error"),function(o){if(o<n||o>t)return[[e,r+" "+("error"!==e?u:"must")+" be between "+n+" and "+t]]}},Object.defineProperty(r,"__esModule",{value:!0})}); | ||
!function(r,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(r.RMValidate={},r.Ractive)}(this,function(r,n){"use strict";n=n&&n.hasOwnProperty("default")?n.default:n;var t=function(r,n){void 0===n&&(n=500),this.ractive=r,this.debounce=n,this.state={},this.hooks={},this.patternHooks=[],this.groupHooks={},this.checks=[],this.fns=[],this.many=[]};function e(r,n,t,e){var o=this,i=!1,a=this.checks.find(function(r){return r.keys===n});a||(a={keys:n,messages:[]},this.checks.push(a));var f=r.apply(this.ractive,t)||[];if(e)for(var u=0;u<f.length;u++)if(f[u][2]){var c=Array.isArray(f[u][2])?f[u][2]:[f[u][2]];f[u][2]=c.map(function(r){return"."===r[0]?e+r:r})}for(var h=0;h<a.messages.length;h++){for(var p=a.messages[h],l=p[0],v=p[1],y=p[2],d=!0,g=0;g<f.length;g++){var m=f[g],k=m[0],b=m[1],A=m[2];if(l===k&&v===b&&s(y)===s(A)){d=!1;break}}if(d){i=!0;for(var E=y?Array.isArray(y)?y:[y]:n,x=0;x<E.length;x++)for(var w=E[x],j=this.state[w]||[],L=0;L<j.length;L++)if(j[L][0]===l&&j[L][1]===v){j.splice(L,1);break}}}for(var O=0;O<f.length;O++){for(var H=f[O],I=H[0],D=H[1],R=H[2],W=!0,q=0;q<a.messages.length;q++){var C=a.messages[q],S=C[0],z=C[1],K=C[2];if(I===S&&D===z&&s(R)===s(K)){W=!1;break}}if(W){i=!0;for(var M=R?Array.isArray(R)?R:[R]:n,P=0;P<M.length;P++){var T=M[P];(this.state[T]||(this.state[T]=[])).push([I,D])}}}a.messages=f,i&&n.forEach(function(r){return o.notify(r,!0)})}function o(r,n,t){var e;return function(){for(var o=[],i=arguments.length;i--;)o[i]=arguments[i];e||(e=setTimeout(function(){n.apply(t,o),e=null},r))}}t.prototype.check=function(r,n,t,i){var a=Array.isArray(r)?r.slice():[r],s=a.concat(Array.isArray(n)?n:"string"==typeof n?[n]:[]);"function"==typeof n&&(i=t,t=n,n=[]);var f=[a,n,t,i&&i.group&&(Array.isArray(i.group)?i.group:[i.group])];this.fns.push(f);var u=this.ractive.observe(s.join(" "),o(this.debounce,function(){var r=this;e.call(this,t,a,s.map(function(n){return r.ractive.get(n)}))},this),{init:!i||!1!==i.init});return{cancel:function(){this.fns.splice(this.fns.indexOf(f),1),u.cancel()}}},t.prototype.checkList=function(r,n,t){var i=this,a={},s=0,f=function(t,f,u){if(Array.isArray(t)&&t.length!==s){if(s>t.length)for(var c=t.length;c<s;c++)a[c]&&(a[c].forEach(function(r){var n=r[0];r[1].cancel(),n.forEach(function(r){i.clear(r,!0),i.notify(r,!0,!0)});var t=i.fns.findIndex(function(r){return r[0]===n});i.fns.splice(t,1)}),delete a[c]);else for(var h=function(t){var s=r+"."+t,f=[],u={check:function(r,n,t,a){var u=(Array.isArray(r)?r.slice():[r]).map(function(r){return"."===r[0]?s+r:r}),c=u.concat((Array.isArray(n)?n:"string"==typeof n?[n]:[]).map(function(r){return"."===r[0]?s+r:r}));"function"==typeof n&&(a=t,t=n,n=[]),f.push([u,i.ractive.observe(c.join(" "),o(i.debounce,function(){var r=this;e.call(this,t,u,c.map(function(n){return r.ractive.get(n)}),s)},i),{init:!a||!1!==a.init})]),i.fns.push([u,n,t,a&&a.group&&(Array.isArray(a.group)?a.group:[a.group])]),u.prefix=s},checkList:function(r,n,t){f.push([[],i.checkList("."===r[0]?s+r:r,n,t)])},checkDefer:function(r,n,t){f.push([[],i.checkDefer("."===r[0]?s+r:r,n,t)])}};n(s,u,t),a[t]=f},p=s;p<t.length;p++)h(p);s=t.length}},u=this.ractive.observe(r,o(this.debounce,f),{init:!t||!1!==t.init}),c=r.split(/\s+/),h=[c,function(){c.forEach(function(r){var n=i.ractive.get(r);if(Array.isArray(n))for(var t=0;t<n.length;t++)f(n[t])})}];return this.many.push(h),{cancel:function(){var r=this,n=Object.keys(a);n.forEach(function(t){n[t].forEach(function(n){var t=n[0];n[1].cancel();var e=r.fns.findIndex(function(r){return r[0]===t});r.fns.splice(e,1)})});for(var t=this.many.length;t--;)this.many[t][1]===f&&this.many.splice(t,1);u.cancel()}}},t.prototype.checkDefer=function(r,n,t){var i=this,a={},s=function(r,t,s,f){if(null==r&&a[s])a[s].forEach(function(r){var n=r[0];r[1].cancel(),n.forEach(function(r){i.clear(r,!0),i.notify(r,!0,!0)});var t=i.fns.findIndex(function(r){return r[0]===n});i.fns.splice(t,1)}),delete a[s];else if(null!=r&&!a[s]){var u=[],c={check:function(r,n,t,a){var f=(Array.isArray(r)?r.slice():[r]).map(function(r){return"."===r[0]?s+r:r}),c=f.concat((Array.isArray(n)?n:"string"==typeof n?[n]:[]).map(function(r){return"."===r[0]?s+r:r}));"function"==typeof n&&(a=t,t=n,n=[]),u.push([f,i.ractive.observe(c.join(" "),o(i.debounce,function(){var r=this;e.call(this,t,f,c.map(function(n){return r.ractive.get(n)}),s)},i),{init:!a||!1!==a.init})]),i.fns.push([f,n,t,a&&a.group&&(Array.isArray(a.group)?a.group:[a.group])]),f.prefix=s},checkList:function(r,n,t){u.push([[],i.checkList("."===r[0]?s+r:r,n,t)])},checkDefer:function(r,n,t){u.push([[],i.checkDefer("."===r[0]?s+r:r,n,t)])}};n(s,c,f),a[s]=u}},f=this.ractive.observe(r,o(this.debounce,s),{init:!t||!1!==t.init}),u=r.split(/\s+/),c=[u,function(){u.forEach(function(r){var n=i.ractive.get(r);n&&s(n,0,r)})}];return this.many.push(c),{cancel:function(){var r=this,n=Object.keys(a);n.forEach(function(t){n[t].forEach(function(n){var t=n[0];n[1].cancel();var e=r.fns.findIndex(function(r){return r[0]===t});r.fns.splice(e,1)})});for(var t=this.many.length;t--;)this.many[t][1]===s&&this.many.splice(t,1);f.cancel()}}},t.prototype.refresh=function(r,n){var t=this;void 0===n&&(n=!0);var o=Array.isArray(r)?r:[r];o.forEach(function(r){if(r.test)for(var n=0;n<t.many.length;n++){var e=t.many[n],o=e[0],i=e[1];o.find(function(n){return r.test(n)})&&i()}else for(var a=0;a<t.many.length;a++){var s=t.many[a],f=s[0],u=s[1];f.includes(r)&&u()}}),o.forEach(function(r){r.test?t.fns.forEach(function(n){var o=n[0],i=n[1],a=n[2];return o.find(function(n){return r.test(n)})&&e.call(t,a,o,o.concat(i).map(function(r){return t.ractive.get(r)}),o.prefix)}):t.fns.forEach(function(n){var o=n[0],i=n[1],a=n[2];return o.includes(r)&&e.call(t,a,o,o.concat(i).map(function(r){return t.ractive.get(r)}),o.prefix)})})},t.prototype.notify=function(r,t,e){var o=this;if(t){var i=n.splitKeypath(r);for(i.pop();i.length;){var a=n.joinKeys.apply(n,i),s=this.hooks[a];s&&s.forEach(function(r){return r()}),i.pop()}}if(this.hooks[r]&&this.hooks[r].forEach(function(r){return r()}),e){var f=r+".";Object.keys(this.hooks).forEach(function(r){r.startsWith(f)&&o.hooks[r].forEach(function(r){return r()})})}for(var u=this.patternHooks,c=0;c<u.length;c++)u[c][0].test(r)&&u[c][1]();for(var h=[],p=0;p<this.fns.length;p++){var l=this.fns[p],v=l[0],y=l[3];y&&Array.isArray(v)&&v.includes(r)&&y.forEach(function(r){return!h.includes(r)&&h.push(r)})}for(var d=0;d<h.length;d++){(this.groupHooks[h[d]]||[]).forEach(function(r){return r()})}},t.prototype.clear=function(r,n){var t=this;if(delete this.state[r],n){var e=r+".";Object.keys(this.state).forEach(function(r){r.startsWith(e)&&delete t.state[r]})}},t.prototype.level=function(r,n){void 0===n&&(n=!0),r.group&&(r=f(this,r.group));for(var t=Array.isArray(r)?r:[r],e="none",o=0;o<t.length;o++){var i=t[o];if("string"==typeof i)for(var a=this.state[i]||[],s=0;s<a.length;s++){var u=a[s][0];if("error"===u)return"error";"warn"===u?e="warn":"info"===u&&"warn"!==e&&(e="warn")}if(n||i.test)for(var c=this.state,h=Object.keys(c),p=i+".",l=0;l<h.length;l++){var v=h[l];if(i.test?i.test(v):v.startsWith(p))for(var y=c[v],d=0;d<y.length;d++){var g=y[d][0];if("error"===g)return"error";"warn"===g?e="warn":"info"===g&&"warn"!==e&&(e="info")}}}return e},t.prototype.messages=function(r,n){var t=this;r.group&&(r=f(this,r.group));var e=[];return(Array.isArray(r)?r:[r]).forEach(function(r){if("string"==typeof r){var o=t.state[r]||[];e.push.apply(e,o)}if(n||r.test){var i=t.state,a=Object.keys(i),s=r+".";a.forEach(function(n){(r.test?r.test(n):n.startsWith(s))&&e.push.apply(e,i[n])})}}),e},t.prototype.hook=function(r,n){var t=this;r.group?(Array.isArray(r.group)?r.group:[r.group]).forEach(function(r){return(t.groupHooks[r]||(t.groupHooks[r]=[])).push(n)}):(Array.isArray(r)?r:[r]).forEach(function(r){"string"==typeof r?(t.hooks[r]||(t.hooks[r]=[])).push(n):r.test&&t.patternHooks.push([r,n])});return{cancel:function(){return t.unhook(r,n)}}},t.prototype.unhook=function(r,n){var t=this;r.group?(Array.isArray(r.group)?r.group:[r.group]).forEach(function(r){var e=t.groupHooks[r]||[],o=e.indexOf(n);e.splice(o,1)}):(Array.isArray(r)?r:[r]).forEach(function(r){if("string"==typeof r){var e=t.hooks[r]||[],o=e.indexOf(n);e.splice(o,1)}else if(r.test){var i=t.patternHooks.findIndex(function(t){return t[0]===r&&t[1]===n});t.patternHooks.splice(i,1)}})},t.prototype.decorator=function(r){void 0===r&&(r={});var e=this;return function(o){for(var s=[],f=arguments.length-1;f-- >0;)s[f]=arguments[f+1];var c,h,p=this.getLocalContext(),l=p.resolve();function v(n){var t=n.join(",");return h!==t&&(h=t,c=r.regex?n.map(function(r){return"string"==typeof r?new RegExp(r):r}):r.group?{group:n}:n.map(function(r){return p.resolve(r)}),!0)}v(s);var y,d,g=r.levels||t.defaults.levels,m=o.style.position;if(r.indicator&&!m&&(o.style.position="relative"),r.indicator&&(u||(n.addCSS("validation-decorator","\n span.valid-indicator {\n display: none;\n position: absolute;\n top: 0.25em;\n right: 0.5em;\n width: 1em;\n height: 1em;\n border-radius: 1em;\n z-index: 19;\n }\n span.valid-indicator:after {\n color: #fff;\n width: 100%;\n display: block;\n font-weight: bold;\n text-align: center;\n line-height: 1.1em;\n font-size: 1.1em;\n }\n .none > span.valid-indicator {\n display: flex;\n background-color: #16ab39;\n }\n .error > span.valid-indicator {\n display: flex;\n background-color: #ca3c3c;\n }\n .warn > span.valid-indicator {\n display: flex;\n background-color: #f79e0b;\n }\n .info > span.valid-indicator {\n display: flex;\n background-color: #1f5b93;\n }\n "),u=!0),(y=document.createElement("span")).setAttribute("class","valid-indicator"),o.appendChild(y)),r.tab&&!r.regex){var k,b=o.querySelector("input,select,textarea");if(b)k=function(r){b.removeEventListener("blur",k),b.removeEventListener("input",k),d=null,"blur"===r.type&&(e.refresh(c),A())},d=[b,k],b.addEventListener("blur",k),b.addEventListener("input",k)}function A(){if(!d){var n=e.level(c,!0);a(o,g,g[i[n]]),r.indicator&&("none"!==n?y.setAttribute("title",function(r){if(1===r.length)return r[0][1].join("\n");return r.map(function(r){return r[0]+":\n"+r[1].join("\n")}).join("\n\n")}(function(r){var n=[],t=r.filter(function(r){return"error"===r[0]});t.length&&n.push(["Errors",t.map(function(r){return r[1]})]);(t=r.filter(function(r){return"warn"===r[0]})).length&&n.push(["Warnings",t.map(function(r){return r[1]})]);(t=r.filter(function(r){return"info"===r[0]||"none"===r[0]})).length&&n.push(["Info",t.map(function(r){return r[1]})]);return n}(e.messages(c,!0)))):y.setAttribute("title",""))}}e.hook(c,A),r.tab||r.regex||setTimeout(A,e.debounce||500);var E={update:function(){for(var r=[],n=arguments.length;n--;)r[n]=arguments[n];var t=c;v(r)&&(e.unhook(t,A),e.hook(c,A),A())},teardown:function(){e.unhook(c,A),a(o,g),o.style.position=m,y&&y.remove(),d&&d[0].removeEventListener("blur",d[1])}};return r.regex?E.update=function(){for(var n=[],t=arguments.length;t--;)n[t]=arguments[t];var o=p.resolve();e.unhook(c,A),c=r.regex?n.map(function(r){return"string"==typeof r?new RegExp(r):r}):n.map(function(r){return p.resolve(r)}),e.hook(c,A),l=o,A()}:r.group||(E.shuffled=function(){var n=p.resolve();n!==l&&(e.unhook(c,A),c=r.regex?s.map(function(r){return"string"==typeof r?new RegExp(r):r}):s.map(function(r){return p.resolve(r)}),e.hook(c,A),l=n,A())}),E}},t.defaults={levels:["","info","warn","error"]};var i={none:0,info:1,warn:2,error:3};function a(r,n,t){var e=r.classList;n.forEach(function(r){r&&t!==r&&e.contains(r)&&e.remove(r)}),t&&!e.contains(t)&&e.add(t)}function s(r){return"string"==typeof r?r:Array.isArray(r)?r.join(","):void 0}function f(r,n){for(var t=Array.isArray(n)?n:[n],e=[],o=0;o<t.length;o++)for(var i=r.fns,a=0;a<i.length;a++){var s=i[a][0];if(Array.isArray(s)&&i[a][3]&&i[a][3].includes(t[o]))for(var f=0;f<s.length;f++)e.includes(s[f])||e.push(s[f])}return e}var u=!1;var c="should probably";r.Validator=t,r.required=function(r,n){return void 0===n&&(n="error"),function(t){if(!t)return[[n,r+" "+("error"!==n?"should probably be provided":"is required")]]}},r.lt=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e>=n)return[[t,r+" "+("error"!==t?c:"must")+" be at most "+(n-1)]]}},r.lte=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e>n)return[[t,r+" "+("error"!==t?c:"must")+" be at most "+n]]}},r.gt=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e<=n)return[[t,r+" "+("error"!==t?c:"must")+" be at least "+(n+1)]]}},r.gte=function(r,n,t){return void 0===t&&(t="error"),function(e){if(e<=n)return[[t,r+" "+("error"!==t?c:"must")+" be at least "+n]]}},r.between=function(r,n,t,e){return void 0===e&&(e="error"),function(o){if(o<n||o>t)return[[e,r+" "+("error"!==e?c:"must")+" be between "+n+" and "+t]]}},Object.defineProperty(r,"__esModule",{value:!0})}); |
@@ -1,1 +0,1 @@ | ||
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(t.RMWindow={},t.Ractive)}(this,function(t,n){"use strict";var e="default"in n?n.default:n,o="undefined"!=typeof window?window:null;function i(t,n,e){if(o&&o.Ractive&&"object"==typeof o.Ractive[n]){var i=document.currentScript;if(i||(i=(i=document.querySelectorAll("script"))[i.length-1]),i){var r=i.getAttribute("data-alias");r&&(r=(r=r.split("&")).reduce(function(t,n){var e=n.split("="),o=e[0],i=e[1];return t[o]=i,t},{})),Ractive[n][r&&r[t]||t]=e}}}function r(t,n){var e=t.processParams(n,{duration:200,easing:"easeInOut"});return new Promise(function(n){requestAnimationFrame(function(){t.setStyle("overflow","hidden");var o="x"===e.axis?"width":"height";if(t.isIntro||e.intro){var i=t.getStyle(o);t.setStyle(o,0),t.setStyle("opacity",0),n(t.animateStyle(o,i,e).then(function(){return t.animateStyle("opacity",1,e)}).then(function(){t.setStyle(o,""),t.setStyle("overflow","")}))}else t.setStyle(o,t.getStyle(o)),t.setStyle("opacity",1),n(t.animateStyle("opacity",0,e).then(function(){return t.animateStyle(o,0,e)}))})})}i("expand","transitions",r);var s={timeout:6e3,top:!0};var a=function(t,n){this.holder=t,this.data=n},l={message:{configurable:!0},more:{configurable:!0},showMore:{configurable:!0},left:{configurable:!0},right:{configurable:!0},top:{configurable:!0},bottom:{configurable:!0},center:{configurable:!0},context:{configurable:!0},type:{configurable:!0},class:{configurable:!0},dismissable:{configurable:!0},closeButton:{configurable:!0},buttons:{configurable:!0},live:{configurable:!0},closed:{configurable:!0}};a.prototype.close=function(t){var n=this;return this.data.timeout=t,this.data===this.holder.active?(this.holder.tm&&clearTimeout(this.holder.tm),t?this.holder.tm=setTimeout(function(){n.data.close(),n.holder.tm=null},t):this.data.close()):t?this.data.timeout=t:this.data.close(),this.closed},a.prototype.cancelClose=function(){this.data===this.holder.active?(clearTimeout(this.holder.tm),this.holder.tm=null):this.data.timeout=0},a.prototype.updateButtons=function(){this.data===this.holder.active&&this.data.instance.update("_toast.buttons")},a.prototype.set=function(t,e){if("object"==typeof t){for(var o in t)this.data[o]=t[o];return this.data===this.holder.active?this.data.instance.update("_toast"):Promise.resolve()}return this.data[t]=e,this.data===this.holder.active?this.data.instance.update("_toast."+n.Ractive.escapeKey(t)):Promise.resolve()},l.message.get=function(){return this.data.message},l.message.set=function(t){this.data.message=t,this.data===this.holder.active&&this.data.instance.update("_toast.message")},l.more.get=function(){return this.data.more},l.more.set=function(t){this.data.more=t,this.data===this.holder.active&&this.data.instance.update("_toast.more")},l.showMore.get=function(){return this.data.showMore},l.showMore.set=function(t){this.data.showMore=t,this.data===this.holder.active&&this.data.instance.update("_toast.showMore")},l.left.get=function(){return this.data.left},l.left.set=function(t){this.data.left=t,this.data.right=!1,this.data===this.holder.active&&this.data.instance.update("_toast.left")&&this.data.instance.update("_toast.right")},l.right.get=function(){return this.data.right},l.right.set=function(t){this.data.right=t,this.data.left=!1,this.data===this.holder.active&&this.data.instance.update("_toast.right")&&this.data.instance.update("_toast.left")},l.top.get=function(){return!this.data.bottom},l.top.set=function(t){this.data.bottom=!t,this.data===this.holder.active&&this.data.instance.update("_toast.bottom")},l.bottom.get=function(){return this.data.bottom},l.bottom.set=function(t){this.data.bottom=t,this.data===this.holder.active&&this.data.instance.update("_toast.bottom")},l.center.get=function(){return!this.data.left&&!this.data.right},l.center.set=function(t){this.data.left=!1,this.data.right=!1,this.data===this.holder.active&&this.data.instance.update("_toast.right"),this.data.instance.update("_toast.left")},l.context.get=function(){return this.data.context},l.context.set=function(t){this.data.context=t,this.data===this.holder.active&&this.data.instance.update("_toast.context")},l.type.get=function(){return this.data.type},l.type.set=function(t){this.data.type=t,this.data===this.holder.active&&this.data.instance.update("_toast.type")},l.class.get=function(){return this.data.class},l.class.set=function(t){this.data.class=t,this.data===this.holder.active&&this.data.instance.update("_toast.class")},l.dismissable.get=function(){return this.data.dismissable},l.dismissable.set=function(t){this.data.dismissable=t,this.data===this.holder.active&&this.data.instance.update("_toast.dismissable")},l.closeButton.get=function(){return this.data.closeButton},l.closeButton.set=function(t){this.data.closeButton=t,this.data===this.holder.active&&this.data.instance.update("_toast.closeButton")},l.buttons.get=function(){return this.data.buttons},l.buttons.set=function(t){this.data.buttons=t,this.data===this.holder.active&&this.data.instance.update("_toast.buttons")},l.live.get=function(){return this.data===this.holder.active||~this.holder.toasts.indexOf(this.data)},l.closed.get=function(){var t=this;return this._promise||(this._promise=new Promise(function(n){t.data.onclose=n})),this._promise},Object.defineProperties(a.prototype,l);var c,f=e.escapeKey,d=function(t){function n(n){t.call(this,n)}return t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n,n}(e);e.extendWith(d,{css:function(t){return[function(t){var n=Object.assign({},t("raui.primary"),t("raui.window.primary"));return n.action=Object.assign({},t("raui.window.action"),t("raui.window.primary.action")),n.host=Object.assign({},t("raui.window.host"),t("raui.window.primary.host")),n.title=Object.assign({inactive:{}},t("raui.window.title"),t("raui.window.primary.title")),"\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: "+(n.host.bg||n.bg||"#fff")+";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: "+(n.handleSize||7)+"px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: "+(n.minWidth||"6em")+";\n min-height: "+(n.minHeight||"6em")+";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: "+(n.title.inactive.bg||n.fg||"#222")+";\n color: "+(n.title.inactive.fg||n.bg||"#fff")+";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: "+(n.title.bg||n.fga||"#07e")+";\n color: "+(n.title.fg||n.bg||"#fff")+";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid "+(n.action.bc||n.bc||"#ccc")+";\n background-color: "+(n.action.bg||n.bg||"#fff")+";\n color: "+(n.action.fg||n.fg||"#222")+";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n "+("function"==typeof t("raui.window.extra")?t("raui.window.extra").call(this,t):"")+"\n "}.call(this,t)].join(" ")},cssId:"rwindow",noCssTransform:!0,delegate:!1,decorators:{tracked:function(t,n){return this[n]=t,{teardown:function(){this[n]===t&&(this[n]=null)}}}},transitions:{window:function(t,n){if(c)return t.complete();c=t;var e=t.processParams(n,{duration:400,easing:"easeInOut"}),o=t.node.parentNode,i=o.style?o.style.overflow:"";o.style&&(o.style.overflow="hidden"),t.isIntro||e.intro?(t.setStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0}),setTimeout(function(){t.animateStyle({transform:"none",opacity:1},e).then(function(){t.setStyle("opacity",1),c=!1,t.complete(),o.style&&(o.style.overflow=i)})})):(t.setStyle({transform:"none",opacity:1}),t.animateStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0},e).then(function(){c=!1,t.complete(),o.style&&(o.style.overflow=i)}))},slide:function(t,n){var e=t.processParams(n,{duration:400,easing:"easeInOut"}),o=t.node.parentNode,i=o.style?o.style.overflow:"",r=function(){t.complete(),o.style&&setTimeout(function(){return o.style.overflow=i})};o.style&&(o.style.overflow="hidden"),t.isIntro||e.intro?"top"===e.from?(t.setStyle({transform:"translateY(-100%)"}),t.animateStyle({transform:"translateY(0)"},e).then(r)):"bottom"===e.from?(t.setStyle({transform:"translateY(100%)"}),t.animateStyle({transform:"translateY(0)"},e).then(r)):"left"===e.from?(t.setStyle({transform:"translateX(-100%)"}),t.animateStyle({transform:"translateX(0)"},e).then(r)):"right"===e.from&&(t.setStyle({transform:"translateX(100%)"}),t.animateStyle({transform:"translateX(0)"},e).then(r)):"top"===e.from?(t.setStyle({transform:"translateY(0)"}),t.animateStyle({transform:"translateY(-100%)"},e).then(r)):"bottom"===e.from?(t.setStyle({transform:"translateY(0)"}),t.animateStyle({transform:"translateY(100%)"},e).then(r)):"left"===e.from?(t.setStyle({transform:"translateX(0)"}),t.animateStyle({transform:"translateX(-100%)"},e).then(r)):"right"===e.from&&(t.setStyle({transform:"translateX(0)"}),t.animateStyle({transform:"translateX(100%)"},e).then(r))}}});var u,h=0,m=function(t){function n(n){t.call(this,n),this.defaults={}}t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n;var e={current:{configurable:!0},currentId:{configurable:!0},placement:{configurable:!0},topmost:{configurable:!0},windows:{configurable:!0}};return e.current.get=function(){var t=this.get("topLevel");return this.getWindow(this.get("windows")[t].id)},e.currentId.get=function(){var t=this.get("topLevel");return this.get("windows."+f(t)+".id")},e.placement.get=function(){return this.get("placement")},e.placement.set=function(t){return this.set("placement",t)},e.topmost.get=function(){var t=this.get("windows");for(var n in t)if(t[n].topmost)return this.getWindow(t[n].id)},e.windows.get=function(){return Object.keys(this.get("windows"))},n.prototype.addWindow=function(t,n){var e=this,o=Object.assign({},this.defaults,t.constructor.prototype.options,t.options,t.get("options"),n);if(!(t instanceof g))throw new Error("Windows must be instances of Window");t.id||t.set("@.id",o.id||"window"+h++),this.get("windows."+f(t.id))||this.set("windows."+f(t.id),Object.assign({show:!1!==o.show,autosize:!0,id:t.id,blockers:[],close:!0,minimize:!0,maximize:!0},o,{id:t.id})),t.host=this;var i,r=this.attachChild(t,{target:"window"});if(o.block&&("string"==typeof(i=o.block.id||o.block)&&i in this.get("windows")?(this.push("windows."+f(i)+".blockers",t.id),t.set("control.blocking",i)):i=!1),o.slide);else if("fill"===o.size&&(i||o.block)){var s;!0===o.block?s=this.find(".rwhost-pane"):(s=this.getWindow(i))&&(s=s.find(".rwindow")),s&&(t.size(s.clientWidth-(o.fillPad||20),s.clientHeight-(o.fillPad||20)),!o.block||o.top||o.left||(o.top=o.left=Math.floor((o.fillPad||20)/2)))}else o.width&&o.height?t.size(o.width,o.height):t.size("auto");return o.slide||(o.top&&o.left?t.move(o.top,o.left):this.place(t)),this.raise(t,{show:!1!==o.show,parent:o.stickToParent}),t.on("close",function(){var n=t.get("control.blocking");if(n){var o=e.windowGet(n,"blockers");e.splice("windows."+f(n)+".blockers",o.indexOf(t.id),1)}e.detachChild(t).then(function(){return t.teardown()}),e.set("windows."+f(t.id)+".block",!1),e.set("windows."+f(t.id)+".index",-1),e.raise(),e.set("windows."+f(t.id),void 0),delete e.get("windows")[t.id]}),this.update("windows."+f(t.id)+".id",{force:!0}),r.then(function(){return t})},n.prototype.getWindow=function(t){return this.children.byName.window&&this.children.byName.window.filter(function(n){return n.instance.id===t}).map(function(t){return t.instance})[0]},n.prototype.windowGet=function(t,n){return this.get("windows."+f(t)+"."+n)},n.prototype.windowSet=function(t,n,e){return this.set("windows."+f(t)+"."+n,e)},n.prototype.raise=function(t,n){var e=this;void 0===n&&(n={});var o=t instanceof g?t:this.children.byName.window.filter(function(n){return n.instance.id===t}).map(function(t){return t.instance})[0],i=this.get("windows",{virtual:!1}),r=Object.keys(i).map(function(t){return i[t]}),s=2*(r.length+1),a=this.get("topLevel"),l=(this.get("blocked"),o?o.get("control.id"):r.reduce(function(t,n){return t?n.index>t.index?n:t:n},null));function c(t){t.blockers&&t.blockers.forEach(function(n,e){var o=r.find(function(t){return t.id===n});o&&(o.index=t.index+e+1,c(o))})}if(!o&&l&&(o=this.children.byName.window.find(function(t){return t.instance.id===l})),o){var d=o.get("control");d.index=!1===n.show?-1:s,c(d),d.blocking&&function t(n,e){n&&(n.index=e--,n.blocking&&t(r.find(function(t){return t.id===n.blocking}),e),c(n))}(r.find(function(t){return t.id===d.blocking}),s-1),!1===n.show||d.show||o.show()}r.filter(function(t){return!1!==t.show&&!0===t.block}).forEach(function(t){e.set("windows."+f(t.id)+".index",(t.index||0)+s),c(t)});var u=r.sort(function(t,n){return t.show?n.show&&t.index<n.index?-1:1:-1}),h=u.filter(function(t){return t.show});s=u.indexOf(h[h.length-1]);var m={},w=null;if(u.forEach(function(t,n){var e=f(t.id);!0===t.block&&null===w&&(w=n),m["windows."+e+".index"]=t.index=null!==w?n+2:n,m["windows."+e+".topmost"]=n===s,m["windows."+e+".stack"]=u.length-n}),m.blocked=null!==w?w+1:0,~s&&u.length?m.topLevel=u[s].id:m.topLevel=null,this.set(m),(s=m.topLevel)&&s!==a&&this.get("currentMax")&&this.rendered){var p=this.get("windows."+f(a));o=this.getWindow(s);var b=this.get("transition");!1===b||o.get("control.slide")||p&&(p.dialog||p.slide||p.blocking&&(!p.blocking||p.blocking===s))||o.transition(b||"window",o.find("div"),{intro:!0})}},n.prototype.place=function(t){var n=this;return t.get("control.show")?new Promise(function(e){requestAnimationFrame(function(){var o=t.get("control");void 0===o.width&&t.size("auto");var i=0,r=0;if(n.fragment&&n.fragment.rendered){var s=n.find(".rwhost"),a=s.clientWidth,l=s.clientHeight,c=o.blocking;if(c){var d="windows."+f(c),u=n.get(d),h=o.max||!o.dialog&&(n.get("max")||n.get("userMax")),m=u.max||n.get("userMax")||n.get("max"),p=m?n.host.clientWidth:n.sizeInPx(u.width+"em"),g=m?n.host.clientHeight:n.sizeInPx(u.height+"em"),b=m?0:u.left,x=m?0:u.top;i=(h?a:p/2)+(h?0:b)-n.sizeInPx(o.width+"em")/2,r=(h?l:g/2)+(h?0:x)-n.sizeInPx(o.height+"em")/2}else{var y,v=n.get("placement");if("function"==typeof v)try{y=v(n,s,o)}catch(t){y=w(n,s,o)}else if("string"==typeof v)switch(v){case"smart":y=function(t,n,e){var o,i,r=n.clientWidth-10,s=n.clientHeight-10,a=Math.floor(s/16),l=Math.floor(r/16),c=new Array(a*l),f=new Array(a*l);for(o=0;o<c.length;o++)c[o]=0;var d,u,h,m,w,p,g,b,x=0,y=t.get("windows");for(var v in y)for(x++,d=y[v],u=Math.floor(d.top/16),h=Math.floor(d.left/16),w=Math.ceil(t.sizeInPx(d.height+"em")/16),m=Math.ceil(t.sizeInPx(d.width+"em")/16),o=u;o<u+w&&o<a;o++)for(i=h;i<h+m&&i<l;i++)c[o*l+i]++;for(m=Math.ceil(t.sizeInPx(e.width+"em")/16),w=Math.ceil(t.sizeInPx(e.height+"em")/16),o=0;o<a;o++)for(i=0;i<l;i++){if(o+w>a||i+m>l)p=x*m*w;else for(p=0,g=0;g<w;g++)for(b=0;b<m;b++)p+=c[(o+g)*l+i+b];if(0===p)return{top:16*o+5,left:16*i+5};f[o*l+i]=p}for(p=x*m*w,g=0,o=0;o<f.length;o++)f[o]<p&&(p=f[o],g=o);return{top:16*Math.floor(g/l)+5,left:g%l*16+5}}(n,s,o);break;default:y=w(n,s,o)}else y=w(n,s,o);r=y.top,i=y.left}(isNaN(i)||i<0)&&(i=10),(isNaN(r)||r<0)&&(r=10),t.set({"control.top":r,"control.left":i}),e()}})}):Promise.resolve()},n.prototype.sizeInPx=function(t){return this.sizer?(this.sizer.style.width="number"==typeof t?t+"px":t,this.sizer.clientWidth):16*parseFloat(t)},n.prototype.sizeInEm=function(t){return this.sizeInPx(t)/this.sizeInPx("1em")},Object.defineProperties(n.prototype,e),n}(d);function w(t,n,e){var o=n.clientWidth,i=n.clientHeight,r=0,s=0,a=void 0===t._grid1?t._grid1=0:t._grid1>7?t._grid1=0:++t._grid1,l=Math.floor(o/3),c=Math.floor(i/3),f=t.sizeInPx(e.width+"em"),d=t.sizeInPx(e.height+"em");switch(a){case 5:case 7:case 8:r=i-d-10;break;case 2:case 4:case 6:r=c+Math.floor((c-d)/2);break;case 0:case 1:case 3:r=10}switch(a){case 3:case 6:case 8:s=o-f-10;break;case 1:case 4:case 7:s=l+Math.floor((l-f)/2);break;case 0:case 2:case 5:s=10}return s+f>o&&(s=o-f-10),r+d>i&&(r=i-d-10),{top:r,left:s}}d.extendWith(m,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost",g:1},{n:"tracked",t:71,f:{r:[],s:'["host"]'}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-sizer",g:1},{n:"tracked",t:71,f:{r:[],s:'["sizer"]'}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-max-top",g:1},{t:4,f:[{t:16,r:"~/_maxAttrsP"}],n:50,r:"~/_maxAttrsP"}],f:[{t:16,r:"~/_maxP",z:[{n:"window",x:{r:"~/current"}},{n:"windowControls",x:{x:{r:["@this.partials.windowControls"],s:"{t:_0}"}}},{n:"host",x:{r:"@this"}}]}]}],n:50,x:{r:["~/currentMax","~/_maxP"],s:"_0&&_1"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane",g:1},{n:"class-rwhost-blocked",t:13,f:[{t:2,r:"~/blocked"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane-content",g:1}],f:[{t:16}]}," ",{t:4,f:[{t:11,n:"window",m:[{n:"control",f:[{t:2,rx:{r:"~/windows",m:[{t:30,n:".instance.id"}]}}],t:13},{n:"root",t:13,f:[{t:2,r:"~/"}]}]}],n:52,r:"@this.children.byName.window"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-modal",g:1},{n:"tracked",t:71,f:{r:[],s:'["modalPane"]'}},{t:4,f:[{n:"class-rwhost-modal-active",t:13},{n:"style-z-index",f:[{t:2,r:"~/blocked"}],t:13}],n:50,r:"~/blocked"}]}]}," ",{t:8,r:"toast"}]}],e:{'["host"]':function(){return["host"]},'["sizer"]':function(){return["sizer"]},"{t:_0}":function(t){return{t:t}},"_0&&_1":function(t,n){return t&&n},'["modalPane"]':function(){return["modalPane"]},"[_0.getWindow(_1).hide()]":function(t,n){return[t.getWindow(n).hide()]},"!_0&&_1":function(t,n){return!t&&n},"[_0.getWindow(_1).maximize()]":function(t,n){return[t.getWindow(n).maximize()]},"!_0&&_1&&_2":function(t,n,e){return!t&&n&&e},"[_0.getWindow(_1).close()]":function(t,n){return[t.getWindow(n).close()]},'["top"]':function(){return["top"]},"[_0.hide()]":function(t){return[t.hide()]},"[_0.maximize()]":function(t){return[t.maximize()]},"[_0.close()]":function(t){return[t.close()]},"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6":function(t,n,e,o,i,r,s){return!((t||n||e)&&o&&!i||r||s)},'["content"]':function(){return["content"]},"!_0":function(t){return!t},"[_0.call(_1)]":function(t,n){return[t.call(n)]},'["wrapper"]':function(){return["wrapper"]},"_0!==false":function(t){return!1!==t},"_0||_1":function(t,n){return t||n},"(_0||_1||_2)&&!_3&&!_4":function(t,n,e,o,i){return(t||n||e)&&!o&&!i},"[{from:_0}]":function(t){return[{from:t}]},"[_0._startResize(_1)]":function(t,n){return[t._startResize(n)]},"[_0._sizeHandle(_1)]":function(t,n){return[t._sizeHandle(n)]},"[_0._startMove(_1)]":function(t,n){return[t._startMove(n)]},"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5":function(t,n,e,o,i,r){return!(!1===i||(t||n)&&!o||e||o&&!0!==i||r)},"[_0.raise()]":function(t){return[t.raise()]},'["pane"]':function(){return["pane"]},"_0&&!_1":function(t,n){return t&&!n}},p:{title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],windowControls:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).hide()]"}}]}],n:50,x:{r:["window.dialog","window.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).maximize()]"}}]}],n:50,x:{r:["window.dialog","window.maximize","host.data.userMax"],s:"!_0&&_1&&_2"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).close()]"}}]}],n:50,r:"window.close"}]}],pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],window:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]}},use:[function(t){void 0===t&&(t={});var n=function(t){return[function(t){var n=Object.assign({},t("raui.primary"),t("raui.toast.primary"));return"\n .rtoast {\n position: absolute;\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n left: 1em;\n right: 1em;\n top: 1em;\n bottom: auto;\n z-index: 5;\n pointer-events: none;\n overflow: hidden;\n max-height: 80%;\n }\n .rtoast-message {\n flex-grow: 2;\n display: flex;\n align-items: center;\n }\n .rtoast-string {\n white-space: pre-wrap;\n line-height: 1.3em;\n padding-top: 0.3em;\n }\n .rtoast-upper .rtoast-string {\n \n }\n .rtoast-expand .rtoast-string {\n padding-top: 0.5em;\n }\n .rtoast-buttons {\n display: flex;\n padding-left: 0.5em;\n flex-shrink: 1;\n align-items: center;\n max-height: max-content;\n margin-left: auto;\n }\n .rtoast-buttons button {\n cursor: pointer;\n }\n .rtoast-button {\n background-color: transparent;\n border: none;\n color: inherit;\n padding: 0.5em 0.75em;\n margin: 0 0 0 0.5em;\n line-height: 1em;\n box-shadow: none;\n }\n .rtoast-more {\n cursor: pointer;\n width: 2em;\n position: relative;\n flex-shrink: 2;\n background-color: transparent;\n border: none;\n color: inherit;\n margin: 0 0 0 0.5em;\n height: 2em;\n }\n .rtoast-more:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n height: 0.6em;\n top: calc(50% - 0.55em);\n left: calc(50% - 0.3em);\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out;\n pointer-events: none;\n }\n .rtoast-expanded .rtoast-more:after {\n transform: rotate(225deg);\n top: calc(50% - 0.1em);\n }\n .rtoast-bottom {\n bottom: 1em;\n top: auto;\n }\n .rtoast-left {\n justify-content: flex-start;\n }\n .rtoast-right {\n justify-content: flex-end;\n }\n .rtoast-body {\n border-radius: 0.2em;\n padding: 1em;\n color: "+(n.bg||"#fff")+";\n background-color: "+(n.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n opacity: 0.95;\n pointer-events: all;\n transition: color 0.5s ease-in-out, background 0.5s ease-in-out;\n flex-shrink: 1;\n display: flex;\n flex-direction: column;\n }\n .rtoast-upper {\n display: flex;\n flex-shrink: 2;\n flex-wrap: wrap;\n justify-content: space-between;\n }\n \n .rtoast-expand {\n margin-top: 1em;\n border-radius: 0.2em;\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n overflow: auto;\n }\n \n .rtoast-success {\n color: "+(t("raui.toast.success.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.success.bg")||"#4caf50")+";\n }\n .rtoast-info {\n color: "+(t("raui.toast.info.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.info.bg")||"#07e")+";\n }\n .rtoast-warn {\n color: "+(t("raui.toast.warn.fg")||"#222")+";\n background-color: "+(t("raui.warn.success.bg")||"#ffc107")+";\n }\n .rtoast-error {\n color: "+(t("raui.toast.error.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.error.bg")||"#ff5252")+";\n }\n "}.call(this,t)].join(" ")},e={v:4,t:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast",g:1},{n:"class-rtoast-expanded",t:13,f:[{t:2,r:".showMore"}]},{n:"class-rtoast-bottom",t:13,f:[{t:2,r:".bottom"}]},{n:"class-rtoast-left",t:13,f:[{t:2,r:".left"}]},{n:"class-rtoast-right",t:13,f:[{t:2,r:".right"}]}],f:[{t:7,e:"div",m:[{n:"toast",t:72,v:"t0"},{n:"class",f:["rtoast-body",{t:4,f:[" rtoast-",{t:2,r:".type"}],n:50,r:".type"},{t:4,f:[{t:2,r:".class"}],n:50,r:".class"}],t:13},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.close()]"}}],n:50,x:{r:[".dismissable"],s:"_0!==false"}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-upper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-message",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".message",c:{r:".context"}}],n:50,x:{r:[".context"],s:"!!_0"}},{t:4,f:[{t:8,r:".message"}],n:51,l:1}],n:50,x:{r:[".message"],s:"Array.isArray(_0)"}},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-string",g:1}],f:[{t:2,r:".message"}]}],n:51,l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-buttons",g:1}],f:[{t:4,f:[{t:7,e:"button",m:[{n:"class",f:["rtoast-button",{t:4,f:[" ",{t:2,r:".class"}],n:50,r:".class"}],t:13},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.action()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}}],f:[{t:2,r:".label"}]}],n:52,r:".buttons"},{t:4,f:[{t:7,e:"button",m:[{t:13,n:"class",f:"rtoast-button",g:1}],f:["Close"]}],n:50,x:{r:[".dismissable",".closeButton"],s:"_0!==false&&_1!==false"},l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-more",g:1},{n:"title",f:"Toggle more",t:13,g:1},{n:["click"],t:70,f:{r:[".","@context"],s:'[_0.expand(),(_1).toggle(".showMore"),false]'}}]}],n:50,r:".more"}]}],n:50,x:{r:[".dismissable",".closeButton",".buttons.length",".more"],s:"(_0!==false&&_1!==false)||_2||_3"}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-expand",g:1},{n:"toast-expand",t:72,v:"t0"},{n:["click"],t:70,f:{r:[],s:"[false,false]"}}],f:[{t:4,f:[{t:4,f:[{t:8,r:".more",c:{r:".context"}}],n:50,x:{r:[".context"],s:"!!_0"}},{t:4,f:[{t:8,r:".more"}],n:51,l:1}],n:50,x:{r:[".more"],s:"Array.isArray(_0)"}},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-string",g:1}],f:[{t:2,r:".more"}]}],n:51,l:1}]}],n:50,x:{r:[".more",".showMore"],s:"_0&&_1"}}]}]}],n:54,r:"~/_toast"}],n:50,r:"~/_toast"}],e:{"[_0.close()]":function(t){return[t.close()]},"_0!==false":function(t){return!1!==t},"!!_0":function(t){return!!t},"Array.isArray(_0)":function(t){return Array.isArray(t)},"[_0.action()]":function(t){return[t.action()]},'typeof _0==="function"':function(t){return"function"==typeof t},"_0!==false&&_1!==false":function(t,n){return!1!==t&&!1!==n},'[_0.expand(),(_1).toggle(".showMore"),false]':function(t,n){return[t.expand(),n.toggle(".showMore"),!1]},"(_0!==false&&_1!==false)||_2||_3":function(t,n,e,o){return!1!==t&&!1!==n||e||o},"[false,false]":function(){return[!1,!1]},"_0&&_1":function(t,n){return t&&n}}};return function(o){var i=o.Ractive,r=o.instance,l=o.proto;r.partials[t.name||"toast"]=e;var c,f=Object.assign({},s,t),d=[],u={toasts:d};function h(n,e){c!==n?(d.splice(d.indexOf(t),1),"function"==typeof n.onclose&&n.onclose()):(u.tm&&(clearTimeout(u.tm),u.tm=null),c.instance.set("_toast",null).then(function(){u.active=c=null,"function"==typeof n.onclose&&n.onclose(),d.length&&m()})),e&&e.fire("toasted",null,n)}function m(){u.active=c=d.shift(),c.instance.set("_toast",c).then(function(){c.timeout&&(u.tm&&clearTimeout(u.tm),u.tm=setTimeout(function(){c.close(),u.tm=null},c.timeout))})}if(Object.defineProperty(l,"toastDefaults",{value:f,writable:!1,configurable:!0}),l.toast=function(t,n){var e=this,o=Object.assign({message:t,instance:this},f,this.toastDefaults,n);return o.close=function(){return h(o,e)},o.expand=function(){u.active===o&&(u.tm&&(clearTimeout(u.tm),u.tm=null),o.showMore&&o.timeout&&(u.tm=setTimeout(function(){o.close(),u.tm=null},o.timeout)))},d.push(o),c||m(),new a(u,o)},l.on=l.on||{},r.transitions.toast=function(t,n){var e=t.processParams({duration:200},n),o=t.getStyle("opacity");return t.isIntro?(t.setStyle({opacity:0,transform:"translateY("+(c.bottom?"":"-")+"1em)"}),t.animateStyle({opacity:o,transform:"none"},e)):(t.setStyle({opacity:o,transform:"none"}),t.animateStyle({opacity:0,transform:"translateY("+(c.bottom?"":"-")+"1em)"},e))},r.transitions["toast-expand"]=function(t,n){var e=t.processParams({duration:200,nested:!1},n);if(t.isIntro){var o=t.getStyle("height"),i=t.getStyle("width");return t.setStyle("height",0),t.setStyle("width",0),t.animateStyle("width",i,e).then(function(){return t.animateStyle("height",o,e)}).then(function(){t.setStyle("height",""),t.setStyle("width","")})}var r=t.getStyle("height");return t.setStyle("height",r),t.setStyle("width",t.getStyle("width")),t.animateStyle("height",0,e).then(function(){return t.animateStyle("width",0,e)}).then(function(){t.setStyle("height",""),t.setStyle("width","")})},l.on["close-toast"]=function(){c&&c.close()},r===i||i.isInstance(r))i.hasCSS("toast-css")||i.addCSS("toast",n);else{var w=r.css;r.css=function(t){var e="";return"string"==typeof w?e+=w:"function"==typeof w&&(e+=w(t)),n(t)+e}}return l}}(),(void 0===u&&(u={}),function(t){t.instance.transitions[u.name||"expand"]=r})],cssId:"window-host",noIntro:!0,observe:{"@style.raui.window.maxFrom":function(){var t;(t=this)._media?t._media.fn():(t._media={},t._media.fn=function(){if(t.host){var n=t.sizeInPx(t.get("@style.raui.window.maxFrom")),e=t.transitionsEnabled;t.transitionsEnabled=!1,t.set("max",t.host.clientWidth<=n),t.set("dimensions",{clientWidth:t.host.clientWidth,clientHeight:t.host.clientHeight}),t.transitionsEnabled=e}},t._media.handle=t.root.on("*.resize",t._media.fn),setTimeout(t._media.fn))},topLevel:function(t){t?this.link("windows."+f(t),"current"):this.unlink("current")},currentMax:{handler:function(t){(this.children.byName.window||[]).forEach(function(t){return t.instance.fire("resize")})},defer:!0}},computed:{currentMax:function(){var t=this.get("topLevel"),n=this.get("windows."+f(t)+".max");return this.get("userMax")||this.get("max")||n}},on:{config:function(){var t,n=this,e=this.partials.content;if(e&&Array.isArray(e))for(var o=(e=this.partials.content=e.slice()).length;o--;){var i=e[o];"max-top"===i.e&&(e.splice(o,1),this.set({_maxP:{t:i.f},hideTitleMax:!0}),i.m&&this.set({_maxAttrsP:{t:i.m}}))}"undefined"!=typeof window&&(this._resizeListener=function(){t||(t=setTimeout(function(){t=null,n.fire("resize")},300))},window.addEventListener("resize",this._resizeListener))},teardown:function(){this._resizeListener&&window.removeEventListener("resize",this._resizeListener)}}}),e.transitions.modal=function(t,n){var e,o=t.processParams(n,{duration:400,easing:"easeOut",x:0,y:-50,event:!0}),i=t.node.offsetLeft,r=t.node.offsetTop,s=t.node.parentNode.style?t.node.parentNode.style.overflow:"hidden";if(t.node._modalSrc){var a=t.node._modalSrc||{x:i+o.x,y:r+o.y},l={x:a.x-Math.round(t.node.clientWidth/2)-i,y:a.y-Math.round(t.node.clientHeight/2)-r};t.node.parentNode.style&&(t.node.parentNode.style.overflow="hidden"),t.isIntro?(t.node._modalSrc=a,e={transform:"translate(0, 0) scale(1, 1)",opacity:1},t.setStyle({transform:"translate("+l.x+"px, "+l.y+"px) scale(0.5, 0.5)",opacity:0})):e={transform:"translate("+l.x+"px, "+l.y+"px) scale(0.5, 0.5)",opacity:0}}else t.isIntro?(e={transform:"translate(0, 0) scale(1, 1)",opacity:1},t.setStyle({transform:"translate("+o.x+"px, "+o.y+"px) scale(0.5, 0.5)",opacity:0})):e={transform:"translate("+o.x+"px, "+o.y+"px) scale(0.5, 0.5)",opacity:0};t.animateStyle(e,o).then(function(){t.node.parentNode.style&&(t.node.parentNode.style.overflow=s),t.complete()})};var p=["mousemove","mouseup","touchmove","touchend"],g=function(t){function n(n){t.call(this,n)}t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n;var e={resizable:{configurable:!0},title:{configurable:!0},visible:{configurable:!0},pad:{configurable:!0},buttons:{configurable:!0},blocked:{configurable:!0},result:{configurable:!0}};return e.resizable.get=function(){return this.get("control.resizable")},e.resizable.set=function(t){return this.set("control.resizable",t)},e.title.get=function(){return this.get("control.title")},e.title.set=function(t){return this.set("control.title",t)},e.visible.get=function(){return this.get("control.show")},e.visible.set=function(t){t?this.show():this.set("control.show",t,{keep:!0}),this.host.raise(this,{show:t})},e.pad.get=function(){return this.get("pad")},e.pad.set=function(t){this.set("pad",t)},e.buttons.get=function(){return this.get("buttons")},e.buttons.set=function(t){return this.set("buttons",t)},e.blocked.get=function(){return this.get("control.blocked")},e.blocked.set=function(t){return this.set("control.blocked",t)},e.result.get=function(){var t=this;return this._result||(this._result={},this._result.promise=new Promise(function(n){t._result.ok=n})),this._result.promise},n.prototype.setResult=function(t){this.result,this._result.value=t},n.prototype.close=function(t,n){if(!0!==t){if(!this.parent)return!1;if(this.get("control.blockers.length"))return!1;if("function"==typeof this.beforeClose&&!1===this.beforeClose())return!1;if(!1===this.fire("beforeClose"))return!1}return this.fire("close"),this._result&&this._result.ok(this._result.value||n),!0},n.prototype.maximize=function(){this.toggle("root.userMax")},n.prototype.hide=function(){this.visible=!1},n.prototype.raise=function(t){this.host.raise(this,{show:t})},n.prototype.show=function(){this.set("control.show",!0),void 0===this.get("control.top")&&this.host.place(this)},n.prototype.size=function(t,n){var e=this;return new Promise(function(o){requestAnimationFrame(function(){if(e.visible){var i=e.wrapper;if(i){if("auto"===t){e.set("control.autosize",!0);var r=e.host.sizeInEm(i.clientWidth+16),s=e.host.sizeInEm(i.clientHeight);e.set({"control.width":r,"control.height":s,"control.naturalWidth":r,"control.naturalHeight":s,"control.autosize":!1})}else if("number"==typeof t&&"number"==typeof n)e.set({"control.width":e.host.sizeInEm(t),"control.height":e.host.sizeInEm(n),"control.naturalWidth":e.host.sizeInEm(t),"control.naturalHeight":e.host.sizeInEm(n),"control.autosize":!1});else if("string"==typeof t&&"string"==typeof n){var a=i.style.width,l=i.style.height;i.style.width=t,i.style.height=n;var c=i.clientWidth,f=i.clientHeight;i.style.width=a,i.style.height=l,e.set({"control.width":e.host.sizeInEm(c),"control.height":e.host.sizeInEm(f),"control.naturalWidth":e.host.sizeInEm(c),"control.naturalHeight":e.host.sizeInEm(f),"control.autosize":!1})}e.fire("resize"),o()}}else"number"==typeof t&&"number"==typeof n&&e.set({"control.width":e.host.sizeInEm(t),"control.height":e.host.sizeInEm(n),"control.naturalWidth":e.host.sizeInEm(t),"control.naturalHeight":e.host.sizeInEm(n),"control.autosize":!1})})})},n.prototype.move=function(t,n){var e=this;return new Promise(function(o){requestAnimationFrame(function(){"center"===t?t=e.host.modalPane.clientHeight/2-e.wrapper.clientHeight/2:"string"==typeof t&&(t=e.host.sizeInEm(t)),"center"===n&&(n=e.host.modalPane.clientWidth/2-e.wrapper.clientWidth/2),"string"==typeof n&&(n=e.host.sizeInEm(n));var i={};"number"==typeof t&&(i["control.top"]=t),"number"==typeof n&&(i["control.left"]=n),e.set(i),o()})})},n.prototype._startMove=function(t){var n=this;if("mousedown"!==t.type||0===t.button){if(this.get("control.topmost")||this.raise(),~t.type.indexOf("mouse")){if(!this.top||!t.ctrlKey&&t.target!==this.content&&t.target!==this.top&&!this.top.contains(t.target))return}else if(t.targetTouches&&1===t.targetTouches.length&&t.target!==this.content&&t.target!==this.top&&!this.top.contains(t.target))return;var e=this.pane,o=e.style.cursor;e.style.cursor="move",e.style.userSelect="none";var i=t.x||t.clientX||t.targetTouches&&t.targetTouches[0].clientX||0,r=t.y||t.clientY||t.targetTouches&&t.targetTouches[0].clientY||0,s=this.get("control.left")||0,a=this.get("control.top")||0,l=e.clientWidth,c=e.clientHeight,f=function(t){var d=t.x||t.clientX||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientX||t.changedTouches&&t.changedTouches[0].clientX||0,u=t.y||t.clientY||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientY||t.changedTouches&&t.changedTouches[0].clientY||0,h=s+(d-i),m=a+(u-r);h<(l<30?0:30-l)&&(h=l<30?0:30-l),m<(c<30?0:30-c)&&(m=c<30?0:30-c),h<0&&(h=0),m<0&&(m=0),n.set({"control.top":m,"control.left":h}),"touchend"===t.type||"mouseup"===t.type?(p.forEach(function(t){return document.removeEventListener(t,f,{passive:!1})}),e.style.cursor=o,e.style.userSelect=""):t.preventDefault()};return p.forEach(function(t){return document.addEventListener(t,f,{passive:!1})}),0!==t.type.indexOf("mouse")&&void 0}},n.prototype._startResize=function(t){var n=this;if(t.target===this.wrapper&&("mousedown"!==t.type||0===t.button)){this.get("control.autosize")&&this.size("auto"),this.get("control.topmost")||this.raise(),this.set("control.resizing",!0);var e,o=this.wrapper,i=t.offsetX||t.targetTouches&&t.targetTouches[0].pageX-o.getBoundingClientRect().left,r=t.offsetY||t.targetTouches&&t.targetTouches[0].pageY-o.getBoundingClientRect().top,s=this.get("@style.window.handleSize")||7,a=o.clientWidth-2*s,l=o.clientHeight-2*s,c=2*s,f=i<=c||i>=a,d=r<=c||r>=l,u=t.x||t.clientX||t.targetTouches&&t.targetTouches[0].clientX||0,h=t.y||t.clientY||t.targetTouches&&t.targetTouches[0].clientY||0,m=this.get("control.left")||0,w=this.get("control.top")||0,g=this.host.sizeInPx(this.get("control.width")+"em"),b=this.host.sizeInPx(this.get("control.height")+"em"),x=this.host.sizeInPx(this.get("control.naturalHeight")+"em"),y=this.host.sizeInPx(this.get("control.naturalWidth")+"em"),v=function(t){t.preventDefault();var o=t.x||t.clientX||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientX||t.changedTouches&&t.changedTouches[0].clientX||0,a=t.y||t.clientY||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientY||t.changedTouches&&t.changedTouches[0].clientY||0,l=f?o-u:0,c=d?a-h:0,_={};r<=s?(_["control.top"]=w+c,_["control.height"]=b-c):_["control.height"]=b+c,i<=s?(_["control.left"]=m+l,_["control.width"]=g-l):_["control.width"]=g+l,_["control.width"]<y&&(delete _["control.width"],delete _["control.left"]),_["control.height"]<x&&(delete _["control.height"],delete _["control.top"]),_["control.left"]<0&&(_["control.left"]=0),_["control.top"]<0&&(_["control.top"]=0),_["control.width"]&&(_["control.width"]=n.host.sizeInEm(_["control.width"])),_["control.height"]&&(_["control.height"]=n.host.sizeInEm(_["control.height"])),n.set(_),"touchend"===t.type||"mouseup"===t.type?(p.forEach(function(t){return document.removeEventListener(t,v,{passive:!1})}),n.set("control.resizing",!1),g===n.get("control.width")&&b===n.get("control.height")||(e&&clearTimeout(e),e=null,n.fire("resize"))):e||(e=setTimeout(function(){n.fire("resize"),e=null},200))};return p.forEach(function(t){return document.addEventListener(t,v,{passive:!1})}),!1}},n.prototype._sizeHandle=function(t){if(t.target===this.wrapper){var n=this.wrapper;if("mouseout"===t.type)return n.style.cursor="auto";var e=t.offsetX,o=t.offsetY,i=this.get("@style.window.handleSize")||7,r=n.clientWidth-i,s=n.clientHeight-i,a=n.style;a.cursor=e<=i+i&&o<=i+i||e>=r-i&&o>=s-i?"nwse-resize":e>=r-i&&o<=i+i||e<=i+i&&o>=s-i?"nesw-resize":(e<=i||e>=r)&&(o<s||o>i)?"ew-resize":(o<=i||o>=s)&&(e<r||e>i)?"ns-resize":"auto"}},Object.defineProperties(n.prototype,e),n}(d),b=["left","right","center","condition"];function x(t){return void 0===t&&(t={}),function(n){n.instance.components[t.name||"host"]=m}}d.extendWith(g,{template:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]},cssId:"window",partials:{pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],contents:"",status:""},data:function(){return{buttons:[],visibleButtons:0}},computed:{leftButtons:function(){return(this.get("buttons")||[]).filter(function(t){return"left"===t.where})},centerButtons:function(){return(this.get("buttons")||[]).filter(function(t){return"center"===t.where})},rightButtons:function(){return(this.get("buttons")||[]).filter(function(t){return!t.where||"right"===t.where})}},decorators:{button:function(t){var n=this.getContext(t);return n.add("visibleButtons"),{update:function(){},teardown:function(){n.subtract("visibleButtons")}}}},on:{config:function(){var t=g.prototype.template,n=this.template;"string"!=typeof t&&!Array.isArray(t)&&t.t&&(t=t.t),"string"!=typeof n&&!Array.isArray(n)&&n.t&&(n=n.t),t!==n&&(this.partials.hasOwnProperty("contents")||(this.partials.contents=n),this.template=t)},construct:function(){var t=this.constructor;if(!t._constructed){t._constructed=1;var n=t.prototype.template.t.slice(),e=n.find(function(t){return"buttons"===t.e});function o(t){var n=t.m||[],e={partial:{t:[{t:t.t,e:t.e,f:t.f,m:n.filter(function(t){return!~b.indexOf(t.n)})}]},where:n.find(function(t){return"left"===t.n})?"left":n.find(function(t){return"center"===t.n})?"center":"right"};return e.partial.t[0].m.push({t:71,n:"button"}),e}t.prototype.template.t=n.filter(function(t){return"buttons"!==t.e}),e&&(t._btns=e.f.filter(function(t){return"button"===t.e||4===t.t&&(50===t.n||51===t.n)&&t.f.find(function(t){return"button"===t.e})}).map(function(t){return 4===t.t?t.f.filter(function(t){return"button"===t.e}).map(function(n){var e=o(n),i={t:t.t,n:t.n,f:[e.partial.t[0]]};return t.r&&(i.r=t.r),t.rx&&(i.rx=t.rx),t.x&&(i.x=t.x),e.partial={t:[i]},e}):[o(t)]}).reduce(function(t,n){return t.concat(n)},[]))}},init:function(){var t=this.constructor;t._btns&&!this.get("buttons.length")&&this.set("buttons",t._btns)}},observe:{"control.max root.max root.userMax control.width control.height root.dimensions.clientHeight root.dimensions.clientWidth":{handler:function(t,n,e){if(this.get("control.id")){var o=this.get("control.max")||this.get("root.userMax")||this.get("root.max"),i=this.get("control.actual")||{};if(o)if(i.max)~e.indexOf("client")&&"number"==typeof t&&(~e.indexOf("Width")?this.set("control.actual.width",this.host.sizeInEm(t)):~e.indexOf("Height")&&this.set("control.actual.height",this.host.sizeInEm(t)));else{this.wrapper;this.wrapper&&this.set("control.actual",{width:this.host.sizeInEm(this.wrapper.clientWidth),height:this.host.sizeInEm(this.wrapper.clientHeight),max:o})}else"number"==typeof t&&(~e.indexOf("width")?this.set("control.actual.width",t):~e.indexOf("height")&&this.set("control.actual.height",t)),i.max&&this.set("control.actual",{width:this.get("control.width"),height:this.get("control.width"),max:o}),this.set("control.actual.max",!1)}},init:!1,defer:!0}}}),i("RMWindowHost","components",m),i("RMWindow","components",g),m.prototype.Window=g,t.Base=d,t.Host=m,t.Window=g,t.plugin=x,t.default=x,Object.defineProperty(t,"__esModule",{value:!0})}); | ||
!function(t,n){"object"==typeof exports&&"undefined"!=typeof module?n(exports,require("ractive")):"function"==typeof define&&define.amd?define(["exports","ractive"],n):n(t.RMWindow={},t.Ractive)}(this,function(t,n){"use strict";var e="default"in n?n.default:n,o="undefined"!=typeof window?window:null;function i(t,n,e){if(o&&o.Ractive&&"object"==typeof o.Ractive[n]){var i=document.currentScript;if(i||(i=(i=document.querySelectorAll("script"))[i.length-1]),i){var r=i.getAttribute("data-alias");r&&(r=(r=r.split("&")).reduce(function(t,n){var e=n.split("="),o=e[0],i=e[1];return t[o]=i,t},{})),Ractive[n][r&&r[t]||t]=e}}}function r(t,n){var e=t.processParams(n,{duration:200,easing:"easeInOut"});return new Promise(function(n){requestAnimationFrame(function(){t.setStyle("overflow","hidden");var o="x"===e.axis?"width":"height";if(t.isIntro||e.intro){var i=t.getStyle(o);t.setStyle(o,0),t.setStyle("opacity",0),n(t.animateStyle(o,i,e).then(function(){return t.animateStyle("opacity",1,e)}).then(function(){t.setStyle(o,""),t.setStyle("overflow","")}))}else t.setStyle(o,t.getStyle(o)),t.setStyle("opacity",1),n(t.animateStyle("opacity",0,e).then(function(){return t.animateStyle(o,0,e)}))})})}i("expand","transitions",r);var s={timeout:6e3,top:!0};var a=function(t,n){this.holder=t,this.data=n},l={message:{configurable:!0},more:{configurable:!0},showMore:{configurable:!0},left:{configurable:!0},right:{configurable:!0},top:{configurable:!0},bottom:{configurable:!0},center:{configurable:!0},context:{configurable:!0},type:{configurable:!0},class:{configurable:!0},dismissable:{configurable:!0},closeButton:{configurable:!0},buttons:{configurable:!0},live:{configurable:!0},closed:{configurable:!0}};a.prototype.close=function(t){var n=this;return this.data.timeout=t,this.data===this.holder.active?(this.holder.tm&&clearTimeout(this.holder.tm),t?this.holder.tm=setTimeout(function(){n.data.close(),n.holder.tm=null},t):this.data.close()):t?this.data.timeout=t:this.data.close(),this.closed},a.prototype.cancelClose=function(){this.data===this.holder.active?(clearTimeout(this.holder.tm),this.holder.tm=null):this.data.timeout=0},a.prototype.updateButtons=function(){this.data===this.holder.active&&this.data.instance.update("_toast.buttons")},a.prototype.set=function(t,e){if("object"==typeof t){for(var o in t)this.data[o]=t[o];return this.data===this.holder.active?this.data.instance.update("_toast"):Promise.resolve()}return this.data[t]=e,this.data===this.holder.active?this.data.instance.update("_toast."+n.Ractive.escapeKey(t)):Promise.resolve()},l.message.get=function(){return this.data.message},l.message.set=function(t){this.data.message=t,this.data===this.holder.active&&this.data.instance.update("_toast.message")},l.more.get=function(){return this.data.more},l.more.set=function(t){this.data.more=t,this.data===this.holder.active&&this.data.instance.update("_toast.more")},l.showMore.get=function(){return this.data.showMore},l.showMore.set=function(t){this.data.showMore=t,this.data===this.holder.active&&this.data.instance.update("_toast.showMore")},l.left.get=function(){return this.data.left},l.left.set=function(t){this.data.left=t,this.data.right=!1,this.data===this.holder.active&&this.data.instance.update("_toast.left")&&this.data.instance.update("_toast.right")},l.right.get=function(){return this.data.right},l.right.set=function(t){this.data.right=t,this.data.left=!1,this.data===this.holder.active&&this.data.instance.update("_toast.right")&&this.data.instance.update("_toast.left")},l.top.get=function(){return!this.data.bottom},l.top.set=function(t){this.data.bottom=!t,this.data===this.holder.active&&this.data.instance.update("_toast.bottom")},l.bottom.get=function(){return this.data.bottom},l.bottom.set=function(t){this.data.bottom=t,this.data===this.holder.active&&this.data.instance.update("_toast.bottom")},l.center.get=function(){return!this.data.left&&!this.data.right},l.center.set=function(t){this.data.left=!1,this.data.right=!1,this.data===this.holder.active&&this.data.instance.update("_toast.right"),this.data.instance.update("_toast.left")},l.context.get=function(){return this.data.context},l.context.set=function(t){this.data.context=t,this.data===this.holder.active&&this.data.instance.update("_toast.context")},l.type.get=function(){return this.data.type},l.type.set=function(t){this.data.type=t,this.data===this.holder.active&&this.data.instance.update("_toast.type")},l.class.get=function(){return this.data.class},l.class.set=function(t){this.data.class=t,this.data===this.holder.active&&this.data.instance.update("_toast.class")},l.dismissable.get=function(){return this.data.dismissable},l.dismissable.set=function(t){this.data.dismissable=t,this.data===this.holder.active&&this.data.instance.update("_toast.dismissable")},l.closeButton.get=function(){return this.data.closeButton},l.closeButton.set=function(t){this.data.closeButton=t,this.data===this.holder.active&&this.data.instance.update("_toast.closeButton")},l.buttons.get=function(){return this.data.buttons},l.buttons.set=function(t){this.data.buttons=t,this.data===this.holder.active&&this.data.instance.update("_toast.buttons")},l.live.get=function(){return this.data===this.holder.active||~this.holder.toasts.indexOf(this.data)},l.closed.get=function(){var t=this;return this._promise||(this._promise=new Promise(function(n){t.data.onclose=n})),this._promise},Object.defineProperties(a.prototype,l);var c,f=e.escapeKey,d=function(t){function n(n){t.call(this,n)}return t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n,n}(e);e.extendWith(d,{css:function(t){return[function(t){var n=Object.assign({},t("raui.primary"),t("raui.window.primary"));return n.action=Object.assign({},t("raui.window.action"),t("raui.window.primary.action")),n.host=Object.assign({},t("raui.window.host"),t("raui.window.primary.host")),n.title=Object.assign({inactive:{}},t("raui.window.title"),t("raui.window.primary.title")),"\n .rwhost {\n position: relative;\n display: flex;\n flex-direction: column;\n box-sizing: border-box;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n }\n \n .rwhost-sizer {\n position: absolute;\n }\n \n .rwhost-pane {\n display: flex;\n position: relative;\n width: 100%;\n box-sizing: border-box;\n flex-grow: 2;\n overflow: auto;\n background-color: "+(n.host.bg||n.bg||"#fff")+";\n z-index: 1;\n }\n .rwhost-pane.blocked {\n overflow: hidden;\n }\n \n .rwhost-pane-content {\n flex-grow: 1;\n }\n \n .rwhost-modal {\n position: absolute;\n position: --webkit-sticky;\n position: sticky;\n top: 0;\n left: 0;\n z-index: -1;\n opacity: 0;\n transition: opacity 0.2s ease-in-out, z-index 0s linear 0.2s;\n background-color: #000;\n }\n .rwhost-modal-active {\n width: 100%;\n height: 100%;\n opacity: 0.5;\n z-index: 1;\n transition: opacity 0.2s ease-in-out, z-index 0s linear;\n }\n \n .rwindow-wrapper {\n display: inline-block;\n box-sizing: border-box;\n position: absolute;\n }\n .rwindow-wrapper.rwindow-resizing {\n transition: none;\n }\n \n .rwindow-wrapper.rwindow-resizable {\n padding: "+(n.handleSize||7)+"px;\n }\n \n .rwindow-slide-left {\n height: 100%;\n left: 0;\n }\n .rwindow-slide-right {\n height: 100%;\n right: 0;\n }\n .rwindow-slide-top {\n width: 100%;\n top: 0;\n }\n .rwindow-slide-bottom {\n width: 100%;\n bottom: 0;\n }\n \n .rwindow-topmost > .rwindow {\n box-shadow: 0 6px 10px 0 rgba(0, 0, 0, 0.14), 0 1px 18px 0 rgba(0, 0, 0, 0.12), 0 3px 5px -1px rgba(0, 0, 0, 0.3);\n opacity: 1;\n }\n \n .rwindow-modal {\n position: absolute;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n background-color: rgba(0, 0, 0, 0.5);\n opacity: 0;\n z-index: -1;\n transition: opacity 0.4s ease-in-out, z-index 0s linear 0.4s;\n }\n .rwindow-modal.rwindow-blocked {\n opacity: 1;\n z-index: 50;\n transition: opacity 0.4s ease-in-out, z-index 0s linear;\n }\n \n .rwindow {\n position: relative;\n box-sizing: border-box;\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n border-radius: 2px;\n overflow: hidden;\n width: 100%;\n height: 100%;\n min-width: "+(n.minWidth||"6em")+";\n min-height: "+(n.minHeight||"6em")+";\n transition: box-shadow 0.4s ease-in-out, opacity 0.4s ease-in-out;\n }\n .rwindow-max > .rwindow {\n border-radius: 0;\n box-shadow: none;\n }\n \n .rwindow-pane-top,\n .rwindow-max-top {\n background-color: "+(n.title.inactive.bg||n.fg||"#222")+";\n color: "+(n.title.inactive.fg||n.bg||"#fff")+";\n flex-shrink: 0;\n }\n \n .rwindow-max-top {\n flex-shrink: 2;\n }\n \n .rwindow-pane-top {\n display: flex;\n align-items: center;\n }\n \n .rwindow-topmost .rwindow-pane-top {\n background-color: "+(n.title.bg||n.fga||"#07e")+";\n color: "+(n.title.fg||n.bg||"#fff")+";\n }\n \n .rwindow-pane {\n display: flex;\n flex-direction: column;\n table-layout: fixed;\n width: 100%;\n height: 100%;\n }\n .rwindow-autosizing {\n display: block;\n box-sizing: border-box;\n }\n .rwindow-content {\n overflow: auto;\n flex-grow: 2;\n position: relative;\n box-sizing: border-box;\n }\n .rwindow-content.rwindow-pad {\n padding: 1em;\n }\n .rwindow-content.rwindow-flex {\n display: flex;\n flex-direction: column;\n }\n \n .rwindow-buttons {\n display: flex;\n flex-shrink: 0;\n padding: 0.5em;\n border-top: 1px solid "+(n.action.bc||n.bc||"#ccc")+";\n background-color: "+(n.action.bg||n.bg||"#fff")+";\n color: "+(n.action.fg||n.fg||"#222")+";\n }\n .rwindow-buttons.no-buttons {\n display: none;\n }\n .rwindow-left-buttons {\n text-align: left;\n flex-grow: 2;\n }\n .rwindow-left-buttons button {\n margin-right: 0.5em;\n }\n .rwindow-center-buttons {\n text-align: center;\n flex-shrink: 2;\n }\n .rwindow-center-buttons button {\n margin: 0 0.25em;\n }\n .rwindow-right-buttons {\n text-align: right;\n flex-grow: 2;\n }\n .rwindow-right-buttons button {\n margin-left: 0.5em;\n }\n \n .rwindow-title {\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0.5em;\n white-space: nowrap;\n box-sizing: border-box;\n flex-grow: 1;\n }\n \n .rwindow-controls {\n display: flex;\n justify-content: flex-end;\n align-items: center;\n flex-grow: 1;\n }\n .rwindow-controls > div {\n margin: 0 1em 0 0;\n width: 0.7em;\n height: 0.7em;\n cursor: pointer;\n }\n .rwindow-minimize {\n border-bottom: 2px solid;\n }\n .rwindow-maximize {\n border: 2px solid;\n }\n .rwindow-controls > .rwindow-close {\n width: 0.5em;\n height: 1em;\n border-right: 2px solid;\n transform: rotate(45deg);\n transform-origin: center right;\n position: relative;\n margin-right: 1.5em;\n }\n .rwindow-close:before {\n cursor: pointer;\n height: 1.2em;\n width: 1.2em;\n top: 0.3em;\n left: 0.1em;\n content: ' ';\n transform: rotate(-45deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-close:after {\n cursor: pointer;\n height: 100%;\n width: 100%;\n top: 1px;\n left: calc(100% + 1px);\n content: ' ';\n border-left: 2px solid;\n transform: rotate(-90deg);\n transform-origin: center left;\n position: absolute;\n }\n .rwindow-max-top .rwindow-controls > .rwindow-close {\n margin-right: 0.5em;\n }\n "+("function"==typeof t("raui.window.extra")?t("raui.window.extra").call(this,t):"")+"\n "}.call(this,t)].join(" ")},cssId:"rwindow",noCssTransform:!0,delegate:!1,decorators:{tracked:function(t,n){return this[n]=t,{teardown:function(){this[n]===t&&(this[n]=null)}}}},transitions:{window:function(t,n){if(c)return t.complete();c=t;var e=t.processParams(n,{duration:400,easing:"easeInOut"}),o=t.node.parentNode,i=o.style?o.style.overflow:"";o.style&&(o.style.overflow="hidden"),t.isIntro||e.intro?(t.setStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0}),setTimeout(function(){t.animateStyle({transform:"none",opacity:1},e).then(function(){t.setStyle("opacity",1),c=!1,t.complete(),o.style&&(o.style.overflow=i)})})):(t.setStyle({transform:"none",opacity:1}),t.animateStyle({transform:"translate(30%, 0px) scale(1.1, 1.1)",opacity:0},e).then(function(){c=!1,t.complete(),o.style&&(o.style.overflow=i)}))},slide:function(t,n){var e=t.processParams(n,{duration:400,easing:"easeInOut"}),o=t.node.parentNode,i=o.style?o.style.overflow:"",r=function(){t.complete(),o.style&&setTimeout(function(){return o.style.overflow=i})};o.style&&(o.style.overflow="hidden"),t.isIntro||e.intro?"top"===e.from?(t.setStyle({transform:"translateY(-100%)"}),t.animateStyle({transform:"translateY(0)"},e).then(r)):"bottom"===e.from?(t.setStyle({transform:"translateY(100%)"}),t.animateStyle({transform:"translateY(0)"},e).then(r)):"left"===e.from?(t.setStyle({transform:"translateX(-100%)"}),t.animateStyle({transform:"translateX(0)"},e).then(r)):"right"===e.from&&(t.setStyle({transform:"translateX(100%)"}),t.animateStyle({transform:"translateX(0)"},e).then(r)):"top"===e.from?(t.setStyle({transform:"translateY(0)"}),t.animateStyle({transform:"translateY(-100%)"},e).then(r)):"bottom"===e.from?(t.setStyle({transform:"translateY(0)"}),t.animateStyle({transform:"translateY(100%)"},e).then(r)):"left"===e.from?(t.setStyle({transform:"translateX(0)"}),t.animateStyle({transform:"translateX(-100%)"},e).then(r)):"right"===e.from&&(t.setStyle({transform:"translateX(0)"}),t.animateStyle({transform:"translateX(100%)"},e).then(r))}}});var u,h=0,m=function(t){function n(n){t.call(this,n),this.defaults={}}t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n;var e={current:{configurable:!0},currentId:{configurable:!0},placement:{configurable:!0},topmost:{configurable:!0},windows:{configurable:!0}};return e.current.get=function(){var t=this.get("topLevel");return this.getWindow(this.get("windows")[t].id)},e.currentId.get=function(){var t=this.get("topLevel");return this.get("windows."+f(t)+".id")},e.placement.get=function(){return this.get("placement")},e.placement.set=function(t){return this.set("placement",t)},e.topmost.get=function(){var t=this.get("windows");for(var n in t)if(t[n].topmost)return this.getWindow(t[n].id)},e.windows.get=function(){return Object.keys(this.get("windows"))},n.prototype.addWindow=function(t,n){var e=this,o=Object.assign({},this.defaults,t.constructor.prototype.options,t.options,t.get("options"),n);if(!(t instanceof g))throw new Error("Windows must be instances of Window");t.id||t.set("@.id",o.id||"window"+h++),this.get("windows."+f(t.id))||this.set("windows."+f(t.id),Object.assign({show:!1!==o.show,autosize:!0,id:t.id,blockers:[],close:!0,minimize:!0,maximize:!0},o,{id:t.id})),t.host=this;var i,r=this.attachChild(t,{target:"window"});if(o.block&&("string"==typeof(i=o.block.id||o.block)&&i in this.get("windows")?(this.push("windows."+f(i)+".blockers",t.id),t.set("control.blocking",i)):i=!1),o.slide);else if("fill"===o.size&&(i||o.block)){var s;!0===o.block?s=this.find(".rwhost-pane"):(s=this.getWindow(i))&&(s=s.find(".rwindow")),s&&(t.size(s.clientWidth-(o.fillPad||20),s.clientHeight-(o.fillPad||20)),!o.block||o.top||o.left||(o.top=o.left=Math.floor((o.fillPad||20)/2)))}else o.width&&o.height?t.size(o.width,o.height):t.size("auto");return o.slide||(o.top&&o.left?t.move(o.top,o.left):this.place(t)),this.raise(t,{show:!1!==o.show,parent:o.stickToParent}),t.on("close",function(){var n=t.get("control.blocking");if(n){var o=e.windowGet(n,"blockers")||[];e.splice("windows."+f(n)+".blockers",o.indexOf(t.id),1)}e.detachChild(t).then(function(){return t.teardown()}),e.set("windows."+f(t.id)+".block",!1),e.set("windows."+f(t.id)+".index",-1),e.raise(),e.set("windows."+f(t.id),void 0),delete e.get("windows")[t.id]}),this.update("windows."+f(t.id)+".id",{force:!0}),r.then(function(){return t})},n.prototype.getWindow=function(t){return this.children.byName.window&&this.children.byName.window.filter(function(n){return n.instance.id===t}).map(function(t){return t.instance})[0]},n.prototype.windowGet=function(t,n){return this.get("windows."+f(t)+"."+n)},n.prototype.windowSet=function(t,n,e){return this.set("windows."+f(t)+"."+n,e)},n.prototype.raise=function(t,n){var e=this;void 0===n&&(n={});var o=t instanceof g?t:this.children.byName.window.filter(function(n){return n.instance.id===t}).map(function(t){return t.instance})[0],i=this.get("windows",{virtual:!1}),r=Object.keys(i).map(function(t){return i[t]}),s=2*(r.length+1),a=this.get("topLevel"),l=(this.get("blocked"),o?o.get("control.id"):r.reduce(function(t,n){return t?n.index>t.index?n:t:n},null));function c(t){t.blockers&&t.blockers.forEach(function(n,e){var o=r.find(function(t){return t.id===n});o&&(o.index=t.index+e+1,c(o))})}if(!o&&l&&(o=this.children.byName.window.find(function(t){return t.instance.id===l})),o){var d=o.get("control");d.index=!1===n.show?-1:s,c(d),d.blocking&&function t(n,e){n&&(n.index=e--,n.blocking&&t(r.find(function(t){return t.id===n.blocking}),e),c(n))}(r.find(function(t){return t.id===d.blocking}),s-1),!1===n.show||d.show||o.show()}r.filter(function(t){return!1!==t.show&&!0===t.block}).forEach(function(t){e.set("windows."+f(t.id)+".index",(t.index||0)+s),c(t)});var u=r.sort(function(t,n){return t.show?n.show&&t.index<n.index?-1:1:-1}),h=u.filter(function(t){return t.show});s=u.indexOf(h[h.length-1]);var m={},w=null;if(u.forEach(function(t,n){var e=f(t.id);!0===t.block&&null===w&&(w=n),m["windows."+e+".index"]=t.index=null!==w?n+2:n,m["windows."+e+".topmost"]=n===s,m["windows."+e+".stack"]=u.length-n}),m.blocked=null!==w?w+1:0,~s&&u.length?m.topLevel=u[s].id:m.topLevel=null,this.set(m),(s=m.topLevel)&&s!==a&&this.get("currentMax")&&this.rendered){var p=this.get("windows."+f(a));o=this.getWindow(s);var b=this.get("transition");!1===b||o.get("control.slide")||p&&(p.dialog||p.slide||p.blocking&&(!p.blocking||p.blocking===s))||o.transition(b||"window",o.find("div"),{intro:!0})}},n.prototype.place=function(t){var n=this;return t.get("control.show")?new Promise(function(e){requestAnimationFrame(function(){var o=t.get("control");void 0===o.width&&t.size("auto");var i=0,r=0;if(n.fragment&&n.fragment.rendered){var s=n.find(".rwhost"),a=s.clientWidth,l=s.clientHeight,c=o.blocking;if(c){var d="windows."+f(c),u=n.get(d),h=o.max||!o.dialog&&(n.get("max")||n.get("userMax")),m=u.max||n.get("userMax")||n.get("max"),p=m?n.host.clientWidth:n.sizeInPx(u.width+"em"),g=m?n.host.clientHeight:n.sizeInPx(u.height+"em"),b=m?0:u.left,x=m?0:u.top;i=(h?a:p/2)+(h?0:b)-n.sizeInPx(o.width+"em")/2,r=(h?l:g/2)+(h?0:x)-n.sizeInPx(o.height+"em")/2}else{var y,v=n.get("placement");if("function"==typeof v)try{y=v(n,s,o)}catch(t){y=w(n,s,o)}else if("string"==typeof v)switch(v){case"smart":y=function(t,n,e){var o,i,r=n.clientWidth-10,s=n.clientHeight-10,a=Math.floor(s/16),l=Math.floor(r/16),c=new Array(a*l),f=new Array(a*l);for(o=0;o<c.length;o++)c[o]=0;var d,u,h,m,w,p,g,b,x=0,y=t.get("windows");for(var v in y)for(x++,d=y[v],u=Math.floor(d.top/16),h=Math.floor(d.left/16),w=Math.ceil(t.sizeInPx(d.height+"em")/16),m=Math.ceil(t.sizeInPx(d.width+"em")/16),o=u;o<u+w&&o<a;o++)for(i=h;i<h+m&&i<l;i++)c[o*l+i]++;for(m=Math.ceil(t.sizeInPx(e.width+"em")/16),w=Math.ceil(t.sizeInPx(e.height+"em")/16),o=0;o<a;o++)for(i=0;i<l;i++){if(o+w>a||i+m>l)p=x*m*w;else for(p=0,g=0;g<w;g++)for(b=0;b<m;b++)p+=c[(o+g)*l+i+b];if(0===p)return{top:16*o+5,left:16*i+5};f[o*l+i]=p}for(p=x*m*w,g=0,o=0;o<f.length;o++)f[o]<p&&(p=f[o],g=o);return{top:16*Math.floor(g/l)+5,left:g%l*16+5}}(n,s,o);break;default:y=w(n,s,o)}else y=w(n,s,o);r=y.top,i=y.left}(isNaN(i)||i<0)&&(i=10),(isNaN(r)||r<0)&&(r=10),t.set({"control.top":r,"control.left":i}),e()}})}):Promise.resolve()},n.prototype.sizeInPx=function(t){return this.sizer?(this.sizer.style.width="number"==typeof t?t+"px":t,this.sizer.clientWidth):16*parseFloat(t)},n.prototype.sizeInEm=function(t){return this.sizeInPx(t)/this.sizeInPx("1em")},Object.defineProperties(n.prototype,e),n}(d);function w(t,n,e){var o=n.clientWidth,i=n.clientHeight,r=0,s=0,a=void 0===t._grid1?t._grid1=0:t._grid1>7?t._grid1=0:++t._grid1,l=Math.floor(o/3),c=Math.floor(i/3),f=t.sizeInPx(e.width+"em"),d=t.sizeInPx(e.height+"em");switch(a){case 5:case 7:case 8:r=i-d-10;break;case 2:case 4:case 6:r=c+Math.floor((c-d)/2);break;case 0:case 1:case 3:r=10}switch(a){case 3:case 6:case 8:s=o-f-10;break;case 1:case 4:case 7:s=l+Math.floor((l-f)/2);break;case 0:case 2:case 5:s=10}return s+f>o&&(s=o-f-10),r+d>i&&(r=i-d-10),{top:r,left:s}}d.extendWith(m,{template:{v:4,t:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost",g:1},{n:"tracked",t:71,f:{r:[],s:'["host"]'}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-sizer",g:1},{n:"tracked",t:71,f:{r:[],s:'["sizer"]'}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-max-top",g:1},{t:4,f:[{t:16,r:"~/_maxAttrsP"}],n:50,r:"~/_maxAttrsP"}],f:[{t:16,r:"~/_maxP",z:[{n:"window",x:{r:"~/current"}},{n:"windowControls",x:{x:{r:["@this.partials.windowControls"],s:"{t:_0}"}}},{n:"host",x:{r:"@this"}}]}]}],n:50,x:{r:["~/currentMax","~/_maxP"],s:"_0&&_1"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane",g:1},{n:"class-rwhost-blocked",t:13,f:[{t:2,r:"~/blocked"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-pane-content",g:1}],f:[{t:16}]}," ",{t:4,f:[{t:11,n:"window",m:[{n:"control",f:[{t:2,rx:{r:"~/windows",m:[{t:30,n:".instance.id"}]}}],t:13},{n:"root",t:13,f:[{t:2,r:"~/"}]}]}],n:52,r:"@this.children.byName.window"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwhost-modal",g:1},{n:"tracked",t:71,f:{r:[],s:'["modalPane"]'}},{t:4,f:[{n:"class-rwhost-modal-active",t:13},{n:"style-z-index",f:[{t:2,r:"~/blocked"}],t:13}],n:50,r:"~/blocked"}]}]}," ",{t:8,r:"toast"}]}],e:{'["host"]':function(){return["host"]},'["sizer"]':function(){return["sizer"]},"{t:_0}":function(t){return{t:t}},"_0&&_1":function(t,n){return t&&n},'["modalPane"]':function(){return["modalPane"]},"[_0.getWindow(_1).hide()]":function(t,n){return[t.getWindow(n).hide()]},"!_0&&_1":function(t,n){return!t&&n},"[_0.getWindow(_1).maximize()]":function(t,n){return[t.getWindow(n).maximize()]},"!_0&&_1&&_2":function(t,n,e){return!t&&n&&e},"[_0.getWindow(_1).close()]":function(t,n){return[t.getWindow(n).close()]},'["top"]':function(){return["top"]},"[_0.hide()]":function(t){return[t.hide()]},"[_0.maximize()]":function(t){return[t.maximize()]},"[_0.close()]":function(t){return[t.close()]},"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6":function(t,n,e,o,i,r,s){return!((t||n||e)&&o&&!i||r||s)},'["content"]':function(){return["content"]},"!_0":function(t){return!t},"[_0.call(_1)]":function(t,n){return[t.call(n)]},'["wrapper"]':function(){return["wrapper"]},"_0!==false":function(t){return!1!==t},"_0||_1":function(t,n){return t||n},"(_0||_1||_2)&&!_3&&!_4":function(t,n,e,o,i){return(t||n||e)&&!o&&!i},"[{from:_0}]":function(t){return[{from:t}]},"[_0._startResize(_1)]":function(t,n){return[t._startResize(n)]},"[_0._sizeHandle(_1)]":function(t,n){return[t._sizeHandle(n)]},"[_0._startMove(_1)]":function(t,n){return[t._startMove(n)]},"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5":function(t,n,e,o,i,r){return!(!1===i||(t||n)&&!o||e||o&&!0!==i||r)},"[_0.raise()]":function(t){return[t.raise()]},'["pane"]':function(){return["pane"]},"_0&&!_1":function(t,n){return t&&!n}},p:{title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],windowControls:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).hide()]"}}]}],n:50,x:{r:["window.dialog","window.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).maximize()]"}}]}],n:50,x:{r:["window.dialog","window.maximize","host.data.userMax"],s:"!_0&&_1&&_2"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["host","window.id"],s:"[_0.getWindow(_1).close()]"}}]}],n:50,r:"window.close"}]}],pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],window:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]}},use:[function(t){void 0===t&&(t={});var n=function(t){return[function(t){var n=Object.assign({},t("raui.primary"),t("raui.toast.primary"));return"\n .rtoast {\n position: absolute;\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n left: 1em;\n right: 1em;\n top: 1em;\n bottom: auto;\n z-index: 5;\n pointer-events: none;\n overflow: hidden;\n max-height: 80%;\n }\n .rtoast-message {\n flex-grow: 2;\n display: flex;\n align-items: center;\n }\n .rtoast-string {\n white-space: pre-wrap;\n line-height: 1.3em;\n padding-top: 0.3em;\n }\n .rtoast-upper .rtoast-string {\n \n }\n .rtoast-expand .rtoast-string {\n padding-top: 0.5em;\n }\n .rtoast-buttons {\n display: flex;\n padding-left: 0.5em;\n flex-shrink: 1;\n align-items: center;\n max-height: max-content;\n margin-left: auto;\n }\n .rtoast-buttons button {\n cursor: pointer;\n }\n .rtoast-button {\n background-color: transparent;\n border: none;\n color: inherit;\n padding: 0.5em 0.75em;\n margin: 0 0 0 0.5em;\n line-height: 1em;\n box-shadow: none;\n }\n .rtoast-more {\n cursor: pointer;\n width: 2em;\n position: relative;\n flex-shrink: 2;\n background-color: transparent;\n border: none;\n color: inherit;\n margin: 0 0 0 0.5em;\n height: 2em;\n }\n .rtoast-more:after {\n content: ' ';\n position: absolute;\n display: block;\n width: 0.6em;\n height: 0.6em;\n top: calc(50% - 0.55em);\n left: calc(50% - 0.3em);\n border-bottom: 0.125em solid;\n border-right: 0.125em solid;\n transform: rotate(45deg);\n transition: transform 0.2s ease-in-out, top 0.2s ease-in-out;\n pointer-events: none;\n }\n .rtoast-expanded .rtoast-more:after {\n transform: rotate(225deg);\n top: calc(50% - 0.1em);\n }\n .rtoast-bottom {\n bottom: 1em;\n top: auto;\n }\n .rtoast-left {\n justify-content: flex-start;\n }\n .rtoast-right {\n justify-content: flex-end;\n }\n .rtoast-body {\n border-radius: 0.2em;\n padding: 1em;\n color: "+(n.bg||"#fff")+";\n background-color: "+(n.fg||"#222")+";\n box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12), 0 3px 1px -2px rgba(0, 0, 0, 0.2);\n opacity: 0.95;\n pointer-events: all;\n transition: color 0.5s ease-in-out, background 0.5s ease-in-out;\n flex-shrink: 1;\n display: flex;\n flex-direction: column;\n }\n .rtoast-upper {\n display: flex;\n flex-shrink: 2;\n flex-wrap: wrap;\n justify-content: space-between;\n }\n \n .rtoast-expand {\n margin-top: 1em;\n border-radius: 0.2em;\n background-color: "+(n.bg||"#fff")+";\n color: "+(n.fg||"#222")+";\n overflow: auto;\n }\n \n .rtoast-success {\n color: "+(t("raui.toast.success.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.success.bg")||"#4caf50")+";\n }\n .rtoast-info {\n color: "+(t("raui.toast.info.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.info.bg")||"#07e")+";\n }\n .rtoast-warn {\n color: "+(t("raui.toast.warn.fg")||"#222")+";\n background-color: "+(t("raui.warn.success.bg")||"#ffc107")+";\n }\n .rtoast-error {\n color: "+(t("raui.toast.error.fg")||"#f9f9f9")+";\n background-color: "+(t("raui.toast.error.bg")||"#ff5252")+";\n }\n "}.call(this,t)].join(" ")},e={v:4,t:[{t:4,f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast",g:1},{n:"class-rtoast-expanded",t:13,f:[{t:2,r:".showMore"}]},{n:"class-rtoast-bottom",t:13,f:[{t:2,r:".bottom"}]},{n:"class-rtoast-left",t:13,f:[{t:2,r:".left"}]},{n:"class-rtoast-right",t:13,f:[{t:2,r:".right"}]}],f:[{t:7,e:"div",m:[{n:"toast",t:72,v:"t0"},{n:"class",f:["rtoast-body",{t:4,f:[" rtoast-",{t:2,r:".type"}],n:50,r:".type"},{t:4,f:[{t:2,r:".class"}],n:50,r:".class"}],t:13},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.close()]"}}],n:50,x:{r:[".dismissable"],s:"_0!==false"}}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-upper",g:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-message",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".message",c:{r:".context"}}],n:50,x:{r:[".context"],s:"!!_0"}},{t:4,f:[{t:8,r:".message"}],n:51,l:1}],n:50,x:{r:[".message"],s:"Array.isArray(_0)"}},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-string",g:1}],f:[{t:2,r:".message"}]}],n:51,l:1}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-buttons",g:1}],f:[{t:4,f:[{t:7,e:"button",m:[{n:"class",f:["rtoast-button",{t:4,f:[" ",{t:2,r:".class"}],n:50,r:".class"}],t:13},{t:4,f:[{n:["click"],t:70,f:{r:["."],s:"[_0.action()]"}}],n:50,x:{r:[".action"],s:'typeof _0==="function"'}}],f:[{t:2,r:".label"}]}],n:52,r:".buttons"},{t:4,f:[{t:7,e:"button",m:[{t:13,n:"class",f:"rtoast-button",g:1}],f:["Close"]}],n:50,x:{r:[".dismissable",".closeButton"],s:"_0!==false&&_1!==false"},l:1}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-more",g:1},{n:"title",f:"Toggle more",t:13,g:1},{n:["click"],t:70,f:{r:[".","@context"],s:'[_0.expand(),(_1).toggle(".showMore"),false]'}}]}],n:50,r:".more"}]}],n:50,x:{r:[".dismissable",".closeButton",".buttons.length",".more"],s:"(_0!==false&&_1!==false)||_2||_3"}}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-expand",g:1},{n:"toast-expand",t:72,v:"t0"},{n:["click"],t:70,f:{r:[],s:"[false,false]"}}],f:[{t:4,f:[{t:4,f:[{t:8,r:".more",c:{r:".context"}}],n:50,x:{r:[".context"],s:"!!_0"}},{t:4,f:[{t:8,r:".more"}],n:51,l:1}],n:50,x:{r:[".more"],s:"Array.isArray(_0)"}},{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rtoast-string",g:1}],f:[{t:2,r:".more"}]}],n:51,l:1}]}],n:50,x:{r:[".more",".showMore"],s:"_0&&_1"}}]}]}],n:54,r:"~/_toast"}],n:50,r:"~/_toast"}],e:{"[_0.close()]":function(t){return[t.close()]},"_0!==false":function(t){return!1!==t},"!!_0":function(t){return!!t},"Array.isArray(_0)":function(t){return Array.isArray(t)},"[_0.action()]":function(t){return[t.action()]},'typeof _0==="function"':function(t){return"function"==typeof t},"_0!==false&&_1!==false":function(t,n){return!1!==t&&!1!==n},'[_0.expand(),(_1).toggle(".showMore"),false]':function(t,n){return[t.expand(),n.toggle(".showMore"),!1]},"(_0!==false&&_1!==false)||_2||_3":function(t,n,e,o){return!1!==t&&!1!==n||e||o},"[false,false]":function(){return[!1,!1]},"_0&&_1":function(t,n){return t&&n}}};return function(o){var i=o.Ractive,r=o.instance,l=o.proto;r.partials[t.name||"toast"]=e;var c,f=Object.assign({},s,t),d=[],u={toasts:d};function h(n,e){c!==n?(d.splice(d.indexOf(t),1),"function"==typeof n.onclose&&n.onclose()):(u.tm&&(clearTimeout(u.tm),u.tm=null),c.instance.set("_toast",null).then(function(){u.active=c=null,"function"==typeof n.onclose&&n.onclose(),d.length&&m()})),e&&e.fire("toasted",null,n)}function m(){u.active=c=d.shift(),c.instance.set("_toast",c).then(function(){c.timeout&&(u.tm&&clearTimeout(u.tm),u.tm=setTimeout(function(){c.close(),u.tm=null},c.timeout))})}if(Object.defineProperty(l,"toastDefaults",{value:f,writable:!1,configurable:!0}),l.toast=function(t,n){var e=this,o=Object.assign({message:t,instance:this},f,this.toastDefaults,n);return o.close=function(){return h(o,e)},o.expand=function(){u.active===o&&(u.tm&&(clearTimeout(u.tm),u.tm=null),o.showMore&&o.timeout&&(u.tm=setTimeout(function(){o.close(),u.tm=null},o.timeout)))},d.push(o),c||m(),new a(u,o)},l.on=l.on||{},r.transitions.toast=function(t,n){var e=t.processParams({duration:200},n),o=t.getStyle("opacity");return t.isIntro?(t.setStyle({opacity:0,transform:"translateY("+(c.bottom?"":"-")+"1em)"}),t.animateStyle({opacity:o,transform:"none"},e)):(t.setStyle({opacity:o,transform:"none"}),t.animateStyle({opacity:0,transform:"translateY("+(c.bottom?"":"-")+"1em)"},e))},r.transitions["toast-expand"]=function(t,n){var e=t.processParams({duration:200,nested:!1},n);if(t.isIntro){var o=t.getStyle("height"),i=t.getStyle("width");return t.setStyle("height",0),t.setStyle("width",0),t.animateStyle("width",i,e).then(function(){return t.animateStyle("height",o,e)}).then(function(){t.setStyle("height",""),t.setStyle("width","")})}var r=t.getStyle("height");return t.setStyle("height",r),t.setStyle("width",t.getStyle("width")),t.animateStyle("height",0,e).then(function(){return t.animateStyle("width",0,e)}).then(function(){t.setStyle("height",""),t.setStyle("width","")})},l.on["close-toast"]=function(){c&&c.close()},r===i||i.isInstance(r))i.hasCSS("toast-css")||i.addCSS("toast",n);else{var w=r.css;r.css=function(t){var e="";return"string"==typeof w?e+=w:"function"==typeof w&&(e+=w(t)),n(t)+e}}return l}}(),(void 0===u&&(u={}),function(t){t.instance.transitions[u.name||"expand"]=r})],cssId:"window-host",noIntro:!0,observe:{"@style.raui.window.maxFrom":function(){var t;(t=this)._media?t._media.fn():(t._media={},t._media.fn=function(){if(t.host){var n=t.sizeInPx(t.get("@style.raui.window.maxFrom")),e=t.transitionsEnabled;t.transitionsEnabled=!1,t.set("max",t.host.clientWidth<=n),t.set("dimensions",{clientWidth:t.host.clientWidth,clientHeight:t.host.clientHeight}),t.transitionsEnabled=e}},t._media.handle=t.root.on("*.resize",t._media.fn),setTimeout(t._media.fn))},topLevel:function(t){t?this.link("windows."+f(t),"current"):this.unlink("current")},currentMax:{handler:function(t){(this.children.byName.window||[]).forEach(function(t){return t.instance.fire("resize")})},defer:!0}},computed:{currentMax:function(){var t=this.get("topLevel"),n=this.get("windows."+f(t)+".max");return this.get("userMax")||this.get("max")||n}},on:{config:function(){var t,n=this,e=this.partials.content;if(e&&Array.isArray(e))for(var o=(e=this.partials.content=e.slice()).length;o--;){var i=e[o];"max-top"===i.e&&(e.splice(o,1),this.set({_maxP:{t:i.f},hideTitleMax:!0}),i.m&&this.set({_maxAttrsP:{t:i.m}}))}"undefined"!=typeof window&&(this._resizeListener=function(){t||(t=setTimeout(function(){t=null,n.fire("resize")},300))},window.addEventListener("resize",this._resizeListener))},teardown:function(){this._resizeListener&&window.removeEventListener("resize",this._resizeListener)}}}),e.transitions.modal=function(t,n){var e,o=t.processParams(n,{duration:400,easing:"easeOut",x:0,y:-50,event:!0}),i=t.node.offsetLeft,r=t.node.offsetTop,s=t.node.parentNode.style?t.node.parentNode.style.overflow:"hidden";if(t.node._modalSrc){var a=t.node._modalSrc||{x:i+o.x,y:r+o.y},l={x:a.x-Math.round(t.node.clientWidth/2)-i,y:a.y-Math.round(t.node.clientHeight/2)-r};t.node.parentNode.style&&(t.node.parentNode.style.overflow="hidden"),t.isIntro?(t.node._modalSrc=a,e={transform:"translate(0, 0) scale(1, 1)",opacity:1},t.setStyle({transform:"translate("+l.x+"px, "+l.y+"px) scale(0.5, 0.5)",opacity:0})):e={transform:"translate("+l.x+"px, "+l.y+"px) scale(0.5, 0.5)",opacity:0}}else t.isIntro?(e={transform:"translate(0, 0) scale(1, 1)",opacity:1},t.setStyle({transform:"translate("+o.x+"px, "+o.y+"px) scale(0.5, 0.5)",opacity:0})):e={transform:"translate("+o.x+"px, "+o.y+"px) scale(0.5, 0.5)",opacity:0};t.animateStyle(e,o).then(function(){t.node.parentNode.style&&(t.node.parentNode.style.overflow=s),t.complete()})};var p=["mousemove","mouseup","touchmove","touchend"],g=function(t){function n(n){t.call(this,n)}t&&(n.__proto__=t),n.prototype=Object.create(t&&t.prototype),n.prototype.constructor=n;var e={resizable:{configurable:!0},title:{configurable:!0},visible:{configurable:!0},pad:{configurable:!0},buttons:{configurable:!0},blocked:{configurable:!0},result:{configurable:!0}};return e.resizable.get=function(){return this.get("control.resizable")},e.resizable.set=function(t){return this.set("control.resizable",t)},e.title.get=function(){return this.get("control.title")},e.title.set=function(t){return this.set("control.title",t)},e.visible.get=function(){return this.get("control.show")},e.visible.set=function(t){t?this.show():this.set("control.show",t,{keep:!0}),this.host.raise(this,{show:t})},e.pad.get=function(){return this.get("pad")},e.pad.set=function(t){this.set("pad",t)},e.buttons.get=function(){return this.get("buttons")},e.buttons.set=function(t){return this.set("buttons",t)},e.blocked.get=function(){return this.get("control.blocked")},e.blocked.set=function(t){return this.set("control.blocked",t)},e.result.get=function(){var t=this;return this._result||(this._result={},this._result.promise=new Promise(function(n){t._result.ok=n})),this._result.promise},n.prototype.setResult=function(t){this.result,this._result.value=t},n.prototype.close=function(t,n){if(!0!==t){if(!this.parent)return!1;if(this.get("control.blockers.length"))return!1;if("function"==typeof this.beforeClose&&!1===this.beforeClose())return!1;if(!1===this.fire("beforeClose"))return!1}return this.fire("close"),this._result&&this._result.ok(this._result.value||n),!0},n.prototype.maximize=function(){this.toggle("root.userMax")},n.prototype.hide=function(){this.visible=!1},n.prototype.raise=function(t){this.host.raise(this,{show:t})},n.prototype.show=function(){this.set("control.show",!0),void 0===this.get("control.top")&&this.host.place(this)},n.prototype.size=function(t,n){var e=this;return new Promise(function(o){requestAnimationFrame(function(){if(e.visible){var i=e.wrapper;if(i){if("auto"===t){e.set("control.autosize",!0);var r=e.host.sizeInEm(i.clientWidth+16),s=e.host.sizeInEm(i.clientHeight);e.set({"control.width":r,"control.height":s,"control.naturalWidth":r,"control.naturalHeight":s,"control.autosize":!1})}else if("number"==typeof t&&"number"==typeof n)e.set({"control.width":e.host.sizeInEm(t),"control.height":e.host.sizeInEm(n),"control.naturalWidth":e.host.sizeInEm(t),"control.naturalHeight":e.host.sizeInEm(n),"control.autosize":!1});else if("string"==typeof t&&"string"==typeof n){var a=i.style.width,l=i.style.height;i.style.width=t,i.style.height=n;var c=i.clientWidth,f=i.clientHeight;i.style.width=a,i.style.height=l,e.set({"control.width":e.host.sizeInEm(c),"control.height":e.host.sizeInEm(f),"control.naturalWidth":e.host.sizeInEm(c),"control.naturalHeight":e.host.sizeInEm(f),"control.autosize":!1})}e.fire("resize"),o()}}else"number"==typeof t&&"number"==typeof n&&e.set({"control.width":e.host.sizeInEm(t),"control.height":e.host.sizeInEm(n),"control.naturalWidth":e.host.sizeInEm(t),"control.naturalHeight":e.host.sizeInEm(n),"control.autosize":!1})})})},n.prototype.move=function(t,n){var e=this;return new Promise(function(o){requestAnimationFrame(function(){"center"===t?t=e.host.modalPane.clientHeight/2-e.wrapper.clientHeight/2:"string"==typeof t&&(t=e.host.sizeInEm(t)),"center"===n&&(n=e.host.modalPane.clientWidth/2-e.wrapper.clientWidth/2),"string"==typeof n&&(n=e.host.sizeInEm(n));var i={};"number"==typeof t&&(i["control.top"]=t),"number"==typeof n&&(i["control.left"]=n),e.set(i),o()})})},n.prototype._startMove=function(t){var n=this;if("mousedown"!==t.type||0===t.button){if(this.get("control.topmost")||this.raise(),~t.type.indexOf("mouse")){if(!this.top||!t.ctrlKey&&t.target!==this.content&&t.target!==this.top&&!this.top.contains(t.target))return}else if(t.targetTouches&&1===t.targetTouches.length&&t.target!==this.content&&t.target!==this.top&&!this.top.contains(t.target))return;var e=this.pane,o=e.style.cursor;e.style.cursor="move",e.style.userSelect="none";var i=t.x||t.clientX||t.targetTouches&&t.targetTouches[0].clientX||0,r=t.y||t.clientY||t.targetTouches&&t.targetTouches[0].clientY||0,s=this.get("control.left")||0,a=this.get("control.top")||0,l=e.clientWidth,c=e.clientHeight,f=function(t){var d=t.x||t.clientX||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientX||t.changedTouches&&t.changedTouches[0].clientX||0,u=t.y||t.clientY||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientY||t.changedTouches&&t.changedTouches[0].clientY||0,h=s+(d-i),m=a+(u-r);h<(l<30?0:30-l)&&(h=l<30?0:30-l),m<(c<30?0:30-c)&&(m=c<30?0:30-c),h<0&&(h=0),m<0&&(m=0),n.set({"control.top":m,"control.left":h}),"touchend"===t.type||"mouseup"===t.type?(p.forEach(function(t){return document.removeEventListener(t,f,{passive:!1})}),e.style.cursor=o,e.style.userSelect=""):t.preventDefault()};return p.forEach(function(t){return document.addEventListener(t,f,{passive:!1})}),0!==t.type.indexOf("mouse")&&void 0}},n.prototype._startResize=function(t){var n=this;if(t.target===this.wrapper&&("mousedown"!==t.type||0===t.button)){this.get("control.autosize")&&this.size("auto"),this.get("control.topmost")||this.raise(),this.set("control.resizing",!0);var e,o=this.wrapper,i=t.offsetX||t.targetTouches&&t.targetTouches[0].pageX-o.getBoundingClientRect().left,r=t.offsetY||t.targetTouches&&t.targetTouches[0].pageY-o.getBoundingClientRect().top,s=this.get("@style.window.handleSize")||7,a=o.clientWidth-2*s,l=o.clientHeight-2*s,c=2*s,f=i<=c||i>=a,d=r<=c||r>=l,u=t.x||t.clientX||t.targetTouches&&t.targetTouches[0].clientX||0,h=t.y||t.clientY||t.targetTouches&&t.targetTouches[0].clientY||0,m=this.get("control.left")||0,w=this.get("control.top")||0,g=this.host.sizeInPx(this.get("control.width")+"em"),b=this.host.sizeInPx(this.get("control.height")+"em"),x=this.host.sizeInPx(this.get("control.naturalHeight")+"em"),y=this.host.sizeInPx(this.get("control.naturalWidth")+"em"),v=function(t){t.preventDefault();var o=t.x||t.clientX||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientX||t.changedTouches&&t.changedTouches[0].clientX||0,a=t.y||t.clientY||t.targetTouches&&t.targetTouches[0]&&t.targetTouches[0].clientY||t.changedTouches&&t.changedTouches[0].clientY||0,l=f?o-u:0,c=d?a-h:0,_={};r<=s?(_["control.top"]=w+c,_["control.height"]=b-c):_["control.height"]=b+c,i<=s?(_["control.left"]=m+l,_["control.width"]=g-l):_["control.width"]=g+l,_["control.width"]<y&&(delete _["control.width"],delete _["control.left"]),_["control.height"]<x&&(delete _["control.height"],delete _["control.top"]),_["control.left"]<0&&(_["control.left"]=0),_["control.top"]<0&&(_["control.top"]=0),_["control.width"]&&(_["control.width"]=n.host.sizeInEm(_["control.width"])),_["control.height"]&&(_["control.height"]=n.host.sizeInEm(_["control.height"])),n.set(_),"touchend"===t.type||"mouseup"===t.type?(p.forEach(function(t){return document.removeEventListener(t,v,{passive:!1})}),n.set("control.resizing",!1),g===n.get("control.width")&&b===n.get("control.height")||(e&&clearTimeout(e),e=null,n.fire("resize"))):e||(e=setTimeout(function(){n.fire("resize"),e=null},200))};return p.forEach(function(t){return document.addEventListener(t,v,{passive:!1})}),!1}},n.prototype._sizeHandle=function(t){if(t.target===this.wrapper){var n=this.wrapper;if("mouseout"===t.type)return n.style.cursor="auto";var e=t.offsetX,o=t.offsetY,i=this.get("@style.window.handleSize")||7,r=n.clientWidth-i,s=n.clientHeight-i,a=n.style;a.cursor=e<=i+i&&o<=i+i||e>=r-i&&o>=s-i?"nwse-resize":e>=r-i&&o<=i+i||e<=i+i&&o>=s-i?"nesw-resize":(e<=i||e>=r)&&(o<s||o>i)?"ew-resize":(o<=i||o>=s)&&(e<r||e>i)?"ns-resize":"auto"}},Object.defineProperties(n.prototype,e),n}(d),b=["left","right","center","condition"];function x(t){return void 0===t&&(t={}),function(n){n.instance.components[t.name||"host"]=m}}d.extendWith(g,{template:{v:4,t:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-wrapper",g:1},{n:"tracked",t:71,f:{r:[],s:'["wrapper"]'}},{t:4,f:[" ",{t:4,f:[{n:"window",t:72,v:"t2"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"style-top",f:"0",t:13},{n:"style-left",f:"0",t:13},{n:"style-width",f:"100%",t:13},{n:"style-height",f:"100%",t:13}],n:51,x:{r:["~/control.autosize","~/control.dialog"],s:"_0||_1"}},{n:"class-rwindow-max",t:13}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.slide"],s:"(_0||_1||_2)&&!_3&&!_4"}},{t:4,f:[{n:"class",f:["rwindow-slide rwindow-slide-",{t:2,r:"~/control.slide"}],t:13},{n:"slide",t:72,f:{r:["~/control.slide"],s:"[{from:_0}]"},v:"t0"}],n:50,r:"~/control.slide",l:1},{t:4,f:[" ",{t:4,f:[{n:"modal",t:72,v:"t0"}],n:50,x:{r:["~/root.transition"],s:"_0!==false"}}," ",{t:4,f:[{n:"class-rwindow-resizable",t:13},{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startResize(_1)]"}},{n:["mousemove","mouseout"],t:70,f:{r:["@this","@event"],s:"[_0._sizeHandle(_1)]"}}],n:50,r:"~/control.resizable"}," ",{t:4,f:[{n:"class-rwindow-resizing",t:13}],n:50,r:"~/control.resizing"},{n:"style-top",f:[{t:2,r:"~/control.top"},"px"],t:13},{n:"style-left",f:[{t:2,r:"~/control.left"},"px"],t:13},{t:4,f:[{n:"style-width",f:[{t:2,r:"~/control.width"},"em"],t:13},{n:"style-height",f:[{t:2,r:"~/control.height"},"em"],t:13}],n:51,r:"~/control.autosize"}],n:51,l:1},{n:"style-z-index",f:[{t:2,r:"~/control.index"}],t:13},{n:"class-rwindow-topmost",t:13,f:[{t:2,r:"~/control.topmost"}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow",g:1},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this","@event"],s:"[_0._startMove(_1)]"}}],n:50,x:{r:["~/root.max","~/root.userMax","~/control.max","~/control.dialog","~/control.movable","~/control.slide"],s:"!(_4===false||((_0||_1)&&!_3)||_2)&&(!_3||_4===true)&&!_5"}},{t:4,f:[{n:["mousedown","touchstart"],t:70,f:{r:["@this"],s:"[_0.raise()]"}}],n:50,x:{r:["~/control.topmost"],s:"!_0"},l:1}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-modal",g:1},{n:"class-rwindow-blocked",t:13,f:[{t:2,x:{r:["~/control.blockers.length","~/control.blocked"],s:"_0||_1"}}]}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane",g:1},{n:"tracked",t:71,f:{r:[],s:'["pane"]'}},{t:4,f:[{n:"class-rwindow-autosizing",t:13}],n:50,x:{r:["~/control.autosize","~/control.slide"],s:"_0&&!_1"}}],f:[{t:8,r:"pane"}]}]}]}],n:50,r:"~/control.show"}]},cssId:"window",partials:{pane:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-top",g:1},{n:"tracked",t:71,f:{r:[],s:'["top"]'}}],f:[{t:8,r:"title"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-controls",g:1}],f:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-minimize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.hide()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.minimize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-maximize",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.maximize()]"}}]}],n:50,x:{r:["~/control.dialog","~/control.maximize"],s:"!_0&&_1"}}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-close",g:1},{n:["click"],t:70,f:{r:["@this"],s:"[_0.close()]"}}]}],n:50,r:"~/control.close"}]}]}],n:50,x:{r:["~/control.max","~/root.userMax","~/root.max","~/root.hideTitleMax","~/control.dialog","~/control.hideTitle","~/control.slide"],s:"!((_0||_1||_2)&&_3&&!_4)&&!_5&&!_6"}}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-content",g:1},{n:"tracked",t:71,f:{r:[],s:'["content"]'}},{n:"class-rwindow-pad",t:13,f:[{t:2,r:"~/control.pad"}]},{n:"class-rwindow-flex",t:13,f:[{t:2,r:"~/control.flex"}]},{t:4,f:[{n:"style-overflow",f:"visible",t:13}],n:50,r:"~/control.autosize"}],f:[{t:8,r:"contents"}]}," ",{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-buttons",g:1},{n:"class-no-buttons",t:13,f:[{t:2,x:{r:["~/visibleButtons"],s:"!_0"}}]}],f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-left-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/leftButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-center-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/centerButtons"}]}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-right-buttons",g:1}],f:[{t:4,f:[{t:4,f:[{t:8,r:".partial"}],n:50,r:".partial"},{t:4,f:[{t:7,e:"button",m:[{n:"button",t:71},{n:["click"],t:70,f:{r:[".action","@"],s:"[_0.call(_1)]"}},{t:4,f:[{n:"class",f:[{t:2,r:".class"}],t:13}],n:50,r:".class"}],f:[{t:2,r:".label"}]}],n:51,l:1}],n:52,r:"~/rightButtons"}]}]}],n:50,r:"~/buttons"}," ",{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-pane-bottom",g:1}],f:[{t:8,r:"status"}]}],title:[{t:4,f:[{t:7,e:"div",m:[{t:13,n:"class",f:"rwindow-title",g:1}],f:[{t:3,r:"~/control.title"}]}],n:50,r:"~/control.title"}],contents:"",status:""},data:function(){return{buttons:[],visibleButtons:0}},computed:{leftButtons:function(){return(this.get("buttons")||[]).filter(function(t){return"left"===t.where})},centerButtons:function(){return(this.get("buttons")||[]).filter(function(t){return"center"===t.where})},rightButtons:function(){return(this.get("buttons")||[]).filter(function(t){return!t.where||"right"===t.where})}},decorators:{button:function(t){var n=this.getContext(t);return n.add("visibleButtons"),{update:function(){},teardown:function(){n.subtract("visibleButtons")}}}},on:{config:function(){var t=g.prototype.template,n=this.template;"string"!=typeof t&&!Array.isArray(t)&&t.t&&(t=t.t),"string"!=typeof n&&!Array.isArray(n)&&n.t&&(n=n.t),t!==n&&(this.partials.hasOwnProperty("contents")||(this.partials.contents=n),this.template=t)},construct:function(){var t=this.constructor;if(!t._constructed){t._constructed=1;var n=t.prototype.template.t.slice(),e=n.find(function(t){return"buttons"===t.e});function o(t){var n=t.m||[],e={partial:{t:[{t:t.t,e:t.e,f:t.f,m:n.filter(function(t){return!~b.indexOf(t.n)})}]},where:n.find(function(t){return"left"===t.n})?"left":n.find(function(t){return"center"===t.n})?"center":"right"};return e.partial.t[0].m.push({t:71,n:"button"}),e}t.prototype.template.t=n.filter(function(t){return"buttons"!==t.e}),e&&(t._btns=e.f.filter(function(t){return"button"===t.e||4===t.t&&(50===t.n||51===t.n)&&t.f.find(function(t){return"button"===t.e})}).map(function(t){return 4===t.t?t.f.filter(function(t){return"button"===t.e}).map(function(n){var e=o(n),i={t:t.t,n:t.n,f:[e.partial.t[0]]};return t.r&&(i.r=t.r),t.rx&&(i.rx=t.rx),t.x&&(i.x=t.x),e.partial={t:[i]},e}):[o(t)]}).reduce(function(t,n){return t.concat(n)},[]))}},init:function(){var t=this.constructor;t._btns&&!this.get("buttons.length")&&this.set("buttons",t._btns)}},observe:{"control.max root.max root.userMax control.width control.height root.dimensions.clientHeight root.dimensions.clientWidth":{handler:function(t,n,e){if(this.get("control.id")){var o=this.get("control.max")||this.get("root.userMax")||this.get("root.max"),i=this.get("control.actual")||{};if(o)if(i.max)~e.indexOf("client")&&"number"==typeof t&&(~e.indexOf("Width")?this.set("control.actual.width",this.host.sizeInEm(t)):~e.indexOf("Height")&&this.set("control.actual.height",this.host.sizeInEm(t)));else{this.wrapper;this.wrapper&&this.set("control.actual",{width:this.host.sizeInEm(this.wrapper.clientWidth),height:this.host.sizeInEm(this.wrapper.clientHeight),max:o})}else"number"==typeof t&&(~e.indexOf("width")?this.set("control.actual.width",t):~e.indexOf("height")&&this.set("control.actual.height",t)),i.max&&this.set("control.actual",{width:this.get("control.width"),height:this.get("control.width"),max:o}),this.set("control.actual.max",!1)}},init:!1,defer:!0}}}),i("RMWindowHost","components",m),i("RMWindow","components",g),m.prototype.Window=g,t.Base=d,t.Host=m,t.Window=g,t.plugin=x,t.default=x,Object.defineProperty(t,"__esModule",{value:!0})}); |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
2635532
0.15%29477
0.28%