10 __coverage__['build/dd-constrain/dd-constrain.js'] = {"path":"build/dd-constrain/dd-constrain.js","s":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0,"29":0,"30":0,"31":0,"32":0,"33":0,"34":0,"35":0,"36":0,"37":0,"38":0,"39":0,"40":0,"41":0,"42":0,"43":0,"44":0,"45":0,"46":0,"47":0,"48":0,"49":0,"50":0,"51":0,"52":0,"53":0,"54":0,"55":0,"56":0,"57":0,"58":0,"59":0,"60":0,"61":0,"62":0,"63":0,"64":0,"65":0,"66":0,"67":0,"68":0,"69":0,"70":0,"71":0,"72":0,"73":0,"74":0,"75":0,"76":0,"77":0,"78":0,"79":0,"80":0,"81":0,"82":0,"83":0,"84":0,"85":0,"86":0,"87":0,"88":0,"89":0,"90":0,"91":0,"92":0,"93":0,"94":0,"95":0,"96":0,"97":0,"98":0,"99":0,"100":0,"101":0,"102":0,"103":0,"104":0,"105":0,"106":0,"107":0,"108":0,"109":0,"110":0,"111":0,"112":0,"113":0,"114":0,"115":0,"116":0,"117":0,"118":0,"119":0,"120":0,"121":0,"122":0,"123":0,"124":0,"125":0,"126":0,"127":0,"128":0,"129":0,"130":0,"131":0,"132":0},"b":{"1":[0,0],"2":[0,0],"3":[0,0],"4":[0,0],"5":[0,0],"6":[0,0],"7":[0,0],"8":[0,0],"9":[0,0],"10":[0,0],"11":[0,0],"12":[0,0],"13":[0,0],"14":[0,0],"15":[0,0],"16":[0,0],"17":[0,0],"18":[0,0],"19":[0,0],"20":[0,0],"21":[0,0],"22":[0,0],"23":[0,0],"24":[0,0,0],"25":[0,0],"26":[0,0,0],"27":[0,0],"28":[0,0],"29":[0,0],"30":[0,0],"31":[0,0],"32":[0,0],"33":[0,0],"34":[0,0],"35":[0,0],"36":[0,0],"37":[0,0],"38":[0,0],"39":[0,0],"40":[0,0],"41":[0,0],"42":[0,0],"43":[0,0],"44":[0,0],"45":[0,0],"46":[0,0],"47":[0,0],"48":[0,0],"49":[0,0],"50":[0,0]},"f":{"1":0,"2":0,"3":0,"4":0,"5":0,"6":0,"7":0,"8":0,"9":0,"10":0,"11":0,"12":0,"13":0,"14":0,"15":0,"16":0,"17":0,"18":0,"19":0,"20":0,"21":0,"22":0,"23":0,"24":0,"25":0,"26":0,"27":0,"28":0},"fnMap":{"1":{"name":"(anonymous_1)","line":1,"loc":{"start":{"line":1,"column":24},"end":{"line":1,"column":43}}},"2":{"name":"(anonymous_2)","line":53,"loc":{"start":{"line":53,"column":12},"end":{"line":53,"column":23}}},"3":{"name":"(anonymous_3)","line":129,"loc":{"start":{"line":129,"column":20},"end":{"line":129,"column":37}}},"4":{"name":"(anonymous_4)","line":143,"loc":{"start":{"line":143,"column":20},"end":{"line":143,"column":34}}},"5":{"name":"(anonymous_5)","line":158,"loc":{"start":{"line":158,"column":20},"end":{"line":158,"column":32}}},"6":{"name":"(anonymous_6)","line":169,"loc":{"start":{"line":169,"column":20},"end":{"line":169,"column":32}}},"7":{"name":"(anonymous_7)","line":180,"loc":{"start":{"line":180,"column":20},"end":{"line":180,"column":31}}},"8":{"name":"(anonymous_8)","line":198,"loc":{"start":{"line":198,"column":21},"end":{"line":198,"column":32}}},"9":{"name":"(anonymous_9)","line":208,"loc":{"start":{"line":208,"column":20},"end":{"line":208,"column":31}}},"10":{"name":"(anonymous_10)","line":211,"loc":{"start":{"line":211,"column":16},"end":{"line":211,"column":33}}},"11":{"name":"(anonymous_11)","line":223,"loc":{"start":{"line":223,"column":23},"end":{"line":223,"column":34}}},"12":{"name":"(anonymous_12)","line":229,"loc":{"start":{"line":229,"column":29},"end":{"line":229,"column":41}}},"13":{"name":"(anonymous_13)","line":244,"loc":{"start":{"line":244,"column":20},"end":{"line":244,"column":31}}},"14":{"name":"(anonymous_14)","line":253,"loc":{"start":{"line":253,"column":22},"end":{"line":253,"column":33}}},"15":{"name":"(anonymous_15)","line":268,"loc":{"start":{"line":268,"column":22},"end":{"line":268,"column":33}}},"16":{"name":"(anonymous_16)","line":275,"loc":{"start":{"line":275,"column":20},"end":{"line":275,"column":31}}},"17":{"name":"(anonymous_17)","line":283,"loc":{"start":{"line":283,"column":24},"end":{"line":283,"column":35}}},"18":{"name":"(anonymous_18)","line":309,"loc":{"start":{"line":309,"column":29},"end":{"line":309,"column":44}}},"19":{"name":"(anonymous_19)","line":325,"loc":{"start":{"line":325,"column":19},"end":{"line":325,"column":33}}},"20":{"name":"(anonymous_20)","line":347,"loc":{"start":{"line":347,"column":22},"end":{"line":347,"column":36}}},"21":{"name":"(anonymous_21)","line":376,"loc":{"start":{"line":376,"column":18},"end":{"line":376,"column":31}}},"22":{"name":"(anonymous_22)","line":390,"loc":{"start":{"line":390,"column":15},"end":{"line":390,"column":26}}},"23":{"name":"(anonymous_23)","line":414,"loc":{"start":{"line":414,"column":14},"end":{"line":414,"column":25}}},"24":{"name":"(anonymous_24)","line":438,"loc":{"start":{"line":438,"column":21},"end":{"line":438,"column":37}}},"25":{"name":"(anonymous_25)","line":464,"loc":{"start":{"line":464,"column":21},"end":{"line":464,"column":32}}},"26":{"name":"(anonymous_26)","line":472,"loc":{"start":{"line":472,"column":21},"end":{"line":472,"column":32}}},"27":{"name":"(anonymous_27)","line":495,"loc":{"start":{"line":495,"column":20},"end":{"line":495,"column":59}}},"28":{"name":"(anonymous_28)","line":526,"loc":{"start":{"line":526,"column":24},"end":{"line":526,"column":57}}}},"statementMap":{"1":{"start":{"line":1,"column":0},"end":{"line":562,"column":40}},"2":{"start":{"line":23,"column":4},"end":{"line":56,"column":10}},"3":{"start":{"line":54,"column":12},"end":{"line":54,"column":39}},"4":{"start":{"line":55,"column":12},"end":{"line":55,"column":60}},"5":{"start":{"line":58,"column":4},"end":{"line":58,"column":29}},"6":{"start":{"line":68,"column":4},"end":{"line":68,"column":17}},"7":{"start":{"line":70,"column":4},"end":{"line":192,"column":6}},"8":{"start":{"line":130,"column":16},"end":{"line":130,"column":57}},"9":{"start":{"line":144,"column":16},"end":{"line":144,"column":38}},"10":{"start":{"line":145,"column":16},"end":{"line":147,"column":17}},"11":{"start":{"line":146,"column":20},"end":{"line":146,"column":31}},"12":{"start":{"line":148,"column":16},"end":{"line":148,"column":27}},"13":{"start":{"line":159,"column":16},"end":{"line":159,"column":48}},"14":{"start":{"line":170,"column":16},"end":{"line":170,"column":55}},"15":{"start":{"line":181,"column":16},"end":{"line":181,"column":51}},"16":{"start":{"line":194,"column":4},"end":{"line":475,"column":6}},"17":{"start":{"line":199,"column":12},"end":{"line":199,"column":33}},"18":{"start":{"line":201,"column":12},"end":{"line":206,"column":14}},"19":{"start":{"line":209,"column":12},"end":{"line":214,"column":14}},"20":{"start":{"line":212,"column":20},"end":{"line":212,"column":36}},"21":{"start":{"line":216,"column":12},"end":{"line":216,"column":42}},"22":{"start":{"line":224,"column":12},"end":{"line":227,"column":14}},"23":{"start":{"line":229,"column":12},"end":{"line":237,"column":21}},"24":{"start":{"line":230,"column":16},"end":{"line":236,"column":19}},"25":{"start":{"line":245,"column":12},"end":{"line":245,"column":40}},"26":{"start":{"line":246,"column":12},"end":{"line":246,"column":40}},"27":{"start":{"line":254,"column":12},"end":{"line":254,"column":30}},"28":{"start":{"line":269,"column":12},"end":{"line":269,"column":68}},"29":{"start":{"line":276,"column":12},"end":{"line":276,"column":37}},"30":{"start":{"line":284,"column":12},"end":{"line":286,"column":23}},"31":{"start":{"line":288,"column":12},"end":{"line":301,"column":13}},"32":{"start":{"line":289,"column":16},"end":{"line":300,"column":17}},"33":{"start":{"line":290,"column":20},"end":{"line":293,"column":21}},"34":{"start":{"line":291,"column":24},"end":{"line":291,"column":111}},"35":{"start":{"line":292,"column":24},"end":{"line":292,"column":44}},"36":{"start":{"line":294,"column":20},"end":{"line":294,"column":56}},"37":{"start":{"line":295,"column":20},"end":{"line":297,"column":21}},"38":{"start":{"line":296,"column":24},"end":{"line":296,"column":42}},"39":{"start":{"line":298,"column":23},"end":{"line":300,"column":17}},"40":{"start":{"line":299,"column":20},"end":{"line":299,"column":42}},"41":{"start":{"line":302,"column":12},"end":{"line":304,"column":13}},"42":{"start":{"line":303,"column":16},"end":{"line":303,"column":27}},"43":{"start":{"line":305,"column":12},"end":{"line":307,"column":13}},"44":{"start":{"line":306,"column":16},"end":{"line":306,"column":77}},"45":{"start":{"line":309,"column":12},"end":{"line":315,"column":15}},"46":{"start":{"line":310,"column":16},"end":{"line":314,"column":17}},"47":{"start":{"line":311,"column":20},"end":{"line":311,"column":35}},"48":{"start":{"line":313,"column":20},"end":{"line":313,"column":35}},"49":{"start":{"line":316,"column":12},"end":{"line":316,"column":26}},"50":{"start":{"line":326,"column":12},"end":{"line":327,"column":38}},"51":{"start":{"line":329,"column":12},"end":{"line":329,"column":38}},"52":{"start":{"line":331,"column":12},"end":{"line":336,"column":13}},"53":{"start":{"line":332,"column":16},"end":{"line":332,"column":60}},"54":{"start":{"line":333,"column":16},"end":{"line":333,"column":59}},"55":{"start":{"line":334,"column":16},"end":{"line":334,"column":41}},"56":{"start":{"line":335,"column":16},"end":{"line":335,"column":43}},"57":{"start":{"line":337,"column":12},"end":{"line":337,"column":21}},"58":{"start":{"line":348,"column":12},"end":{"line":352,"column":59}},"59":{"start":{"line":354,"column":16},"end":{"line":356,"column":17}},"60":{"start":{"line":355,"column":20},"end":{"line":355,"column":46}},"61":{"start":{"line":357,"column":16},"end":{"line":360,"column":17}},"62":{"start":{"line":358,"column":20},"end":{"line":358,"column":36}},"63":{"start":{"line":361,"column":16},"end":{"line":363,"column":17}},"64":{"start":{"line":362,"column":20},"end":{"line":362,"column":45}},"65":{"start":{"line":364,"column":16},"end":{"line":366,"column":17}},"66":{"start":{"line":365,"column":20},"end":{"line":365,"column":37}},"67":{"start":{"line":368,"column":12},"end":{"line":368,"column":23}},"68":{"start":{"line":377,"column":12},"end":{"line":377,"column":61}},"69":{"start":{"line":379,"column":12},"end":{"line":380,"column":31}},"70":{"start":{"line":381,"column":16},"end":{"line":383,"column":17}},"71":{"start":{"line":382,"column":20},"end":{"line":382,"column":34}},"72":{"start":{"line":384,"column":12},"end":{"line":384,"column":26}},"73":{"start":{"line":391,"column":12},"end":{"line":393,"column":41}},"74":{"start":{"line":395,"column":12},"end":{"line":397,"column":13}},"75":{"start":{"line":396,"column":16},"end":{"line":396,"column":61}},"76":{"start":{"line":398,"column":12},"end":{"line":400,"column":13}},"77":{"start":{"line":399,"column":16},"end":{"line":399,"column":61}},"78":{"start":{"line":402,"column":12},"end":{"line":404,"column":13}},"79":{"start":{"line":403,"column":16},"end":{"line":403,"column":45}},"80":{"start":{"line":406,"column":12},"end":{"line":406,"column":43}},"81":{"start":{"line":408,"column":12},"end":{"line":408,"column":29}},"82":{"start":{"line":415,"column":12},"end":{"line":418,"column":53}},"83":{"start":{"line":420,"column":12},"end":{"line":423,"column":13}},"84":{"start":{"line":421,"column":16},"end":{"line":421,"column":35}},"85":{"start":{"line":422,"column":16},"end":{"line":422,"column":46}},"86":{"start":{"line":425,"column":12},"end":{"line":428,"column":13}},"87":{"start":{"line":426,"column":16},"end":{"line":426,"column":35}},"88":{"start":{"line":427,"column":16},"end":{"line":427,"column":46}},"89":{"start":{"line":439,"column":12},"end":{"line":443,"column":39}},"90":{"start":{"line":444,"column":16},"end":{"line":446,"column":17}},"91":{"start":{"line":445,"column":20},"end":{"line":445,"column":77}},"92":{"start":{"line":447,"column":16},"end":{"line":449,"column":17}},"93":{"start":{"line":448,"column":20},"end":{"line":448,"column":77}},"94":{"start":{"line":450,"column":16},"end":{"line":452,"column":17}},"95":{"start":{"line":451,"column":20},"end":{"line":451,"column":97}},"96":{"start":{"line":453,"column":16},"end":{"line":455,"column":17}},"97":{"start":{"line":454,"column":20},"end":{"line":454,"column":97}},"98":{"start":{"line":457,"column":12},"end":{"line":457,"column":22}},"99":{"start":{"line":465,"column":12},"end":{"line":465,"column":39}},"100":{"start":{"line":473,"column":12},"end":{"line":473,"column":39}},"101":{"start":{"line":477,"column":4},"end":{"line":477,"column":26}},"102":{"start":{"line":478,"column":4},"end":{"line":478,"column":31}},"103":{"start":{"line":479,"column":4},"end":{"line":479,"column":31}},"104":{"start":{"line":481,"column":4},"end":{"line":558,"column":7}},"105":{"start":{"line":496,"column":12},"end":{"line":498,"column":36}},"106":{"start":{"line":499,"column":16},"end":{"line":511,"column":17}},"107":{"start":{"line":500,"column":20},"end":{"line":510,"column":21}},"108":{"start":{"line":501,"column":24},"end":{"line":501,"column":53}},"109":{"start":{"line":502,"column":24},"end":{"line":509,"column":25}},"110":{"start":{"line":503,"column":28},"end":{"line":505,"column":29}},"111":{"start":{"line":504,"column":32},"end":{"line":504,"column":67}},"112":{"start":{"line":506,"column":28},"end":{"line":508,"column":29}},"113":{"start":{"line":507,"column":32},"end":{"line":507,"column":67}},"114":{"start":{"line":512,"column":16},"end":{"line":512,"column":27}},"115":{"start":{"line":527,"column":12},"end":{"line":528,"column":34}},"116":{"start":{"line":530,"column":12},"end":{"line":532,"column":13}},"117":{"start":{"line":531,"column":16},"end":{"line":531,"column":27}},"118":{"start":{"line":533,"column":12},"end":{"line":535,"column":13}},"119":{"start":{"line":534,"column":16},"end":{"line":534,"column":32}},"120":{"start":{"line":537,"column":12},"end":{"line":555,"column":13}},"121":{"start":{"line":538,"column":16},"end":{"line":538,"column":31}},"122":{"start":{"line":539,"column":16},"end":{"line":553,"column":17}},"123":{"start":{"line":540,"column":20},"end":{"line":540,"column":43}},"124":{"start":{"line":541,"column":20},"end":{"line":541,"column":46}},"125":{"start":{"line":542,"column":20},"end":{"line":542,"column":67}},"126":{"start":{"line":543,"column":20},"end":{"line":551,"column":21}},"127":{"start":{"line":544,"column":24},"end":{"line":550,"column":25}},"128":{"start":{"line":545,"column":28},"end":{"line":549,"column":29}},"129":{"start":{"line":546,"column":32},"end":{"line":546,"column":47}},"130":{"start":{"line":548,"column":32},"end":{"line":548,"column":53}},"131":{"start":{"line":552,"column":20},"end":{"line":552,"column":31}},"132":{"start":{"line":556,"column":12},"end":{"line":556,"column":43}}},"branchMap":{"1":{"line":145,"type":"if","locations":[{"start":{"line":145,"column":16},"end":{"line":145,"column":16}},{"start":{"line":145,"column":16},"end":{"line":145,"column":16}}]},"2":{"line":288,"type":"if","locations":[{"start":{"line":288,"column":12},"end":{"line":288,"column":12}},{"start":{"line":288,"column":12},"end":{"line":288,"column":12}}]},"3":{"line":289,"type":"if","locations":[{"start":{"line":289,"column":16},"end":{"line":289,"column":16}},{"start":{"line":289,"column":16},"end":{"line":289,"column":16}}]},"4":{"line":290,"type":"if","locations":[{"start":{"line":290,"column":20},"end":{"line":290,"column":20}},{"start":{"line":290,"column":20},"end":{"line":290,"column":20}}]},"5":{"line":295,"type":"if","locations":[{"start":{"line":295,"column":20},"end":{"line":295,"column":20}},{"start":{"line":295,"column":20},"end":{"line":295,"column":20}}]},"6":{"line":298,"type":"if","locations":[{"start":{"line":298,"column":23},"end":{"line":298,"column":23}},{"start":{"line":298,"column":23},"end":{"line":298,"column":23}}]},"7":{"line":302,"type":"if","locations":[{"start":{"line":302,"column":12},"end":{"line":302,"column":12}},{"start":{"line":302,"column":12},"end":{"line":302,"column":12}}]},"8":{"line":302,"type":"binary-expr","locations":[{"start":{"line":302,"column":16},"end":{"line":302,"column":20}},{"start":{"line":302,"column":24},"end":{"line":302,"column":31}}]},"9":{"line":305,"type":"if","locations":[{"start":{"line":305,"column":12},"end":{"line":305,"column":12}},{"start":{"line":305,"column":12},"end":{"line":305,"column":12}}]},"10":{"line":310,"type":"if","locations":[{"start":{"line":310,"column":16},"end":{"line":310,"column":16}},{"start":{"line":310,"column":16},"end":{"line":310,"column":16}}]},"11":{"line":310,"type":"binary-expr","locations":[{"start":{"line":310,"column":21},"end":{"line":310,"column":32}},{"start":{"line":310,"column":38},"end":{"line":310,"column":50}}]},"12":{"line":331,"type":"if","locations":[{"start":{"line":331,"column":12},"end":{"line":331,"column":12}},{"start":{"line":331,"column":12},"end":{"line":331,"column":12}}]},"13":{"line":354,"type":"if","locations":[{"start":{"line":354,"column":16},"end":{"line":354,"column":16}},{"start":{"line":354,"column":16},"end":{"line":354,"column":16}}]},"14":{"line":357,"type":"if","locations":[{"start":{"line":357,"column":16},"end":{"line":357,"column":16}},{"start":{"line":357,"column":16},"end":{"line":357,"column":16}}]},"15":{"line":361,"type":"if","locations":[{"start":{"line":361,"column":16},"end":{"line":361,"column":16}},{"start":{"line":361,"column":16},"end":{"line":361,"column":16}}]},"16":{"line":364,"type":"if","locations":[{"start":{"line":364,"column":16},"end":{"line":364,"column":16}},{"start":{"line":364,"column":16},"end":{"line":364,"column":16}}]},"17":{"line":377,"type":"binary-expr","locations":[{"start":{"line":377,"column":17},"end":{"line":377,"column":19}},{"start":{"line":377,"column":23},"end":{"line":377,"column":60}}]},"18":{"line":381,"type":"if","locations":[{"start":{"line":381,"column":16},"end":{"line":381,"column":16}},{"start":{"line":381,"column":16},"end":{"line":381,"column":16}}]},"19":{"line":381,"type":"binary-expr","locations":[{"start":{"line":381,"column":21},"end":{"line":381,"column":37}},{"start":{"line":381,"column":43},"end":{"line":381,"column":59}}]},"20":{"line":395,"type":"if","locations":[{"start":{"line":395,"column":12},"end":{"line":395,"column":12}},{"start":{"line":395,"column":12},"end":{"line":395,"column":12}}]},"21":{"line":398,"type":"if","locations":[{"start":{"line":398,"column":12},"end":{"line":398,"column":12}},{"start":{"line":398,"column":12},"end":{"line":398,"column":12}}]},"22":{"line":402,"type":"if","locations":[{"start":{"line":402,"column":12},"end":{"line":402,"column":12}},{"start":{"line":402,"column":12},"end":{"line":402,"column":12}}]},"23":{"line":420,"type":"if","locations":[{"start":{"line":420,"column":12},"end":{"line":420,"column":12}},{"start":{"line":420,"column":12},"end":{"line":420,"column":12}}]},"24":{"line":420,"type":"binary-expr","locations":[{"start":{"line":420,"column":17},"end":{"line":420,"column":36}},{"start":{"line":420,"column":40},"end":{"line":420,"column":62}},{"start":{"line":420,"column":68},"end":{"line":420,"column":99}}]},"25":{"line":425,"type":"if","locations":[{"start":{"line":425,"column":12},"end":{"line":425,"column":12}},{"start":{"line":425,"column":12},"end":{"line":425,"column":12}}]},"26":{"line":425,"type":"binary-expr","locations":[{"start":{"line":425,"column":17},"end":{"line":425,"column":36}},{"start":{"line":425,"column":40},"end":{"line":425,"column":62}},{"start":{"line":425,"column":68},"end":{"line":425,"column":99}}]},"27":{"line":444,"type":"if","locations":[{"start":{"line":444,"column":16},"end":{"line":444,"column":16}},{"start":{"line":444,"column":16},"end":{"line":444,"column":16}}]},"28":{"line":444,"type":"binary-expr","locations":[{"start":{"line":444,"column":20},"end":{"line":444,"column":22}},{"start":{"line":444,"column":26},"end":{"line":444,"column":49}}]},"29":{"line":447,"type":"if","locations":[{"start":{"line":447,"column":16},"end":{"line":447,"column":16}},{"start":{"line":447,"column":16},"end":{"line":447,"column":16}}]},"30":{"line":447,"type":"binary-expr","locations":[{"start":{"line":447,"column":20},"end":{"line":447,"column":22}},{"start":{"line":447,"column":26},"end":{"line":447,"column":49}}]},"31":{"line":450,"type":"if","locations":[{"start":{"line":450,"column":16},"end":{"line":450,"column":16}},{"start":{"line":450,"column":16},"end":{"line":450,"column":16}}]},"32":{"line":453,"type":"if","locations":[{"start":{"line":453,"column":16},"end":{"line":453,"column":16}},{"start":{"line":453,"column":16},"end":{"line":453,"column":16}}]},"33":{"line":499,"type":"if","locations":[{"start":{"line":499,"column":16},"end":{"line":499,"column":16}},{"start":{"line":499,"column":16},"end":{"line":499,"column":16}}]},"34":{"line":499,"type":"binary-expr","locations":[{"start":{"line":499,"column":21},"end":{"line":499,"column":30}},{"start":{"line":499,"column":36},"end":{"line":499,"column":45}}]},"35":{"line":500,"type":"if","locations":[{"start":{"line":500,"column":20},"end":{"line":500,"column":20}},{"start":{"line":500,"column":20},"end":{"line":500,"column":20}}]},"36":{"line":500,"type":"binary-expr","locations":[{"start":{"line":500,"column":25},"end":{"line":500,"column":34}},{"start":{"line":500,"column":40},"end":{"line":500,"column":49}}]},"37":{"line":502,"type":"if","locations":[{"start":{"line":502,"column":24},"end":{"line":502,"column":24}},{"start":{"line":502,"column":24},"end":{"line":502,"column":24}}]},"38":{"line":502,"type":"binary-expr","locations":[{"start":{"line":502,"column":28},"end":{"line":502,"column":32}},{"start":{"line":502,"column":36},"end":{"line":502,"column":40}}]},"39":{"line":503,"type":"if","locations":[{"start":{"line":503,"column":28},"end":{"line":503,"column":28}},{"start":{"line":503,"column":28},"end":{"line":503,"column":28}}]},"40":{"line":506,"type":"if","locations":[{"start":{"line":506,"column":28},"end":{"line":506,"column":28}},{"start":{"line":506,"column":28},"end":{"line":506,"column":28}}]},"41":{"line":530,"type":"if","locations":[{"start":{"line":530,"column":12},"end":{"line":530,"column":12}},{"start":{"line":530,"column":12},"end":{"line":530,"column":12}}]},"42":{"line":530,"type":"binary-expr","locations":[{"start":{"line":530,"column":16},"end":{"line":530,"column":22}},{"start":{"line":530,"column":27},"end":{"line":530,"column":45}}]},"43":{"line":533,"type":"if","locations":[{"start":{"line":533,"column":12},"end":{"line":533,"column":12}},{"start":{"line":533,"column":12},"end":{"line":533,"column":12}}]},"44":{"line":539,"type":"if","locations":[{"start":{"line":539,"column":16},"end":{"line":539,"column":16}},{"start":{"line":539,"column":16},"end":{"line":539,"column":16}}]},"45":{"line":539,"type":"binary-expr","locations":[{"start":{"line":539,"column":20},"end":{"line":539,"column":31}},{"start":{"line":539,"column":35},"end":{"line":539,"column":53}}]},"46":{"line":542,"type":"cond-expr","locations":[{"start":{"line":542,"column":44},"end":{"line":542,"column":52}},{"start":{"line":542,"column":55},"end":{"line":542,"column":66}}]},"47":{"line":543,"type":"if","locations":[{"start":{"line":543,"column":20},"end":{"line":543,"column":20}},{"start":{"line":543,"column":20},"end":{"line":543,"column":20}}]},"48":{"line":543,"type":"binary-expr","locations":[{"start":{"line":543,"column":24},"end":{"line":543,"column":28}},{"start":{"line":543,"column":32},"end":{"line":543,"column":36}}]},"49":{"line":544,"type":"if","locations":[{"start":{"line":544,"column":24},"end":{"line":544,"column":24}},{"start":{"line":544,"column":24},"end":{"line":544,"column":24}}]},"50":{"line":545,"type":"if","locations":[{"start":{"line":545,"column":28},"end":{"line":545,"column":28}},{"start":{"line":545,"column":28},"end":{"line":545,"column":28}}]}},"code":["(function () { YUI.add('dd-constrain', function (Y, NAME) {","",""," /**"," * The Drag & Drop Utility allows you to create a draggable interface efficiently,"," * buffering you from browser-level abnormalities and enabling you to focus on the interesting"," * logic surrounding your particular implementation. This component enables you to create a"," * variety of standard draggable objects with just a few lines of code and then,"," * using its extensive API, add your own specific implementation logic."," * @module dd"," * @main dd"," * @submodule dd-constrain"," */"," /**"," * Plugin for the dd-drag module to add the constraining methods to it."," * It supports constraining to a node or viewport. It supports tick based moves and XY axis constraints."," * @class DDConstrained"," * @extends Base"," * @constructor"," * @namespace Plugin"," */",""," var DRAG_NODE = 'dragNode',"," OFFSET_HEIGHT = 'offsetHeight',"," OFFSET_WIDTH = 'offsetWidth',"," HOST = 'host',"," TICK_X_ARRAY = 'tickXArray',"," TICK_Y_ARRAY = 'tickYArray',"," DDM = Y.DD.DDM,"," TOP = 'top',"," RIGHT = 'right',"," BOTTOM = 'bottom',"," LEFT = 'left',"," VIEW = 'view',"," proto = null,",""," /**"," * Fires when this node is aligned with the tickX value."," * @event drag:tickAlignX"," * @param {EventFacade} event An Event Facade object"," * @type {CustomEvent}"," */"," EV_TICK_ALIGN_X = 'drag:tickAlignX',",""," /**"," * Fires when this node is aligned with the tickY value."," * @event drag:tickAlignY"," * @param {EventFacade} event An Event Facade object"," * @type {CustomEvent}"," */"," EV_TICK_ALIGN_Y = 'drag:tickAlignY',",""," C = function() {"," this._lazyAddAttrs = false;"," C.superclass.constructor.apply(this, arguments);"," };",""," C.NAME = 'ddConstrained';"," /**"," * The Constrained instance will be placed on the Drag instance under the con namespace."," * @property NS"," * @default con"," * @readonly"," * @protected"," * @static"," * @type {String}"," */"," C.NS = 'con';",""," C.ATTRS = {"," host: {"," },"," /**"," * Stick the drag movement to the X-Axis. Default: false"," * @attribute stickX"," * @type Boolean"," */"," stickX: {"," value: false"," },"," /**"," * Stick the drag movement to the Y-Axis"," * @type Boolean"," * @attribute stickY"," */"," stickY: {"," value: false"," },"," /**"," * The X tick offset the drag node should snap to on each drag move. False for no ticks. Default: false"," * @type Number/false"," * @attribute tickX"," */"," tickX: {"," value: false"," },"," /**"," * The Y tick offset the drag node should snap to on each drag move. False for no ticks. Default: false"," * @type Number/false"," * @attribute tickY"," */"," tickY: {"," value: false"," },"," /**"," * An array of page coordinates to use as X ticks for drag movement."," * @type Array"," * @attribute tickXArray"," */"," tickXArray: {"," value: false"," },"," /**"," * An array of page coordinates to use as Y ticks for drag movement."," * @type Array"," * @attribute tickYArray"," */"," tickYArray: {"," value: false"," },"," /**"," * CSS style string for the gutter of a region (supports negative values): '5 0'"," * (sets top and bottom to 5px, left and right to 0px), '1 2 3 4' (top 1px, right 2px, bottom 3px, left 4px)"," * @attribute gutter"," * @type String"," */"," gutter: {"," value: '0',"," setter: function(gutter) {"," return Y.DD.DDM.cssSizestoObject(gutter);"," }"," },"," /**"," * Will attempt to constrain the drag node to the boundaries. Arguments:<br>"," * 'view': Contrain to Viewport<br>"," * '#selector_string': Constrain to this node<br>"," * '{Region Object}': An Object Literal containing a valid region (top, right, bottom, left) of page positions"," * @attribute constrain"," * @type {String/Object/Node}"," */"," constrain: {"," value: VIEW,"," setter: function(con) {"," var node = Y.one(con);"," if (node) {"," con = node;"," }"," return con;"," }"," },"," /**"," * An Object Literal containing a valid region (top, right, bottom, left) of page positions to constrain the drag node to."," * @deprecated"," * @attribute constrain2region"," * @type Object"," */"," constrain2region: {"," setter: function(r) {"," return this.set('constrain', r);"," }"," },"," /**"," * Will attempt to constrain the drag node to the boundaries of this node."," * @deprecated"," * @attribute constrain2node"," * @type Object"," */"," constrain2node: {"," setter: function(n) {"," return this.set('constrain', Y.one(n));"," }"," },"," /**"," * Will attempt to constrain the drag node to the boundaries of the viewport region."," * @deprecated"," * @attribute constrain2view"," * @type Object"," */"," constrain2view: {"," setter: function() {"," return this.set('constrain', VIEW);"," }"," },"," /**"," * Should the region be cached for performace. Default: true"," * @attribute cacheRegion"," * @type Boolean"," */"," cacheRegion: {"," value: true"," }"," };",""," proto = {"," _lastTickXFired: null,"," _lastTickYFired: null,",""," initializer: function() {"," this._createEvents();",""," this._eventHandles = ["," this.get(HOST).on('drag:end', Y.bind(this._handleEnd, this)),"," this.get(HOST).on('drag:start', Y.bind(this._handleStart, this)),"," this.get(HOST).after('drag:align', Y.bind(this.align, this)),"," this.get(HOST).after('drag:drag', Y.bind(this.drag, this))"," ];"," },"," destructor: function() {"," Y.Array.each("," this._eventHandles,"," function(handle) {"," handle.detach();"," }"," );",""," this._eventHandles.length = 0;"," },"," /**"," * This method creates all the events for this Event Target and publishes them so we get Event Bubbling."," * @private"," * @method _createEvents"," */"," _createEvents: function() {"," var ev = ["," EV_TICK_ALIGN_X,"," EV_TICK_ALIGN_Y"," ];",""," Y.Array.each(ev, function(v) {"," this.publish(v, {"," type: v,"," emitFacade: true,"," bubbles: true,"," queuable: false,"," prefix: 'drag'"," });"," }, this);"," },"," /**"," * Fires on drag:end"," * @private"," * @method _handleEnd"," */"," _handleEnd: function() {"," this._lastTickYFired = null;"," this._lastTickXFired = null;"," },"," /**"," * Fires on drag:start and clears the _regionCache"," * @private"," * @method _handleStart"," */"," _handleStart: function() {"," this.resetCache();"," },"," /**"," * Store a cache of the region that we are constraining to"," * @private"," * @property _regionCache"," * @type Object"," */"," _regionCache: null,"," /**"," * Get's the region and caches it, called from window.resize and when the cache is null"," * @private"," * @method _cacheRegion"," */"," _cacheRegion: function() {"," this._regionCache = this.get('constrain').get('region');"," },"," /**"," * Reset the internal region cache."," * @method resetCache"," */"," resetCache: function() {"," this._regionCache = null;"," },"," /**"," * Standardizes the 'constraint' attribute"," * @private"," * @method _getConstraint"," */"," _getConstraint: function() {"," var con = this.get('constrain'),"," g = this.get('gutter'),"," region;",""," if (con) {"," if (con instanceof Y.Node) {"," if (!this._regionCache) {"," this._eventHandles.push(Y.on('resize', Y.bind(this._cacheRegion, this), Y.config.win));"," this._cacheRegion();"," }"," region = Y.clone(this._regionCache);"," if (!this.get('cacheRegion')) {"," this.resetCache();"," }"," } else if (Y.Lang.isObject(con)) {"," region = Y.clone(con);"," }"," }"," if (!con || !region) {"," con = VIEW;"," }"," if (con === VIEW) {"," region = this.get(HOST).get(DRAG_NODE).get('viewportRegion');"," }",""," Y.Object.each(g, function(i, n) {"," if ((n === RIGHT) || (n === BOTTOM)) {"," region[n] -= i;"," } else {"," region[n] += i;"," }"," });"," return region;"," },",""," /**"," * Get the active region: viewport, node, custom region"," * @method getRegion"," * @param {Boolean} inc Include the node's height and width"," * @return {Object} The active region."," */"," getRegion: function(inc) {"," var r = {}, oh = null, ow = null,"," host = this.get(HOST);",""," r = this._getConstraint();",""," if (inc) {"," oh = host.get(DRAG_NODE).get(OFFSET_HEIGHT);"," ow = host.get(DRAG_NODE).get(OFFSET_WIDTH);"," r[RIGHT] = r[RIGHT] - ow;"," r[BOTTOM] = r[BOTTOM] - oh;"," }"," return r;"," },"," /**"," * Check if xy is inside a given region, if not change to it be inside."," * @private"," * @method _checkRegion"," * @param {Array} _xy The XY to check if it's in the current region, if it isn't"," * inside the region, it will reset the xy array to be inside the region."," * @return {Array} The new XY that is inside the region"," */"," _checkRegion: function(_xy) {"," var oxy = _xy,"," r = this.getRegion(),"," host = this.get(HOST),"," oh = host.get(DRAG_NODE).get(OFFSET_HEIGHT),"," ow = host.get(DRAG_NODE).get(OFFSET_WIDTH);",""," if (oxy[1] > (r[BOTTOM] - oh)) {"," _xy[1] = (r[BOTTOM] - oh);"," }"," if (r[TOP] > oxy[1]) {"," _xy[1] = r[TOP];",""," }"," if (oxy[0] > (r[RIGHT] - ow)) {"," _xy[0] = (r[RIGHT] - ow);"," }"," if (r[LEFT] > oxy[0]) {"," _xy[0] = r[LEFT];"," }",""," return _xy;"," },"," /**"," * Checks if the XY passed or the dragNode is inside the active region."," * @method inRegion"," * @param {Array} xy Optional XY to check, if not supplied this.get('dragNode').getXY() is used."," * @return {Boolean} True if the XY is inside the region, false otherwise."," */"," inRegion: function(xy) {"," xy = xy || this.get(HOST).get(DRAG_NODE).getXY();",""," var _xy = this._checkRegion([xy[0], xy[1]]),"," inside = false;"," if ((xy[0] === _xy[0]) && (xy[1] === _xy[1])) {"," inside = true;"," }"," return inside;"," },"," /**"," * Modifies the Drag.actXY method from the after drag:align event. This is where the constraining happens."," * @method align"," */"," align: function() {"," var host = this.get(HOST),"," _xy = [host.actXY[0], host.actXY[1]],"," r = this.getRegion(true);",""," if (this.get('stickX')) {"," _xy[1] = (host.startXY[1] - host.deltaXY[1]);"," }"," if (this.get('stickY')) {"," _xy[0] = (host.startXY[0] - host.deltaXY[0]);"," }",""," if (r) {"," _xy = this._checkRegion(_xy);"," }",""," _xy = this._checkTicks(_xy, r);",""," host.actXY = _xy;"," },"," /**"," * Fires after drag:drag. Handle the tickX and tickX align events."," * @method drag"," */"," drag: function() {"," var host = this.get(HOST),"," xt = this.get('tickX'),"," yt = this.get('tickY'),"," _xy = [host.actXY[0], host.actXY[1]];",""," if ((Y.Lang.isNumber(xt) || this.get(TICK_X_ARRAY)) && (this._lastTickXFired !== _xy[0])) {"," this._tickAlignX();"," this._lastTickXFired = _xy[0];"," }",""," if ((Y.Lang.isNumber(yt) || this.get(TICK_Y_ARRAY)) && (this._lastTickYFired !== _xy[1])) {"," this._tickAlignY();"," this._lastTickYFired = _xy[1];"," }"," },"," /**"," * This method delegates the proper helper method for tick calculations"," * @private"," * @method _checkTicks"," * @param {Array} xy The XY coords for the Drag"," * @param {Object} r The optional region that we are bound to."," * @return {Array} The calced XY coords"," */"," _checkTicks: function(xy, r) {"," var host = this.get(HOST),"," lx = (host.startXY[0] - host.deltaXY[0]),"," ly = (host.startXY[1] - host.deltaXY[1]),"," xt = this.get('tickX'),"," yt = this.get('tickY');"," if (xt && !this.get(TICK_X_ARRAY)) {"," xy[0] = DDM._calcTicks(xy[0], lx, xt, r[LEFT], r[RIGHT]);"," }"," if (yt && !this.get(TICK_Y_ARRAY)) {"," xy[1] = DDM._calcTicks(xy[1], ly, yt, r[TOP], r[BOTTOM]);"," }"," if (this.get(TICK_X_ARRAY)) {"," xy[0] = DDM._calcTickArray(xy[0], this.get(TICK_X_ARRAY), r[LEFT], r[RIGHT]);"," }"," if (this.get(TICK_Y_ARRAY)) {"," xy[1] = DDM._calcTickArray(xy[1], this.get(TICK_Y_ARRAY), r[TOP], r[BOTTOM]);"," }",""," return xy;"," },"," /**"," * Fires when the actXY[0] reach a new value respecting the tickX gap."," * @private"," * @method _tickAlignX"," */"," _tickAlignX: function() {"," this.fire(EV_TICK_ALIGN_X);"," },"," /**"," * Fires when the actXY[1] reach a new value respecting the tickY gap."," * @private"," * @method _tickAlignY"," */"," _tickAlignY: function() {"," this.fire(EV_TICK_ALIGN_Y);"," }"," };",""," Y.namespace('Plugin');"," Y.extend(C, Y.Base, proto);"," Y.Plugin.DDConstrained = C;",""," Y.mix(DDM, {"," /**"," * Helper method to calculate the tick offsets for a given position"," * @for DDM"," * @namespace DD"," * @private"," * @method _calcTicks"," * @param {Number} pos The current X or Y position"," * @param {Number} start The start X or Y position"," * @param {Number} tick The X or Y tick increment"," * @param {Number} off1 The min offset that we can't pass (region)"," * @param {Number} off2 The max offset that we can't pass (region)"," * @return {Number} The new position based on the tick calculation"," */"," _calcTicks: function(pos, start, tick, off1, off2) {"," var ix = ((pos - start) / tick),"," min = Math.floor(ix),"," max = Math.ceil(ix);"," if ((min !== 0) || (max !== 0)) {"," if ((ix >= min) && (ix <= max)) {"," pos = (start + (tick * min));"," if (off1 && off2) {"," if (pos < off1) {"," pos = (start + (tick * (min + 1)));"," }"," if (pos > off2) {"," pos = (start + (tick * (min - 1)));"," }"," }"," }"," }"," return pos;"," },"," /**"," * This method is used with the tickXArray and tickYArray config options"," * @for DDM"," * @namespace DD"," * @private"," * @method _calcTickArray"," * @param {Number} pos The current X or Y position"," * @param {Number} ticks The array containing our custom tick positions."," * @param {Number} off1 The min offset that we can't pass (region)"," * @param {Number} off2 The max offset that we can't pass (region)"," * @return The tick position"," */"," _calcTickArray: function(pos, ticks, off1, off2) {"," var i = 0, len = ticks.length, next = 0,"," diff1, diff2, ret;",""," if (!ticks || (ticks.length === 0)) {"," return pos;"," }"," if (ticks[0] >= pos) {"," return ticks[0];"," }",""," for (i = 0; i < len; i++) {"," next = (i + 1);"," if (ticks[next] && ticks[next] >= pos) {"," diff1 = pos - ticks[i];"," diff2 = ticks[next] - pos;"," ret = (diff2 > diff1) ? ticks[i] : ticks[next];"," if (off1 && off2) {"," if (ret > off2) {"," if (ticks[i]) {"," ret = ticks[i];"," } else {"," ret = ticks[len - 1];"," }"," }"," }"," return ret;"," }",""," }"," return ticks[ticks.length - 1];"," }"," });","","","","}, '3.13.0', {\"requires\": [\"dd-drag\"]});","","}());"]};