UNPKG

angular2

Version:

Angular 2 - a web framework for modern web apps

1 lines 2.66 kB
{"version":3,"sources":["ruler.js"],"names":[],"mappings":"AAAA;AAAA,KAAK,iBAAiB,AAAC,CAAC,MAAK,QAAQ;WAArC,EAAC,GAAE,YAAqB;AAAE,sBAAwB;IAAE,AAA9B,CAAC;OAAvB,EAAC,GAAE,YAAqB;AAAE,kBAAwB;IAAE,AAA9B,CAAC;AAAvB,WAAS,CAAT,EAAC,KAAI,CAAO,KAAG,AAAS,CAAC;CAAgC,CAAC;;;;SAA1D,EAAC,yCAAoB,CAAA,OAAM,AAAC,6BAAkB,CACtC,CAAA,0CAAqB,mDAA2B,CAAA,0CAAqB,GAAK,EAAC,OAAM,yCAAmB,CAAC,AAD/D,CACgE;AADtG,UAAM;AAAG,iBAAa;EACtB,WAAS,EADjB,EAAC,+CAAoB,CAAA,OAAM,AAAC,gCAAkB,CACtC,CAAA,gDAAqB,yDAA2B,CAAA,gDAAqB,GAAK,EAAC,OAAM,+CAAmB,CAAC,AAD/D,CACgE;EACtG,UAAQ,EAFhB,EAAC,2DAAoB,CAAA,OAAM,AAAC,yCAAkB,CACtC,CAAA,4DAAqB,qEAA2B,CAAA,4DAAqB,GAAK,EAAC,OAAM,2DAAmB,CAAC,AAD/D,CACgE;AAD9G,AAAI,EAAA,YAIG,SAAM,UAAQ,CAOP,IAAG,CAAG,CAAA,GAAE,CAAG,CAAA,KAAI,CAAG,CAAA,MAAK,CAAG;AACpC,KAAG,KAAK,EAAI,KAAG,CAAC;AAChB,KAAG,MAAM,EAAI,CAAA,IAAG,EAAI,MAAI,CAAC;AACzB,KAAG,IAAI,EAAI,IAAE,CAAC;AACd,KAAG,OAAO,EAAI,CAAA,GAAE,EAAI,OAAK,CAAC;AAC1B,KAAG,OAAO,EAAI,OAAK,CAAC;AACpB,KAAG,MAAM,EAAI,MAAI,CAAC;AACpB,AAlBsC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC,mBAAwD;AAArF,AAAI,EAAA,QAqBG,SAAM,MAAI,CAEH,UAAS,AAAY,CAAG;AAClC,KAAG,WAAW,EAAI,WAAS,CAAC;AAC9B,AAzBsC,CAAA;AAAxC,AAAC,eAAc,YAAY,CAAC,AAAC,SA2B3B,OAAM,CAAN,UAAQ,EAAC,AAAU,CAAuB;AACxC,AAAI,MAAA,CAAA,QAAO,EAAI,CAAA,IAAG,WAAW,sBAAsB,AAAC,CAAC,EAAC,WAAW,CAAC,CAAC;AAGnE,SAAO,CAAA,cAAa,QAAQ,AAAC,CAAC,GAAI,UAAQ,AAAC,CAAC,QAAO,KAAK,CAAG,CAAA,QAAO,IAAI,CAAG,CAAA,QAAO,MAAM,CAAG,CAAA,QAAO,OAAO,CAAC,CAAC,CAAC;EAC5G,MAhCmF;AAArF,KAAK,eAAe,AAAC,qBACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YAsBA,UAAS,GAtBc;EAAC,CAAC,CAAC,CAAC;AADrD,KAAK,eAAe,AAAC,uCACb,EAAC,GAAE,CAAG,UAAS,AAAD,CAAG;AAAC,YA0Bb,SAAQ,GA1B4B;EAAC,CAAC,CAAC,CAAC;AAiCrD","file":"angular2/src/services/ruler.js","sourcesContent":["import {Promise, PromiseWrapper} from 'angular2/src/facade/async';\nimport {DomAdapter} from 'angular2/src/dom/dom_adapter';\nimport {NgElement} from 'angular2/src/core/compiler/ng_element';\n\nexport class Rectangle {\n left;\n right;\n top;\n bottom;\n height;\n width;\n constructor(left, top, width, height) {\n this.left = left;\n this.right = left + width;\n this.top = top;\n this.bottom = top + height;\n this.height = height;\n this.width = width;\n }\n}\n\nexport class Ruler {\n domAdapter: DomAdapter;\n constructor(domAdapter: DomAdapter) {\n this.domAdapter = domAdapter;\n }\n\n measure(el:NgElement): Promise<Rectangle> {\n var clntRect = this.domAdapter.getBoundingClientRect(el.domElement);\n\n //even if getBoundingClientRect is synchronous we use async API in preparation for further changes\n return PromiseWrapper.resolve(new Rectangle(clntRect.left, clntRect.top, clntRect.width, clntRect.height));\n }\n}\n"]}