diff --git a/.npm/package/npm-shrinkwrap.json b/.npm/package/npm-shrinkwrap.json index 5fc203d..e03b9ba 100644 --- a/.npm/package/npm-shrinkwrap.json +++ b/.npm/package/npm-shrinkwrap.json @@ -1,7 +1,7 @@ { "dependencies": { "angular2-now": { - "version": "1.1.5" + "version": "1.1.6" } } } diff --git a/CHANGELOG.md b/CHANGELOG.md index f84a7c6..75219a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/). -## [Unreleased] +## [1.1.6] - 2016-01-20 ### Fixed @@ -42,7 +42,7 @@ We have a new contributor: Kamil Kisiela. - BREAKING CHANGE: Meteor 1.1 version is now deprecated and will not be updated any further, other than to possibly fix very annoying errors. -[Unreleased]: https://github.com/pbastowski/angular2-now/compare/v1.1.5...HEAD +[1.1.6]: https://github.com/pbastowski/angular2-now/compare/v1.1.5...v1.1.6 [1.1.5]: https://github.com/pbastowski/angular2-now/compare/a8e7c2a...v1.1.5 [1.1.3]: https://github.com/pbastowski/angular2-now/compare/v1.1.0...a8e7c2a [1.1.0]: https://github.com/pbastowski/angular2-now/compare/689efb3...v1.1.0 diff --git a/dist/angular2-now.js b/dist/angular2-now.js index 3713674..ba615b8 100644 --- a/dist/angular2-now.js +++ b/dist/angular2-now.js @@ -1,4 +1,4 @@ -/*! angular2-now v1.1.5 */ +/*! angular2-now v1.1.6 */ (function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); @@ -413,9 +413,7 @@ return /******/ (function(modules) { // webpackBootstrap var staticProps = {}; for (var i in target) { - if (target.hasOwnProperty(i)) { - staticProps[i] = target[i]; - } + staticProps[i] = target[i]; } // Assign a new constructor, which holds the injected deps. target = controller; diff --git a/dist/angular2-now.min.js b/dist/angular2-now.min.js index 59f80b6..4703b5f 100644 --- a/dist/angular2-now.min.js +++ b/dist/angular2-now.min.js @@ -1,3 +1,3 @@ -/*! angular2-now v1.1.5 */ -!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.angular2now=t():e.angular2now=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(){o.common.isCordova="undefined"!=typeof cordova,o.common.angularModule=angular.module}Object.defineProperty(t,"__esModule",{value:!0});var o=n(1),c=n(2),l=n(3),a=n(7),u=n(8),i=n(4),s=n(5),p=n(9),d=n(10),m=n(11),f=n(12),v=n(13),g=n(14),y=n(15),j=n(16),M=n(17),h={init:r,SetModule:c.SetModule,Component:l.Component,ScopeShared:a.ScopeShared,ScopeNew:u.ScopeNew,View:i.View,Inject:s.Inject,Controller:p.Controller,Service:d.Service,Filter:m.Filter,bootstrap:f.bootstrap,State:v.State,options:g.options,Options:g.Options,MeteorMethod:y.MeteorMethod,MeteorReactive:j.MeteorReactive,LocalInjectables:M.LocalInjectables,Directive:l.Component,Injectable:d.Service};"undefined"==typeof Meteor&&r(),"undefined"!=typeof window&&(window.angular2now=h),t["default"]=h,e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={angularModule:void 0,currentModule:void 0,currentNameSpace:void 0,isCordova:!1,ng2nOptions:{currentModule:function(){return n.currentModule}},controllerAs:void 0,$q:angular.injector(["ng"]).get("$q")};t.common=n},function(e,t,n){"use strict";function r(){return o.common.currentModule=arguments[0].split(":"),1===o.common.currentModule.length?o.common.currentModule=o.common.currentModule[0]:(o.common.currentNameSpace=o.common.currentModule[0],o.common.currentModule=o.common.currentModule[1],arguments[0]=o.common.currentModule),o.common.angularModule.apply(angular,arguments)}Object.defineProperty(t,"__esModule",{value:!0}),t.SetModule=r;var o=n(1)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={selector:e}),function(t){function n(){for(var e=this,n=[],r=arguments.length,o=Array(r),c=0;r>c;c++)o[c]=arguments[c];var l=o;if(t.meteorReactive){var a=l[0],u=l[1];a(e).attach(u),n=l.slice(0,2),l=l.slice(2),t.$inject=t.$inject.slice(2)}t.localInjectables&&t.$inject.forEach(function(t,n){e[t]=l[n]}),this.$$init.apply(this,l),n.length>0&&(t.$inject=["$reactive","$scope"].concat(t.$inject),l.unshift(n[1]),l.unshift(n[0]))}function r(e,t){var n=e.prototype,r=e.prototype.constructor,o={};for(var c in e)e.hasOwnProperty(c)&&(o[c]=e[c]);e=t,e.prototype=n;for(var c in o)e[c]=o[c];return e.prototype.$$init=r,e}function u(e,t,n,r){r[0].$dependson&&r[0].$dependson.apply(r[0],r.slice(1))}var i=!1;t=r(t,n),e.injectables&&e.injectables instanceof Array&&(t=(0,c.Inject)(e.injectables)(t)),e.services&&e.services instanceof Array&&(t=(0,c.Inject)(e.services)(t)),e.providers&&e.providers instanceof Array&&(t=(0,c.Inject)(e.providers)(t)),e.selector=(0,a.camelCase)(e.selector||"")+"","."===e.selector[0]&&(i=!0,e.selector=e.selector.slice(1)),t.selector=(0,a.unCamelCase)(e.selector),(e.template||e.templateUrl||e.transclude||e.directives)&&(0,o.View)(e)(t),e.template=t.template||void 0,e.templateUrl=t.templateUrl||void 0;var s=[e.selector];t.$inject=t.$inject||[],t.$inject=t.$inject.map(function(e){return/^@[^]{0,2}/.test(e[0])&&(s.push("?"+e.slice(1)),e="delete-me"),e}),t.$inject=t.$inject.filter(function(e){return"delete-me"!==e}),t.meteorReactive&&(t.$inject.unshift("$scope"),t.$inject.unshift("$reactive")),t.$injectDefer=t.$inject||[];var p={controllerAs:e.controllerAs||l.common.controllerAs||t.controllerAs||e.selector,bindToController:"boolean"==typeof t.bindToController?t.bindToController:!0,restrict:e.template+e.templateUrl?"EA":i?"C":"A",scope:{},template:e.template,templateUrl:e.templateUrl,controller:t,replace:e.replace||!1,transclude:/ng-transclude/i.test(e.template)||t.transclude,require:e.require||t.require||s,link:e.link||t.link||u};e.restrict&&(p.restrict=e.restrict),t.hasOwnProperty("scope")?p.scope=t.scope:e.hasOwnProperty("scope")?p.scope=e.scope:e.bind&&(p.scope=e.bind);try{angular.module(l.common.currentModule).directive(e.selector,function(){return p})}catch(d){throw new Error('Does module "'+l.common.currentModule+'" exist? You may need to use SetModule("youModuleName").')}return t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Component=r;var o=n(4),c=n(5),l=n(1),a=n(6)},function(e,t){"use strict";function n(e){function t(e){var t=(e||"").match(/\]([^\>]+)/i);return t&&-1===t[1].toLowerCase().indexOf("ng-transclude")&&(e=e.replace(/\r;r++)n[r]=arguments[r];if(e=n[0]instanceof Array?n[0]:n,0===e.length)throw new Error("@Inject: No dependencies passed in");return function(t,n,r){var c=t;if(r&&(c=r.value),!c)throw new TypeError("@Inject can only be used with classes or class methods.");var l=c.$inject;return c.$inject=[],e.forEach(function(e){"$"!==e[0]&&"@"!==e[0]&&-1===e.indexOf("_")&&(e=(0,o.nameSpace)(e)),-1===c.$inject.indexOf(e)&&c.$inject.push(e)}),l&&(c.$inject=c.$inject.concat(l)),r||t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Inject=r;var o=n(6)},function(e,t,n){"use strict";function r(e){return u.common.currentNameSpace?u.common.currentNameSpace+"_"+e:e}function o(e,t){return angular.module(t||u.common.currentModule)._invokeQueue.filter(function(t){return"$provide"===t[0]&&t[2][0]===e})[0]}function c(e){return!!o(e)}function l(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}function a(e){var t=e.replace(/([A-Z])/g,"-$1").replace(/--/g,"-").toLowerCase();return"-"===t[0]?t.slice(1):t}Object.defineProperty(t,"__esModule",{value:!0}),t.nameSpace=r,t.getService=o,t.serviceExists=c,t.camelCase=l,t.unCamelCase=a;var u=n(1)},function(e,t){"use strict";function n(e){return e.scope=void 0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.ScopeShared=n},function(e,t){"use strict";function n(e){return e.scope=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.ScopeNew=n},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){return angular.module(o.common.currentModule).controller((0,c.nameSpace)(e.name),t),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Controller=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){return angular.module(o.common.currentModule).service((0,c.nameSpace)(e.name),t),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Service=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){function n(){var e=Array.prototype.slice.call(arguments),n=new(Function.prototype.bind.apply(t,[null].concat(e)));return n}return n.$inject=t.$inject,angular.module(o.common.currentModule).filter((0,c.nameSpace)(e.name),n),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e,t){function n(){var n=void 0;n=r?document.body:document.querySelector(e.selector),angular.bootstrap(n,[c],t)}var r=!1;(!e||e&&!e.selector&&"function"==typeof e)&&(e={selector:o.common.currentModule},r=!0),"string"==typeof e&&(e={selector:e}),e.bootstrap=!0;var c=e.selector||o.common.currentModule;c!==o.common.currentModule&&angular.module(c),t||(t={strictDi:!1}),o.common.isCordova?angular.element(document).on("deviceready",n):angular.element(document).ready(n)}Object.defineProperty(t,"__esModule",{value:!0}),t.bootstrap=r;var o=n(1)},function(e,t,n){"use strict";function r(e){if(!(e&&e instanceof Object&&void 0!==e.name))throw new Error("@State: Valid options are: name, url, defaultRoute, template, templateUrl, templateProvider, resolve, abstract, parent, data.");return function(t){var n=void 0,r=(0,c.nameSpace)((0,c.camelCase)(t.selector||(e.name+"").replace(".","-"))),l=!1,a=e.resolve||t.resolve;return a&&a instanceof Object&&(n=Object.keys(a),n.length&&(l=!0)),l&&((0,c.serviceExists)(r)||angular.module(o.common.currentModule).value(r,{})),angular.module(o.common.currentModule).config(["$urlRouterProvider","$stateProvider","$locationProvider",function(c,u,i){function s(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];var o=t[0];t=t.slice(1),n.slice(1).forEach(function(e,n){o[e]=t[n]})}e.defaultRoute&&c.otherwise("string"==typeof e.defaultRoute?e.defaultRoute:e.url),"undefined"!=typeof e.html5Mode&&i.html5Mode(e.html5Mode);var p=e.controller||(t.selector?void 0:t);p&&p.$inject&&p.$inject.length&&n&&n.length&&n.forEach(function(e){var t=p.$inject.indexOf(o.common.currentNameSpace+"_"+e);-1!==t&&(p.$inject[t]=e)});var d={url:e.url,params:e.params,"abstract":e["abstract"],templateUrl:e.templateUrl,template:(t.template||t.templateUrl)&&!t.bootstrap&&t.selector?t.selector.replace(/^(.*)$/,"<$1>"):'
',templateProvider:e.templateProvider,resolve:a,controller:l?s:void 0,controllerAs:o.common.ng2nOptions.hasOwnProperty("controllerAs")&&!t.hasOwnProperty("selector")?o.common.ng2nOptions.controllerAs:void 0,onEnter:e.onEnter,onExit:e.onExit,parent:e.parent,data:e.data};e.templateUrl||e.templateProvider?d.template=void 0:e.template&&(d.template=e.template),p&&(d.controller=p),t.controllerAs?d.controllerAs=t.controllerAs:e.controllerAs&&(d.controllerAs=e.controllerAs),u.state(e.name,d),l&&(n.unshift(r),s.$inject=n)}]),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.State=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e?("undefined"!=typeof e.controllerAs&&(c.common.controllerAs=e.controllerAs),c.common.ng2nOptions.spinner=e.spinner||{show:angular.noop,hide:angular.noop},c.common.ng2nOptions.events=e.events||{beforeCall:angular.noop,afterCall:angular.noop},void("undefined"!=typeof e.noConflict&&(angular.module=e.noConflict?c.common.angularModule:l.SetModule))):c.common.ng2nOptions}function o(e){return function(t){return angular.merge(c.common.ng2nOptions,e),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.options=r,t.Options=o;var c=n(1),l=n(2)},function(e,t,n){"use strict";function r(e){var t=angular.merge({},o.common.ng2nOptions,e),n=t.spinner||{show:angular.noop,hide:angular.noop},r=t.events||{beforeCall:angular.noop,afterCall:angular.noop};return function(e,c,l){return l.value=function(){function e(e,t){e?a.reject(e):a.resolve(t)}var l=Array.prototype.slice.call(arguments),a=o.common.$q.defer();if("string"==typeof n){if(!angular.injector(["ng",o.common.currentModule]).has(t.spinner))throw new Error('Spinner "'+n+'" does not exist.');n=angular.injector(["ng",o.common.currentModule]).get(t.spinner),t.spinner=n}return l.unshift(c),l.push(e),n&&n.show(),r.beforeCall&&r.beforeCall(),Meteor.call.apply(this,l),a.promise["finally"](function(){n.hide(),r.afterCall&&r.afterCall()}),a.promise},l}}Object.defineProperty(t,"__esModule",{value:!0}),t.MeteorMethod=r;var o=n(1)},function(e,t){"use strict";function n(e){return e.meteorReactive=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.MeteorReactive=n},function(e,t){"use strict";function n(e){return e.localInjectables=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.LocalInjectables=n}])}); +/*! angular2-now v1.1.6 */ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.angular2now=t():e.angular2now=t()}(this,function(){return function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return e[r].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(){o.common.isCordova="undefined"!=typeof cordova,o.common.angularModule=angular.module}Object.defineProperty(t,"__esModule",{value:!0});var o=n(1),c=n(2),l=n(3),a=n(7),u=n(8),i=n(4),s=n(5),p=n(9),d=n(10),m=n(11),f=n(12),v=n(13),g=n(14),y=n(15),j=n(16),M=n(17),h={init:r,SetModule:c.SetModule,Component:l.Component,ScopeShared:a.ScopeShared,ScopeNew:u.ScopeNew,View:i.View,Inject:s.Inject,Controller:p.Controller,Service:d.Service,Filter:m.Filter,bootstrap:f.bootstrap,State:v.State,options:g.options,Options:g.Options,MeteorMethod:y.MeteorMethod,MeteorReactive:j.MeteorReactive,LocalInjectables:M.LocalInjectables,Directive:l.Component,Injectable:d.Service};"undefined"==typeof Meteor&&r(),"undefined"!=typeof window&&(window.angular2now=h),t["default"]=h,e.exports=t["default"]},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n={angularModule:void 0,currentModule:void 0,currentNameSpace:void 0,isCordova:!1,ng2nOptions:{currentModule:function(){return n.currentModule}},controllerAs:void 0,$q:angular.injector(["ng"]).get("$q")};t.common=n},function(e,t,n){"use strict";function r(){return o.common.currentModule=arguments[0].split(":"),1===o.common.currentModule.length?o.common.currentModule=o.common.currentModule[0]:(o.common.currentNameSpace=o.common.currentModule[0],o.common.currentModule=o.common.currentModule[1],arguments[0]=o.common.currentModule),o.common.angularModule.apply(angular,arguments)}Object.defineProperty(t,"__esModule",{value:!0}),t.SetModule=r;var o=n(1)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={selector:e}),function(t){function n(){for(var e=this,n=[],r=arguments.length,o=Array(r),c=0;r>c;c++)o[c]=arguments[c];var l=o;if(t.meteorReactive){var a=l[0],u=l[1];a(e).attach(u),n=l.slice(0,2),l=l.slice(2),t.$inject=t.$inject.slice(2)}t.localInjectables&&t.$inject.forEach(function(t,n){e[t]=l[n]}),this.$$init.apply(this,l),n.length>0&&(t.$inject=["$reactive","$scope"].concat(t.$inject),l.unshift(n[1]),l.unshift(n[0]))}function r(e,t){var n=e.prototype,r=e.prototype.constructor,o={};for(var c in e)o[c]=e[c];e=t,e.prototype=n;for(var c in o)e[c]=o[c];return e.prototype.$$init=r,e}function u(e,t,n,r){r[0].$dependson&&r[0].$dependson.apply(r[0],r.slice(1))}var i=!1;t=r(t,n),e.injectables&&e.injectables instanceof Array&&(t=(0,c.Inject)(e.injectables)(t)),e.services&&e.services instanceof Array&&(t=(0,c.Inject)(e.services)(t)),e.providers&&e.providers instanceof Array&&(t=(0,c.Inject)(e.providers)(t)),e.selector=(0,a.camelCase)(e.selector||"")+"","."===e.selector[0]&&(i=!0,e.selector=e.selector.slice(1)),t.selector=(0,a.unCamelCase)(e.selector),(e.template||e.templateUrl||e.transclude||e.directives)&&(0,o.View)(e)(t),e.template=t.template||void 0,e.templateUrl=t.templateUrl||void 0;var s=[e.selector];t.$inject=t.$inject||[],t.$inject=t.$inject.map(function(e){return/^@[^]{0,2}/.test(e[0])&&(s.push("?"+e.slice(1)),e="delete-me"),e}),t.$inject=t.$inject.filter(function(e){return"delete-me"!==e}),t.meteorReactive&&(t.$inject.unshift("$scope"),t.$inject.unshift("$reactive")),t.$injectDefer=t.$inject||[];var p={controllerAs:e.controllerAs||l.common.controllerAs||t.controllerAs||e.selector,bindToController:"boolean"==typeof t.bindToController?t.bindToController:!0,restrict:e.template+e.templateUrl?"EA":i?"C":"A",scope:{},template:e.template,templateUrl:e.templateUrl,controller:t,replace:e.replace||!1,transclude:/ng-transclude/i.test(e.template)||t.transclude,require:e.require||t.require||s,link:e.link||t.link||u};e.restrict&&(p.restrict=e.restrict),t.hasOwnProperty("scope")?p.scope=t.scope:e.hasOwnProperty("scope")?p.scope=e.scope:e.bind&&(p.scope=e.bind);try{angular.module(l.common.currentModule).directive(e.selector,function(){return p})}catch(d){throw new Error('Does module "'+l.common.currentModule+'" exist? You may need to use SetModule("youModuleName").')}return t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Component=r;var o=n(4),c=n(5),l=n(1),a=n(6)},function(e,t){"use strict";function n(e){function t(e){var t=(e||"").match(/\]([^\>]+)/i);return t&&-1===t[1].toLowerCase().indexOf("ng-transclude")&&(e=e.replace(/\r;r++)n[r]=arguments[r];if(e=n[0]instanceof Array?n[0]:n,0===e.length)throw new Error("@Inject: No dependencies passed in");return function(t,n,r){var c=t;if(r&&(c=r.value),!c)throw new TypeError("@Inject can only be used with classes or class methods.");var l=c.$inject;return c.$inject=[],e.forEach(function(e){"$"!==e[0]&&"@"!==e[0]&&-1===e.indexOf("_")&&(e=(0,o.nameSpace)(e)),-1===c.$inject.indexOf(e)&&c.$inject.push(e)}),l&&(c.$inject=c.$inject.concat(l)),r||t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Inject=r;var o=n(6)},function(e,t,n){"use strict";function r(e){return u.common.currentNameSpace?u.common.currentNameSpace+"_"+e:e}function o(e,t){return angular.module(t||u.common.currentModule)._invokeQueue.filter(function(t){return"$provide"===t[0]&&t[2][0]===e})[0]}function c(e){return!!o(e)}function l(e){return e.replace(/-(.)/g,function(e,t){return t.toUpperCase()})}function a(e){var t=e.replace(/([A-Z])/g,"-$1").replace(/--/g,"-").toLowerCase();return"-"===t[0]?t.slice(1):t}Object.defineProperty(t,"__esModule",{value:!0}),t.nameSpace=r,t.getService=o,t.serviceExists=c,t.camelCase=l,t.unCamelCase=a;var u=n(1)},function(e,t){"use strict";function n(e){return e.scope=void 0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.ScopeShared=n},function(e,t){"use strict";function n(e){return e.scope=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.ScopeNew=n},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){return angular.module(o.common.currentModule).controller((0,c.nameSpace)(e.name),t),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Controller=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){return angular.module(o.common.currentModule).service((0,c.nameSpace)(e.name),t),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Service=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e=e||{},"string"==typeof e&&(e={name:e}),function(t){function n(){var e=Array.prototype.slice.call(arguments),n=new(Function.prototype.bind.apply(t,[null].concat(e)));return n}return n.$inject=t.$inject,angular.module(o.common.currentModule).filter((0,c.nameSpace)(e.name),n),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.Filter=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e,t){function n(){var n=void 0;n=r?document.body:document.querySelector(e.selector),angular.bootstrap(n,[c],t)}var r=!1;(!e||e&&!e.selector&&"function"==typeof e)&&(e={selector:o.common.currentModule},r=!0),"string"==typeof e&&(e={selector:e}),e.bootstrap=!0;var c=e.selector||o.common.currentModule;c!==o.common.currentModule&&angular.module(c),t||(t={strictDi:!1}),o.common.isCordova?angular.element(document).on("deviceready",n):angular.element(document).ready(n)}Object.defineProperty(t,"__esModule",{value:!0}),t.bootstrap=r;var o=n(1)},function(e,t,n){"use strict";function r(e){if(!(e&&e instanceof Object&&void 0!==e.name))throw new Error("@State: Valid options are: name, url, defaultRoute, template, templateUrl, templateProvider, resolve, abstract, parent, data.");return function(t){var n=void 0,r=(0,c.nameSpace)((0,c.camelCase)(t.selector||(e.name+"").replace(".","-"))),l=!1,a=e.resolve||t.resolve;return a&&a instanceof Object&&(n=Object.keys(a),n.length&&(l=!0)),l&&((0,c.serviceExists)(r)||angular.module(o.common.currentModule).value(r,{})),angular.module(o.common.currentModule).config(["$urlRouterProvider","$stateProvider","$locationProvider",function(c,u,i){function s(){for(var e=arguments.length,t=Array(e),r=0;e>r;r++)t[r]=arguments[r];var o=t[0];t=t.slice(1),n.slice(1).forEach(function(e,n){o[e]=t[n]})}e.defaultRoute&&c.otherwise("string"==typeof e.defaultRoute?e.defaultRoute:e.url),"undefined"!=typeof e.html5Mode&&i.html5Mode(e.html5Mode);var p=e.controller||(t.selector?void 0:t);p&&p.$inject&&p.$inject.length&&n&&n.length&&n.forEach(function(e){var t=p.$inject.indexOf(o.common.currentNameSpace+"_"+e);-1!==t&&(p.$inject[t]=e)});var d={url:e.url,params:e.params,"abstract":e["abstract"],templateUrl:e.templateUrl,template:(t.template||t.templateUrl)&&!t.bootstrap&&t.selector?t.selector.replace(/^(.*)$/,"<$1>"):'
',templateProvider:e.templateProvider,resolve:a,controller:l?s:void 0,controllerAs:o.common.ng2nOptions.hasOwnProperty("controllerAs")&&!t.hasOwnProperty("selector")?o.common.ng2nOptions.controllerAs:void 0,onEnter:e.onEnter,onExit:e.onExit,parent:e.parent,data:e.data};e.templateUrl||e.templateProvider?d.template=void 0:e.template&&(d.template=e.template),p&&(d.controller=p),t.controllerAs?d.controllerAs=t.controllerAs:e.controllerAs&&(d.controllerAs=e.controllerAs),u.state(e.name,d),l&&(n.unshift(r),s.$inject=n)}]),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.State=r;var o=n(1),c=n(6)},function(e,t,n){"use strict";function r(e){return e?("undefined"!=typeof e.controllerAs&&(c.common.controllerAs=e.controllerAs),c.common.ng2nOptions.spinner=e.spinner||{show:angular.noop,hide:angular.noop},c.common.ng2nOptions.events=e.events||{beforeCall:angular.noop,afterCall:angular.noop},void("undefined"!=typeof e.noConflict&&(angular.module=e.noConflict?c.common.angularModule:l.SetModule))):c.common.ng2nOptions}function o(e){return function(t){return angular.merge(c.common.ng2nOptions,e),t}}Object.defineProperty(t,"__esModule",{value:!0}),t.options=r,t.Options=o;var c=n(1),l=n(2)},function(e,t,n){"use strict";function r(e){var t=angular.merge({},o.common.ng2nOptions,e),n=t.spinner||{show:angular.noop,hide:angular.noop},r=t.events||{beforeCall:angular.noop,afterCall:angular.noop};return function(e,c,l){return l.value=function(){function e(e,t){e?a.reject(e):a.resolve(t)}var l=Array.prototype.slice.call(arguments),a=o.common.$q.defer();if("string"==typeof n){if(!angular.injector(["ng",o.common.currentModule]).has(t.spinner))throw new Error('Spinner "'+n+'" does not exist.');n=angular.injector(["ng",o.common.currentModule]).get(t.spinner),t.spinner=n}return l.unshift(c),l.push(e),n&&n.show(),r.beforeCall&&r.beforeCall(),Meteor.call.apply(this,l),a.promise["finally"](function(){n.hide(),r.afterCall&&r.afterCall()}),a.promise},l}}Object.defineProperty(t,"__esModule",{value:!0}),t.MeteorMethod=r;var o=n(1)},function(e,t){"use strict";function n(e){return e.meteorReactive=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.MeteorReactive=n},function(e,t){"use strict";function n(e){return e.localInjectables=!0,e}Object.defineProperty(t,"__esModule",{value:!0}),t.LocalInjectables=n}])}); //# sourceMappingURL=angular2-now.min.js.map \ No newline at end of file diff --git a/dist/angular2-now.min.js.map b/dist/angular2-now.min.js.map index 536df0d..dfa510f 100644 --- a/dist/angular2-now.min.js.map +++ b/dist/angular2-now.min.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///dist/angular2-now.min.js","webpack:///webpack/bootstrap 808641de35fe7e2a85d0","webpack:///./src/angular2-now.js","webpack:///./src/common.js","webpack:///./src/api/set-module.js","webpack:///./src/api/component.js","webpack:///./src/api/view.js","webpack:///./src/api/inject.js","webpack:///./src/utils.js","webpack:///./src/api/scope-shared.js","webpack:///./src/api/scope-new.js","webpack:///./src/api/controller.js","webpack:///./src/api/service.js","webpack:///./src/api/filter.js","webpack:///./src/api/bootstrap.js","webpack:///./src/api/state.js","webpack:///./src/api/options.js","webpack:///./src/api/meteor-method.js","webpack:///./src/api/meteor-reactive.js","webpack:///./src/api/local-injectables.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","init","_common","common","isCordova","cordova","angularModule","angular","Object","defineProperty","value","_apiSetModule","_apiComponent","_apiScopeShared","_apiScopeNew","_apiView","_apiInject","_apiController","_apiService","_apiFilter","_apiBootstrap","_apiState","_apiOptions","_apiMeteorMethod","_apiMeteorReactive","_apiLocalInjectables","angular2now","SetModule","Component","ScopeShared","ScopeNew","View","Inject","Controller","Service","Filter","bootstrap","State","options","Options","MeteorMethod","MeteorReactive","LocalInjectables","Directive","Injectable","Meteor","window","undefined","currentModule","currentNameSpace","ng2nOptions","controllerAs","$q","injector","get","arguments","split","length","apply","selector","target","controller","ctrlInstance","toInjectAfter","_len","args","Array","_key","injectedDeps","meteorReactive","$reactive","$scope","attach","slice","$inject","localInjectables","forEach","index","$$init","concat","unshift","deferController","oldproto","prototype","construct","constructor","staticProps","i","hasOwnProperty","link","scope","el","attr","controllers","$dependson","isClass","injectables","_inject","services","providers","_utils","camelCase","unCamelCase","template","templateUrl","transclude","directives","_view","requiredControllers","map","dep","test","push","filter","v","$injectDefer","ddo","bindToController","restrict","replace","require","directive","er","Error","transcludeContent","s","match","toLowerCase","indexOf","deps","name","descriptor","injectable","TypeError","existingInjects","nameSpace","getService","serviceName","moduleName","_invokeQueue","serviceExists","a","b","toUpperCase","service","filterFunc","f","Function","bind","config","onReady","bootOnDocument","document","body","querySelector","bootModule","strictDi","element","on","ready","resolvedServiceName","doResolve","resolves","resolve","keys","$urlRouterProvider","$stateProvider","$locationProvider","localScope","defaultRoute","otherwise","url","html5Mode","userController","sdo","params","abstract","templateProvider","onEnter","onExit","parent","data","state","spinner","show","noop","hide","events","beforeCall","afterCall","noConflict","_setModule","merge","_options","resolver","err","deferred","reject","argv","defer","has","promise"],"mappings":"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","file":"dist/angular2-now.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"angular2now\"] = factory();\n\telse\n\t\troot[\"angular2now\"] = factory();\n})(this, function() {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"angular2now\"] = factory();\n\telse\n\t\troot[\"angular2now\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _apiSetModule = __webpack_require__(2);\n\t\n\tvar _apiComponent = __webpack_require__(3);\n\t\n\tvar _apiScopeShared = __webpack_require__(7);\n\t\n\tvar _apiScopeNew = __webpack_require__(8);\n\t\n\tvar _apiView = __webpack_require__(4);\n\t\n\tvar _apiInject = __webpack_require__(5);\n\t\n\tvar _apiController = __webpack_require__(9);\n\t\n\tvar _apiService = __webpack_require__(10);\n\t\n\tvar _apiFilter = __webpack_require__(11);\n\t\n\tvar _apiBootstrap = __webpack_require__(12);\n\t\n\tvar _apiState = __webpack_require__(13);\n\t\n\tvar _apiOptions = __webpack_require__(14);\n\t\n\tvar _apiMeteorMethod = __webpack_require__(15);\n\t\n\tvar _apiMeteorReactive = __webpack_require__(16);\n\t\n\tvar _apiLocalInjectables = __webpack_require__(17);\n\t\n\tvar angular2now = {\n\t init: init,\n\t\n\t SetModule: _apiSetModule.SetModule,\n\t\n\t Component: _apiComponent.Component,\n\t ScopeShared: _apiScopeShared.ScopeShared,\n\t ScopeNew: _apiScopeNew.ScopeNew,\n\t View: _apiView.View,\n\t Inject: _apiInject.Inject,\n\t Controller: _apiController.Controller,\n\t Service: _apiService.Service,\n\t Filter: _apiFilter.Filter,\n\t bootstrap: _apiBootstrap.bootstrap,\n\t State: _apiState.State,\n\t\n\t options: _apiOptions.options,\n\t Options: _apiOptions.Options,\n\t\n\t MeteorMethod: _apiMeteorMethod.MeteorMethod,\n\t MeteorReactive: _apiMeteorReactive.MeteorReactive,\n\t LocalInjectables: _apiLocalInjectables.LocalInjectables,\n\t\n\t Directive: _apiComponent.Component,\n\t Injectable: _apiService.Service\n\t};\n\t\n\tfunction init() {\n\t _common.common.isCordova = typeof cordova !== 'undefined';\n\t _common.common.angularModule = angular.module;\n\t}\n\t\n\tif (typeof Meteor === 'undefined') {\n\t init();\n\t}\n\t\n\tif (typeof window !== 'undefined') {\n\t window.angular2now = angular2now;\n\t}\n\t\n\texports['default'] = angular2now;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 1 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\tvar common = {\n\t angularModule: undefined,\n\t currentModule: undefined,\n\t currentNameSpace: undefined,\n\t isCordova: false,\n\t ng2nOptions: {\n\t currentModule: function currentModule() {\n\t return common.currentModule;\n\t }\n\t },\n\t controllerAs: undefined,\n\t $q: angular.injector(['ng']).get('$q')\n\t};\n\texports.common = common;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.SetModule = SetModule;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tfunction SetModule() {\n\t /**\n\t * Name-spacing applies to provider names, not modules. Each module\n\t * has to have a unique name of it's own.\n\t *\n\t * A namespace may be specified like this:\n\t * SetModule('ftdesiree:helpers')\n\t * The namespace, once set, will remain in force until removed.\n\t * Remove the namespace like this:\n\t * angular.module(':helpers')\n\t **/\n\t _common.common.currentModule = arguments[0].split(':');\n\t\n\t if (_common.common.currentModule.length === 1) {\n\t // No namespace, just the module name\n\t _common.common.currentModule = _common.common.currentModule[0];\n\t } else {\n\t // Split off the name-space and module name\n\t _common.common.currentNameSpace = _common.common.currentModule[0];\n\t _common.common.currentModule = _common.common.currentModule[1];\n\t\n\t // Reassign arguments[0] without the namespace\n\t arguments[0] = _common.common.currentModule;\n\t }\n\t\n\t return _common.common.angularModule.apply(angular, arguments);\n\t}\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.Component = Component;\n\t\n\tvar _view = __webpack_require__(4);\n\t\n\tvar _inject = __webpack_require__(5);\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _utils = __webpack_require__(6);\n\t\n\t// function Directive(options) {\n\t//\n\t// // A string passed is assumed to be the attribute name of the directive.\n\t// if (typeof options === 'string')\n\t// options = { selector: options };\n\t//\n\t// // Directives have shared scope by default (scope:undefined).\n\t// // Optionally they can have a new scope created (scope: true).\n\t// // If you require an isolate scope for your directive then\n\t// // pass \"scope: { ... }\" in options.\n\t// if (options && !options.hasOwnProperty('scope'))\n\t// angular.merge(options, { scope: undefined });\n\t//\n\t// return Component(options);\n\t// }\n\t\n\tfunction Component(options) {\n\t options = options || {};\n\t // Allow shorthand notation of just passing the selector name as a string\n\t if (typeof options === 'string') {\n\t options = {\n\t selector: options\n\t };\n\t }\n\t\n\t return function ComponentTarget(target) {\n\t var isClass = false;\n\t\n\t // Create a stub controller and substitute it for the target's constructor,\n\t // so that we can call the target's constructor later, within the link function.\n\t target = deferController(target, controller);\n\t\n\t // service injections, which could also have been specified by using @Inject\n\t if (options.injectables && options.injectables instanceof Array) {\n\t target = (0, _inject.Inject)(options.injectables)(target);\n\t }\n\t // injectables has been renamed to services\n\t if (options.services && options.services instanceof Array) {\n\t target = (0, _inject.Inject)(options.services)(target);\n\t }\n\t // injectables has been renamed to providers, actually, but also keeping\n\t // services in case anyone has used it already.\n\t if (options.providers && options.providers instanceof Array) {\n\t target = (0, _inject.Inject)(options.providers)(target);\n\t }\n\t\n\t // Selector name may be prefixed with a '.', in which case \"restrict: 'C'\" will be used\n\t options.selector = (0, _utils.camelCase)(options.selector || '') + '';\n\t if (options.selector[0] === '.') {\n\t isClass = true;\n\t options.selector = options.selector.slice(1);\n\t }\n\t // Save the unCamelCased selector name, so that bootstrap() can use it\n\t target.selector = (0, _utils.unCamelCase)(options.selector);\n\t\n\t // template options can be set with Component or with View\n\t // so, we run View on the passed in options first.\n\t if (options.template || options.templateUrl || options.transclude || options.directives) {\n\t (0, _view.View)(options)(target);\n\t }\n\t\n\t // The template(Url) can also be passed in from the @View decorator\n\t options.template = target.template || undefined;\n\t options.templateUrl = target.templateUrl || undefined;\n\t\n\t // Build the require array.\n\t // Our controller needs the same injections as the component's controller,\n\t // but with the \"@*\" injections renamed to \"$scope\". The link function will pass\n\t // the \"@*\" injections directly to the component controller.\n\t var requiredControllers = [options.selector];\n\t\n\t target.$inject = target.$inject || [];\n\t target.$inject = target.$inject.map(function (dep) {\n\t if (/^@[^]{0,2}/.test(dep[0])) {\n\t requiredControllers.push('?' + dep.slice(1));\n\t dep = 'delete-me';\n\t }\n\t return dep;\n\t });\n\t\n\t // Remove all the 'delete-me' entries\n\t target.$inject = target.$inject.filter(function (v) {\n\t return v !== 'delete-me';\n\t });\n\t\n\t if (target.meteorReactive) {\n\t // Prepend angular-meteor injectables\n\t target.$inject.unshift('$scope');\n\t target.$inject.unshift('$reactive');\n\t }\n\t\n\t // Remember the original $inject, as it will be needed in the link function.\n\t // In the link function we will receive any requested component controllers\n\t // which we will then inject into the arguments that we will pass to the\n\t // actual constructor of our component.\n\t target.$injectDefer = target.$inject || [];\n\t\n\t // Create the angular directive\n\t var ddo = {\n\t controllerAs: options.controllerAs || _common.common.controllerAs || target.controllerAs || options.selector,\n\t bindToController: typeof target.bindToController === 'boolean' ? target.bindToController : true,\n\t restrict: options.template + options.templateUrl ? 'EA' : isClass ? 'C' : 'A',\n\t scope: {},\n\t template: options.template,\n\t templateUrl: options.templateUrl,\n\t controller: target,\n\t replace: options.replace || false,\n\t transclude: /ng-transclude/i.test(options.template) || target.transclude,\n\t require: options.require || target.require || requiredControllers,\n\t link: options.link || target.link || link\n\t };\n\t\n\t // ddo's restrict\n\t if (options.restrict) {\n\t ddo.restrict = options.restrict;\n\t }\n\t // ddo's scope\n\t if (target.hasOwnProperty('scope')) {\n\t ddo.scope = target.scope;\n\t } else if (options.hasOwnProperty('scope')) {\n\t ddo.scope = options.scope;\n\t } else if (options['bind']) {\n\t ddo.scope = options['bind'];\n\t }\n\t\n\t try {\n\t angular.module(_common.common.currentModule).directive(options.selector, function () {\n\t return ddo;\n\t });\n\t } catch (er) {\n\t throw new Error('Does module \"' + _common.common.currentModule + '\" exist? You may need to use SetModule(\"youModuleName\").');\n\t }\n\t\n\t return target;\n\t\n\t // The stub controller below saves injected objects, so we can re-inject them\n\t // into the \"real\" controller when the link function executes.\n\t // This allows me to add stuff to the controller and it's \"this\", which is required\n\t // for some future functionality.\n\t function controller() {\n\t var ctrlInstance = this;\n\t var toInjectAfter = [];\n\t\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\t\n\t var injectedDeps = args;\n\t\n\t if (target.meteorReactive) {\n\t // Get injected angular-meteor objects\n\t var $reactive = injectedDeps[0];\n\t var $scope = injectedDeps[1];\n\t\n\t $reactive(ctrlInstance).attach($scope);\n\t\n\t toInjectAfter = injectedDeps.slice(0, 2);\n\t injectedDeps = injectedDeps.slice(2);\n\t target.$inject = target.$inject.slice(2);\n\t }\n\t if (target.localInjectables) {\n\t target.$inject.forEach(function (value, index) {\n\t ctrlInstance[value] = injectedDeps[index];\n\t });\n\t }\n\t // Call the original constructor, which is now called $$init, injecting all the\n\t // dependencies requested.\n\t this.$$init.apply(this, injectedDeps);\n\t\n\t if (toInjectAfter.length > 0) {\n\t target.$inject = ['$reactive', '$scope'].concat(target.$inject);\n\t injectedDeps.unshift(toInjectAfter[1]);\n\t injectedDeps.unshift(toInjectAfter[0]);\n\t }\n\t }\n\t // This function allows me to replace a component's \"real\" constructor with my own.\n\t // I do this, because I want to decorate the $scope and this before instantiating\n\t // the class's original controller. Also, this enables me to inject\n\t // other component's controllers into the constructor, the same way as you would\n\t // inject a service.\n\t // The component's original constructor is assigned to the init method of the\n\t // component's class, so that when it executes it will run in the original scope and\n\t // closures that it was defined in. It is the init method that is called within the\n\t // link function.\n\t function deferController(target, controller) {\n\t // Save the original prototype\n\t var oldproto = target.prototype;\n\t // Save the original constructor, so we can call it later\n\t var construct = target.prototype.constructor;\n\t // Save any static properties\n\t var staticProps = {};\n\t\n\t for (var i in target) {\n\t if (target.hasOwnProperty(i)) {\n\t staticProps[i] = target[i];\n\t }\n\t }\n\t // Assign a new constructor, which holds the injected deps.\n\t target = controller;\n\t // Restore the original prototype\n\t target.prototype = oldproto;\n\t // Restore saved static properties\n\t for (var i in staticProps) {\n\t target[i] = staticProps[i];\n\t }\n\t // Store the original constructor under the name $$init,\n\t // which we will call in the link function.\n\t target.prototype.$$init = construct;\n\t // Hide $$init from the user's casual inspections of the controller\n\t // Object.defineProperty(target.prototype, \"$$init\", {enumerable: false})\n\t return target;\n\t }\n\t\n\t function link(scope, el, attr, controllers) {\n\t // Create a service with the same name as the selector\n\t // That holds a reference to our component\n\t // angular.module(currentModule).value(camelCase(target.selector), controllers[0]);\n\t\n\t // Alternate syntax for the injection of other component's controllers\n\t if (controllers[0].$dependson) {\n\t controllers[0].$dependson.apply(controllers[0], controllers.slice(1));\n\t }\n\t }\n\t };\n\t}\n\n/***/ },\n/* 4 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.View = View;\n\t\n\tfunction View(options) {\n\t options = options || {};\n\t // Allow shorthand notation of just passing the templateUrl as a string\n\t if (typeof options === 'string') {\n\t options = {\n\t templateUrl: options\n\t };\n\t }\n\t\n\t // if (!options.template) options.template = undefined;\n\t\n\t return function ViewTarget(target) {\n\t target.template = options.template || target.template;\n\t target.templateUrl = options.templateUrl || target.templateUrl;\n\t\n\t // When a templateUrl is specified in options, then transclude can also be specified\n\t target.transclude = options.transclude || target.transclude;\n\t\n\t // directives is an array of child directive controllers (Classes)\n\t target.directives = options.directives || target.directives;\n\t\n\t // Check for the new tag and add ng-transclude to it, if not there.\n\t if (target.template) {\n\t target.template = transcludeContent(target.template);\n\t }\n\t\n\t return target;\n\t };\n\t\n\t // If template contains the new tag then add ng-transclude to it.\n\t // This will be picked up in @Component, where ddo.transclude will be set to true.\n\t function transcludeContent(template) {\n\t var s = (template || '').match(/\\]([^\\>]+)/i);\n\t\n\t if (s && s[1].toLowerCase().indexOf('ng-transclude') === -1) {\n\t template = template.replace(/\\\".\n\t // 4) Otherwise, we provide the following default template \"
\".\n\t // (**) The bootstrap component will be rendered by Angular directly and must not\n\t // be rendered again by ui-router, or you will literally see it twice.\n\t // todo: allow the user to specify their own div/span instead of forcing \"div(ui-view)\"\n\t template: (target.template || target.templateUrl) && !target.bootstrap && target.selector ? target.selector.replace(/^(.*)$/, '<$1>') : '
',\n\t\n\t // The option for dynamically setting a template based on local values\n\t // or injectable services\n\t templateProvider: options.templateProvider,\n\t\n\t // Do we need to resolve stuff? If so, then we also provide a controller to catch the resolved data.\n\t resolve: resolves,\n\t\n\t // A user supplied controller OR\n\t // An internally created proxy controller, if resolves were requested for a Component.\n\t controller: doResolve ? controller : undefined,\n\t\n\t // Optionally controllerAs can be specifically set for those situations,\n\t // when we use @State on a class and there is no @Component defined.\n\t controllerAs: _common.common.ng2nOptions.hasOwnProperty('controllerAs') && !target.hasOwnProperty('selector') ? _common.common.ng2nOptions.controllerAs : undefined,\n\t\n\t // onEnter and onExit events\n\t onEnter: options.onEnter,\n\t onExit: options.onExit,\n\t\n\t // Custom parent State\n\t parent: options.parent,\n\t\n\t // Custom data\n\t data: options.data\n\t };\n\t\n\t // sdo's template\n\t if (options.templateUrl || options.templateProvider) {\n\t sdo.template = undefined;\n\t } else if (options.template) {\n\t sdo.template = options.template;\n\t }\n\t\n\t // sdo's controller\n\t if (userController) {\n\t sdo.controller = userController;\n\t }\n\t\n\t // sdo's controllerAs\n\t if (target.controllerAs) {\n\t sdo.controllerAs = target.controllerAs;\n\t } else if (options.controllerAs) {\n\t sdo.controllerAs = options.controllerAs;\n\t }\n\t\n\t // Create the state\n\t $stateProvider.state(options.name, sdo);\n\t\n\t // When our automatic controller is used, we inject the resolved values into it,\n\t // along with the injectable service that will be used to publish them.\n\t // If the user supplied a controller than we do not inject anything\n\t if (doResolve) {\n\t deps.unshift(resolvedServiceName);\n\t\n\t controller.$inject = deps;\n\t }\n\t\n\t // Populate the published service with the resolved values\n\t function controller() {\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\t\n\t // This is the service that we \"unshifted\" earlier\n\t var localScope = args[0];\n\t\n\t args = args.slice(1);\n\t\n\t // Now we copy the resolved values to the service.\n\t // This service can be injected into a component's constructor, for example.\n\t deps.slice(1).forEach(function (v, i) {\n\t localScope[v] = args[i];\n\t });\n\t }\n\t }]);\n\t return target;\n\t };\n\t}\n\n/***/ },\n/* 14 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.options = options;\n\texports.Options = Options;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _setModule = __webpack_require__(2);\n\t\n\t// Allow configuration of some angular2-now default settings\n\t// controllerAs: if provided, will user this string instead of component name, for example \"vm\"\n\t\n\tfunction options(options) {\n\t if (!options) {\n\t return _common.common.ng2nOptions;\n\t }\n\t\n\t if (typeof options.controllerAs !== 'undefined') {\n\t _common.common.controllerAs = options.controllerAs;\n\t }\n\t\n\t // Optional spinner object can be registered. It must expose show() and hide() methods.\n\t // The spinner will be activated before any I/O operations and deactivated once they complete.\n\t _common.common.ng2nOptions.spinner = options.spinner || {\n\t show: angular.noop,\n\t hide: angular.noop\n\t };\n\t\n\t // events expose beforeCall() and afterCall().\n\t // beforeCall() will be called before any I/O operations.\n\t // afterCall() will be called after any I/O operations have completed.\n\t _common.common.ng2nOptions.events = options.events || {\n\t beforeCall: angular.noop,\n\t afterCall: angular.noop\n\t };\n\t\n\t // The noConflict option allows us to control whether or not angular2-now\n\t // monkey-patches angular.module.\n\t // true = don't monkey patch.\n\t // false = (default for versions < 0.4.0) DO monkey patch angular.module\n\t // for backwards compatibility\n\t if (typeof options.noConflict !== 'undefined') {\n\t angular.module = options.noConflict ? _common.common.angularModule : _setModule.SetModule;\n\t }\n\t}\n\t\n\tfunction Options(options) {\n\t return function OptionsTarget(target) {\n\t angular.merge(_common.common.ng2nOptions, options);\n\t return target;\n\t };\n\t}\n\n/***/ },\n/* 15 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.MeteorMethod = MeteorMethod;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\t// The name of the Meteor.method is the same as the name of class method.\n\t\n\tfunction MeteorMethod(_options) {\n\t var options = angular.merge({}, _common.common.ng2nOptions, _options);\n\t var spinner = options.spinner || {\n\t show: angular.noop,\n\t hide: angular.noop\n\t };\n\t var events = options.events || {\n\t beforeCall: angular.noop,\n\t afterCall: angular.noop\n\t };\n\t\n\t return function MeteorMethodTarget(target, name, descriptor) {\n\t // Create a method that calls the back-end\n\t descriptor.value = function () {\n\t var argv = Array.prototype.slice.call(arguments);\n\t var deferred = _common.common.$q.defer();\n\t\n\t if (typeof spinner === 'string') {\n\t if (angular.injector(['ng', _common.common.currentModule]).has(options.spinner)) {\n\t spinner = angular.injector(['ng', _common.common.currentModule]).get(options.spinner);\n\t options.spinner = spinner;\n\t } else {\n\t throw new Error('Spinner \"' + spinner + '\" does not exist.');\n\t }\n\t }\n\t\n\t argv.unshift(name);\n\t argv.push(resolver);\n\t\n\t if (spinner) {\n\t spinner.show();\n\t }\n\t\n\t if (events.beforeCall) {\n\t events.beforeCall();\n\t }\n\t // Call optional events.beforeCall()\n\t\n\t // todo: should call Meteor after resolution of promise returned by beforeCall()\n\t Meteor.call.apply(this, argv);\n\t\n\t deferred.promise['finally'](function () {\n\t spinner.hide();\n\t // Call optional events.afterCall()\n\t if (events.afterCall) {\n\t events.afterCall();\n\t }\n\t });\n\t\n\t return deferred.promise;\n\t\n\t function resolver(err, data) {\n\t if (err) {\n\t deferred.reject(err);\n\t } else {\n\t deferred.resolve(data);\n\t }\n\t }\n\t };\n\t\n\t return descriptor;\n\t };\n\t}\n\n/***/ },\n/* 16 */\n/***/ function(module, exports) {\n\n\t// Turn on an indication to run $reactive(this).attach($scope) for the component's controller.\n\t// Uses with Angular-Meteor: http://angular-meteor.com, v1.3 and up only\n\t\"use strict\";\n\t\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\texports.MeteorReactive = MeteorReactive;\n\t\n\tfunction MeteorReactive(target) {\n\t target.meteorReactive = true;\n\t return target;\n\t}\n\n/***/ },\n/* 17 */\n/***/ function(module, exports) {\n\n\t\"use strict\";\n\t\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\texports.LocalInjectables = LocalInjectables;\n\t\n\tfunction LocalInjectables(target) {\n\t target.localInjectables = true;\n\t return target;\n\t}\n\n/***/ }\n/******/ ])\n});\n;\n\n\n/** WEBPACK FOOTER **\n ** dist/angular2-now.min.js\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap 808641de35fe7e2a85d0\n **/","import { common } from './common';\nimport { SetModule } from './api/set-module';\nimport { Component } from './api/component';\nimport { ScopeShared } from './api/scope-shared';\nimport { ScopeNew } from './api/scope-new';\nimport { View } from './api/view';\nimport { Inject } from './api/inject';\nimport { Controller } from './api/controller';\nimport { Service } from './api/service';\nimport { Filter } from './api/filter';\nimport { bootstrap } from './api/bootstrap';\nimport { State } from './api/state';\nimport { options, Options } from './api/options';\nimport { MeteorMethod } from './api/meteor-method';\nimport { MeteorReactive } from './api/meteor-reactive';\nimport { LocalInjectables } from './api/local-injectables';\n\nconst angular2now = {\n init,\n\n SetModule,\n\n Component,\n ScopeShared,\n ScopeNew,\n View,\n Inject,\n Controller,\n Service,\n Filter,\n bootstrap,\n State,\n\n options,\n Options,\n\n MeteorMethod,\n MeteorReactive,\n LocalInjectables,\n\n Directive: Component,\n Injectable: Service\n};\n\nfunction init() {\n common.isCordova = typeof cordova !== 'undefined';\n common.angularModule = angular.module;\n}\n\nif (typeof Meteor === 'undefined') {\n init();\n}\n\nif (typeof window !== 'undefined') {\n window.angular2now = angular2now;\n}\n\nexport default angular2now;\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/angular2-now.js\n **/","export const common = {\n angularModule: undefined,\n currentModule: undefined,\n currentNameSpace: undefined,\n isCordova: false,\n ng2nOptions: {\n currentModule() {\n return common.currentModule;\n }\n },\n controllerAs: undefined,\n $q: angular.injector(['ng']).get('$q')\n};\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/common.js\n **/","import { common } from './../common';\n\nexport function SetModule() {\n /**\n * Name-spacing applies to provider names, not modules. Each module\n * has to have a unique name of it's own.\n *\n * A namespace may be specified like this:\n * SetModule('ftdesiree:helpers')\n * The namespace, once set, will remain in force until removed.\n * Remove the namespace like this:\n * angular.module(':helpers')\n **/\n common.currentModule = arguments[0].split(':');\n\n if (common.currentModule.length === 1) {\n // No namespace, just the module name\n common.currentModule = common.currentModule[0];\n } else {\n // Split off the name-space and module name\n common.currentNameSpace = common.currentModule[0];\n common.currentModule = common.currentModule[1];\n\n // Reassign arguments[0] without the namespace\n arguments[0] = common.currentModule;\n }\n\n return common.angularModule.apply(angular, arguments);\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/set-module.js\n **/","import { View } from './view';\nimport { Inject } from './inject';\nimport { common } from './../common';\nimport { camelCase, unCamelCase } from './../utils';\n\n// function Directive(options) {\n//\n// // A string passed is assumed to be the attribute name of the directive.\n// if (typeof options === 'string')\n// options = { selector: options };\n//\n// // Directives have shared scope by default (scope:undefined).\n// // Optionally they can have a new scope created (scope: true).\n// // If you require an isolate scope for your directive then\n// // pass \"scope: { ... }\" in options.\n// if (options && !options.hasOwnProperty('scope'))\n// angular.merge(options, { scope: undefined });\n//\n// return Component(options);\n// }\n\nexport function Component(options) {\n options = options || {};\n // Allow shorthand notation of just passing the selector name as a string\n if (typeof options === 'string') {\n options = {\n selector: options\n };\n }\n\n return function ComponentTarget(target) {\n let isClass = false;\n\n // Create a stub controller and substitute it for the target's constructor,\n // so that we can call the target's constructor later, within the link function.\n target = deferController(target, controller);\n\n // service injections, which could also have been specified by using @Inject\n if (options.injectables && options.injectables instanceof Array) {\n target = Inject(options.injectables)(target);\n }\n // injectables has been renamed to services\n if (options.services && options.services instanceof Array) {\n target = Inject(options.services)(target);\n }\n // injectables has been renamed to providers, actually, but also keeping\n // services in case anyone has used it already.\n if (options.providers && options.providers instanceof Array) {\n target = Inject(options.providers)(target);\n }\n\n // Selector name may be prefixed with a '.', in which case \"restrict: 'C'\" will be used\n options.selector = camelCase(options.selector || '') + '';\n if (options.selector[0] === '.') {\n isClass = true;\n options.selector = options.selector.slice(1);\n }\n // Save the unCamelCased selector name, so that bootstrap() can use it\n target.selector = unCamelCase(options.selector);\n\n // template options can be set with Component or with View\n // so, we run View on the passed in options first.\n if (options.template || options.templateUrl || options.transclude || options.directives) {\n View(options)(target);\n }\n\n // The template(Url) can also be passed in from the @View decorator\n options.template = target.template || undefined;\n options.templateUrl = target.templateUrl || undefined;\n\n // Build the require array.\n // Our controller needs the same injections as the component's controller,\n // but with the \"@*\" injections renamed to \"$scope\". The link function will pass\n // the \"@*\" injections directly to the component controller.\n const requiredControllers = [options.selector];\n\n target.$inject = target.$inject || [];\n target.$inject = target.$inject.map((dep) => {\n if (/^@[^]{0,2}/.test(dep[0])) {\n requiredControllers.push('?' + dep.slice(1));\n dep = 'delete-me';\n }\n return dep;\n });\n\n // Remove all the 'delete-me' entries\n target.$inject = target.$inject.filter((v) => v !== 'delete-me');\n\n if (target.meteorReactive) {\n // Prepend angular-meteor injectables\n target.$inject.unshift('$scope');\n target.$inject.unshift('$reactive');\n }\n\n // Remember the original $inject, as it will be needed in the link function.\n // In the link function we will receive any requested component controllers\n // which we will then inject into the arguments that we will pass to the\n // actual constructor of our component.\n target.$injectDefer = target.$inject || [];\n\n // Create the angular directive\n const ddo = {\n controllerAs: options.controllerAs || common.controllerAs || target.controllerAs || options.selector,\n bindToController: typeof target.bindToController === 'boolean' ? target.bindToController : true,\n restrict: (options.template + options.templateUrl) ? 'EA' : isClass ? 'C' : 'A',\n scope: {},\n template: options.template,\n templateUrl: options.templateUrl,\n controller: target,\n replace: options.replace || false,\n transclude: /ng-transclude/i.test(options.template) || target.transclude,\n require: options.require || target.require || requiredControllers,\n link: options.link || target.link || link\n };\n\n // ddo's restrict\n if (options.restrict) {\n ddo.restrict = options.restrict;\n }\n // ddo's scope\n if (target.hasOwnProperty('scope')) {\n ddo.scope = target.scope;\n } else if (options.hasOwnProperty('scope')) {\n ddo.scope = options.scope;\n } else if (options['bind']) {\n ddo.scope = options['bind'];\n }\n\n\n try {\n angular.module(common.currentModule)\n .directive(options.selector, () => ddo);\n } catch (er) {\n throw new Error('Does module \"' + common.currentModule + '\" exist? You may need to use SetModule(\"youModuleName\").');\n }\n\n return target;\n\n // The stub controller below saves injected objects, so we can re-inject them\n // into the \"real\" controller when the link function executes.\n // This allows me to add stuff to the controller and it's \"this\", which is required\n // for some future functionality.\n function controller(...args) {\n const ctrlInstance = this;\n let toInjectAfter = [];\n let injectedDeps = args;\n\n if (target.meteorReactive) {\n // Get injected angular-meteor objects\n const $reactive = injectedDeps[0];\n const $scope = injectedDeps[1];\n\n $reactive(ctrlInstance).attach($scope);\n\n toInjectAfter = injectedDeps.slice(0, 2);\n injectedDeps = injectedDeps.slice(2);\n target.$inject = target.$inject.slice(2);\n }\n if (target.localInjectables) {\n target.$inject.forEach((value, index) => {\n ctrlInstance[value] = injectedDeps[index];\n });\n }\n // Call the original constructor, which is now called $$init, injecting all the\n // dependencies requested.\n this.$$init.apply(this, injectedDeps);\n\n if (toInjectAfter.length > 0) {\n target.$inject = ['$reactive', '$scope'].concat(target.$inject);\n injectedDeps.unshift(toInjectAfter[1]);\n injectedDeps.unshift(toInjectAfter[0]);\n }\n }\n // This function allows me to replace a component's \"real\" constructor with my own.\n // I do this, because I want to decorate the $scope and this before instantiating\n // the class's original controller. Also, this enables me to inject\n // other component's controllers into the constructor, the same way as you would\n // inject a service.\n // The component's original constructor is assigned to the init method of the\n // component's class, so that when it executes it will run in the original scope and\n // closures that it was defined in. It is the init method that is called within the\n // link function.\n function deferController(target, controller) {\n // Save the original prototype\n const oldproto = target.prototype;\n // Save the original constructor, so we can call it later\n const construct = target.prototype.constructor;\n // Save any static properties\n const staticProps = {};\n\n for (const i in target) {\n if (target.hasOwnProperty(i)) {\n staticProps[i] = target[i];\n }\n }\n // Assign a new constructor, which holds the injected deps.\n target = controller;\n // Restore the original prototype\n target.prototype = oldproto;\n // Restore saved static properties\n for (const i in staticProps) {\n target[i] = staticProps[i];\n }\n // Store the original constructor under the name $$init,\n // which we will call in the link function.\n target.prototype.$$init = construct;\n // Hide $$init from the user's casual inspections of the controller\n // Object.defineProperty(target.prototype, \"$$init\", {enumerable: false})\n return target;\n }\n\n function link(scope, el, attr, controllers) {\n // Create a service with the same name as the selector\n // That holds a reference to our component\n // angular.module(currentModule).value(camelCase(target.selector), controllers[0]);\n\n // Alternate syntax for the injection of other component's controllers\n if (controllers[0].$dependson) {\n controllers[0].$dependson.apply(controllers[0], controllers.slice(1));\n }\n }\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/component.js\n **/","export function View(options) {\n options = options || {};\n // Allow shorthand notation of just passing the templateUrl as a string\n if (typeof options === 'string') {\n options = {\n templateUrl: options\n };\n }\n\n // if (!options.template) options.template = undefined;\n\n return function ViewTarget(target) {\n target.template = options.template || target.template;\n target.templateUrl = options.templateUrl || target.templateUrl;\n\n // When a templateUrl is specified in options, then transclude can also be specified\n target.transclude = options.transclude || target.transclude;\n\n // directives is an array of child directive controllers (Classes)\n target.directives = options.directives || target.directives;\n\n // Check for the new tag and add ng-transclude to it, if not there.\n if (target.template) {\n target.template = transcludeContent(target.template);\n }\n\n return target;\n };\n\n // If template contains the new tag then add ng-transclude to it.\n // This will be picked up in @Component, where ddo.transclude will be set to true.\n function transcludeContent(template) {\n const s = (template || '').match(/\\]([^\\>]+)/i);\n\n if (s && s[1].toLowerCase().indexOf('ng-transclude') === -1) {\n template = template.replace(/\\ {\n // Namespace any injectables without an existing nameSpace prefix and also\n // not already prefixed with '$', '@' or '@^'.\n if (dep[0] !== '$' && dep[0] !== '@' && dep.indexOf('_') === -1) {\n dep = nameSpace(dep);\n }\n\n if (injectable.$inject.indexOf(dep) === -1) {\n injectable.$inject.push(dep);\n }\n });\n\n if (existingInjects) {\n injectable.$inject = injectable.$inject.concat(existingInjects);\n }\n\n return descriptor || target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/inject.js\n **/","import { common } from './common';\n\n// Create a new name from the concatenation of\n// the currentNameSpace and the name argument\nexport function nameSpace(name) {\n return common.currentNameSpace ? common.currentNameSpace + '_' + name : name;\n}\n\nexport function getService(serviceName, moduleName) {\n return angular.module(moduleName || common.currentModule)\n ._invokeQueue\n .filter((v) => v[0] === '$provide' && v[2][0] === serviceName)[0];\n}\n\n// Does a provider with a specific name exist in the current module\nexport function serviceExists(serviceName) {\n return !!getService(serviceName);\n}\n\nexport function camelCase(s) {\n return s.replace(/-(.)/g, (a, b) => b.toUpperCase());\n}\n\nexport function unCamelCase(c) {\n const s = c.replace(/([A-Z])/g, '-$1')\n .replace(/--/g, '-')\n .toLowerCase();\n\n if (s[0] === '-') {\n return s.slice(1);\n }\n\n return s;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/utils.js\n **/","// Cancels out the automatic creation of isolate scope for the directive,\n// because Angular 1.x allows only one isolate scope directive per element.\n// This is useful when actually creating directives, which add behaviour\n// to an existing element, as opposed to components which are stand alone\n// bits of html and behaviour.\n// The other way to do this is to pass \"scope: undefined\" to @Component.\nexport function ScopeShared(target) {\n target.scope = undefined;\n return target;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/scope-shared.js\n **/","// Requests a new scope to be created when the directive is created.\n// The other way to do this is to pass \"scope: true\" to @Component.\nexport function ScopeNew(target) {\n target.scope = true;\n return target;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/scope-new.js\n **/","import { common } from './../common';\nimport { nameSpace } from './../utils';\n\nexport function Controller(options) {\n options = options || {};\n // Allow shorthand notation of just passing the name as a string\n if (typeof options === 'string') {\n options = { name: options };\n }\n\n return function ControllerTarget(target) {\n angular.module(common.currentModule)\n .controller(nameSpace(options.name), target);\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/controller.js\n **/","import { common } from './../common';\nimport { nameSpace } from './../utils';\n\nexport function Service(options) {\n options = options || {};\n // Allow shorthand notation of just passing the name as a string\n if (typeof options === 'string') {\n options = {\n name: options\n };\n }\n\n return function ServiceTarget(target) {\n angular.module(common.currentModule)\n .service(nameSpace(options.name), target);\n // .factory(options.name, function () { return new target })\n\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/service.js\n **/","import { common } from './../common';\nimport { nameSpace } from './../utils';\n\nexport function Filter(options) {\n options = options || {};\n // Allow shorthand notation of just passing the name as a string\n if (typeof options === 'string') {\n options = {\n name: options\n };\n }\n\n return function FilterTarget(target) {\n filterFunc.$inject = target.$inject;\n\n angular.module(common.currentModule)\n .filter(nameSpace(options.name), filterFunc);\n\n function filterFunc() {\n const args = Array.prototype.slice.call(arguments);\n const f = new(Function.prototype.bind.apply(target, [null].concat(args)));\n\n return f;\n }\n\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/filter.js\n **/","import { common } from './../common';\n\n/**\n * Bootstraps the Angular 1.x app.\n *\n * @param ?target undefined | string | class\n * undefined: bootstraps on document and the current angular module\n * string: will use document.querySelector to find the element by this string\n * class: bootstraps on the component defined on this class, looks for selector\n *\n * @param ?config angular.bootstrap() config object, see AngularJS doco\n */\nexport function bootstrap(target, config) {\n let bootOnDocument = false;\n\n if (!target || (target && !target.selector && typeof target === 'function')) {\n target = {\n selector: common.currentModule\n };\n bootOnDocument = true;\n }\n\n // Allow string shortcut for target.selector. Can be the name of any HTML tag.\n if (typeof target === 'string') {\n target = {\n selector: target\n };\n }\n\n // Mark this class as a bootstrap component. This allows @State\n // to handle it correctly.\n target.bootstrap = true;\n\n const bootModule = target.selector || common.currentModule;\n\n if (bootModule !== common.currentModule) {\n angular.module(bootModule);\n }\n\n if (!config) {\n config = {\n strictDi: false\n };\n }\n\n if (common.isCordova) {\n angular.element(document).on('deviceready', onReady);\n } else {\n angular.element(document).ready(onReady);\n }\n\n function onReady() {\n let el;\n\n if (!bootOnDocument) {\n // Find the component's element\n el = document.querySelector(target.selector);\n } else {\n // Or use document, if user passed no arguments\n el = document.body;\n }\n\n angular.bootstrap(el, [bootModule], config);\n }\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/bootstrap.js\n **/","import { common } from './../common';\nimport { serviceExists, nameSpace, camelCase } from './../utils';\n\n/**\n * State can be used to annotate either a Component or a class and assign\n * a ui-router state to it.\n *\n * @param options literal object\n * name: name of the state\n * url: url associated with this state\n * template: template\n * templateUrl: templateUrl\n * templateProvider: templateProvider\n * defaultRoute: truthy = .otherwise(url)\n * string = .otherwise(defaultRoute)\n * resolve: Literal object, see ui-router resolve\n * abstract: true/false\n * params: Literal object, see ui-router doco\n * parent: Define a custom parent state\n * controller: A controller is automatically assigned, but if you need\n * finer control then you can assign your own controller\n * controllerAs: Specify ControllerAs for cases when there is no\n * @Component used\n *\n * If a class is annotated then it is assumed to be the controller and\n * the state name will be used as the name of the injectable service\n * that will hold any resolves requested.\n *\n * When a component is annotated and resolves requested, then the component's\n * selector name is used as the name of the injectable service that holds\n * their values.\n */\nexport function State(options) {\n if (!options || !(options instanceof Object) || options.name === undefined) {\n throw new Error('@State: Valid options are: name, url, defaultRoute, template, templateUrl, templateProvider, resolve, abstract, parent, data.');\n }\n\n return function StateTarget(target) {\n let deps;\n const resolvedServiceName = nameSpace(camelCase(target.selector || (options.name + '').replace('.', '-')));\n\n // Indicates if there is anything to resolve\n let doResolve = false;\n\n // Values to resolve can either be supplied in options.resolve or as a static method on the\n // component's class\n const resolves = options.resolve || target.resolve;\n\n // Is there a resolve block?\n if (resolves && resolves instanceof Object) {\n deps = Object.keys(resolves);\n\n if (deps.length) {\n doResolve = true;\n }\n }\n\n // Create an injectable value service to share the resolved values with the controller\n // The service bears the same name as the component's camelCased selector name.\n if (doResolve) {\n if (!serviceExists(resolvedServiceName)) {\n angular.module(common.currentModule).value(resolvedServiceName, {});\n }\n }\n\n // Configure the state\n angular.module(common.currentModule)\n .config(['$urlRouterProvider', '$stateProvider', '$locationProvider',\n function ($urlRouterProvider, $stateProvider, $locationProvider) {\n // Activate this state, if options.defaultRoute = true.\n // If you don't want this then don't set options.defaultRoute to true\n // and, instead, use $state.go inside the constructor to active a state.\n // You can also pass a string to defaultRoute, which will become the default route.\n if (options.defaultRoute) {\n $urlRouterProvider.otherwise((typeof options.defaultRoute === 'string') ? options.defaultRoute : options.url);\n }\n\n // Optionally configure html5Mode\n if (!(typeof options.html5Mode === 'undefined')) {\n $locationProvider.html5Mode(options.html5Mode);\n }\n\n // The user can supply a controller through a parameter in options\n // or the class itself can be used as the controller if no component is annotated.\n const userController = options.controller || (!target.selector ? target : undefined);\n\n // Also, de-namespace the resolve injectables for ui-router to inject correctly\n if (userController && userController.$inject && userController.$inject.length && deps && deps.length) {\n deps.forEach(function (dep) {\n const i = userController.$inject.indexOf(common.currentNameSpace + '_' + dep);\n\n if (i !== -1) {\n userController.$inject[i] = dep;\n }\n });\n }\n\n\n // This is the state definition object\n const sdo = {\n url: options.url,\n\n // Default values for URL parameters can be configured here.\n // ALso, parameters that do not appear in the URL can be configured here.\n params: options.params,\n\n // The State applied to a bootstrap component can be abstract,\n // if you don't want that state to be able to activate.\n abstract: options.abstract,\n\n templateUrl: options.templateUrl,\n\n // This is the \"inline\" template, as opposed to the templateUrl.\n // 1) If either options.templateUrl or options.templateProvider is specified then\n // template will be set to undefined.\n // 2) If options.template is provided then it will be used.\n // 3) Otherwise, if this is a component, but not the bootstrap(**) component,\n // then we use it's selector to create the inline template \"\".\n // 4) Otherwise, we provide the following default template \"
\".\n // (**) The bootstrap component will be rendered by Angular directly and must not\n // be rendered again by ui-router, or you will literally see it twice.\n // todo: allow the user to specify their own div/span instead of forcing \"div(ui-view)\"\n template: (target.template || target.templateUrl) && !target.bootstrap && target.selector ? target.selector.replace(/^(.*)$/, '<$1>') : '
',\n\n // The option for dynamically setting a template based on local values\n // or injectable services\n templateProvider: options.templateProvider,\n\n // Do we need to resolve stuff? If so, then we also provide a controller to catch the resolved data.\n resolve: resolves,\n\n // A user supplied controller OR\n // An internally created proxy controller, if resolves were requested for a Component.\n controller: doResolve ? controller : undefined,\n\n // Optionally controllerAs can be specifically set for those situations,\n // when we use @State on a class and there is no @Component defined.\n controllerAs: common.ng2nOptions.hasOwnProperty('controllerAs') && !target.hasOwnProperty('selector') ? common.ng2nOptions.controllerAs : undefined,\n\n // onEnter and onExit events\n onEnter: options.onEnter,\n onExit: options.onExit,\n\n // Custom parent State\n parent: options.parent,\n\n // Custom data\n data: options.data\n };\n\n // sdo's template\n if (options.templateUrl || options.templateProvider) {\n sdo.template = undefined;\n } else if (options.template) {\n sdo.template = options.template;\n }\n\n // sdo's controller\n if (userController) {\n sdo.controller = userController;\n }\n\n // sdo's controllerAs\n if (target.controllerAs) {\n sdo.controllerAs = target.controllerAs;\n } else if (options.controllerAs) {\n sdo.controllerAs = options.controllerAs;\n }\n\n // Create the state\n $stateProvider.state(options.name, sdo);\n\n // When our automatic controller is used, we inject the resolved values into it,\n // along with the injectable service that will be used to publish them.\n // If the user supplied a controller than we do not inject anything\n if (doResolve) {\n deps.unshift(resolvedServiceName);\n\n controller.$inject = deps;\n }\n\n // Populate the published service with the resolved values\n function controller(...args) {\n // This is the service that we \"unshifted\" earlier\n const localScope = args[0];\n\n args = args.slice(1);\n\n // Now we copy the resolved values to the service.\n // This service can be injected into a component's constructor, for example.\n deps.slice(1).forEach((v, i) => {\n localScope[v] = args[i];\n });\n }\n }\n ]);\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/state.js\n **/","import { common } from './../common';\nimport { SetModule } from './set-module';\n\n// Allow configuration of some angular2-now default settings\n// controllerAs: if provided, will user this string instead of component name, for example \"vm\"\nexport function options(options) {\n if (!options) {\n return common.ng2nOptions;\n }\n\n if (typeof options.controllerAs !== 'undefined') {\n common.controllerAs = options.controllerAs;\n }\n\n // Optional spinner object can be registered. It must expose show() and hide() methods.\n // The spinner will be activated before any I/O operations and deactivated once they complete.\n common.ng2nOptions.spinner = options.spinner || {\n show: angular.noop,\n hide: angular.noop\n };\n\n // events expose beforeCall() and afterCall().\n // beforeCall() will be called before any I/O operations.\n // afterCall() will be called after any I/O operations have completed.\n common.ng2nOptions.events = options.events || {\n beforeCall: angular.noop,\n afterCall: angular.noop\n };\n\n // The noConflict option allows us to control whether or not angular2-now\n // monkey-patches angular.module.\n // true = don't monkey patch.\n // false = (default for versions < 0.4.0) DO monkey patch angular.module\n // for backwards compatibility\n if (typeof options.noConflict !== 'undefined') {\n angular.module = options.noConflict ? common.angularModule : SetModule;\n }\n}\n\nexport function Options(options) {\n return function OptionsTarget(target) {\n angular.merge(common.ng2nOptions, options);\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/options.js\n **/","import { common } from './../common';\n\n// The name of the Meteor.method is the same as the name of class method.\nexport function MeteorMethod(_options) {\n const options = angular.merge({}, common.ng2nOptions, _options);\n let spinner = options.spinner || {\n show: angular.noop,\n hide: angular.noop\n };\n const events = options.events || {\n beforeCall: angular.noop,\n afterCall: angular.noop\n };\n\n return function MeteorMethodTarget(target, name, descriptor) {\n // Create a method that calls the back-end\n descriptor.value = function () {\n const argv = Array.prototype.slice.call(arguments);\n const deferred = common.$q.defer();\n\n if (typeof spinner === 'string') {\n if (angular.injector(['ng', common.currentModule]).has(options.spinner)) {\n spinner = angular.injector(['ng', common.currentModule]).get(options.spinner);\n options.spinner = spinner;\n } else {\n throw new Error('Spinner \"' + spinner + '\" does not exist.');\n }\n }\n\n argv.unshift(name);\n argv.push(resolver);\n\n if (spinner) {\n spinner.show();\n }\n\n if (events.beforeCall) {\n events.beforeCall();\n }\n // Call optional events.beforeCall()\n\n // todo: should call Meteor after resolution of promise returned by beforeCall()\n Meteor.call.apply(this, argv);\n\n deferred.promise.finally(function () {\n spinner.hide();\n // Call optional events.afterCall()\n if (events.afterCall) {\n events.afterCall();\n }\n });\n\n return deferred.promise;\n\n function resolver(err, data) {\n if (err) {\n deferred.reject(err);\n } else {\n deferred.resolve(data);\n }\n }\n };\n\n return descriptor;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/meteor-method.js\n **/","// Turn on an indication to run $reactive(this).attach($scope) for the component's controller.\n// Uses with Angular-Meteor: http://angular-meteor.com, v1.3 and up only\nexport function MeteorReactive(target) {\n target.meteorReactive = true;\n return target;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/meteor-reactive.js\n **/","export function LocalInjectables(target) {\n target.localInjectables = true;\n return target;\n}\n\n\n\n/** WEBPACK FOOTER **\n ** ./src/api/local-injectables.js\n **/"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///dist/angular2-now.min.js","webpack:///webpack/bootstrap 86976f13ab5ca4720457","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/angular2-now.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/common.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/set-module.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/component.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/view.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/inject.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/utils.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/scope-shared.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/scope-new.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/controller.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/service.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/filter.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/bootstrap.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/state.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/options.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/meteor-method.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/meteor-reactive.js","webpack:///C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/local-injectables.js"],"names":["root","factory","exports","module","define","amd","this","modules","__webpack_require__","moduleId","installedModules","id","loaded","call","m","c","p","init","_common","common","isCordova","cordova","angularModule","angular","Object","defineProperty","value","_apiSetModule","_apiComponent","_apiScopeShared","_apiScopeNew","_apiView","_apiInject","_apiController","_apiService","_apiFilter","_apiBootstrap","_apiState","_apiOptions","_apiMeteorMethod","_apiMeteorReactive","_apiLocalInjectables","angular2now","SetModule","Component","ScopeShared","ScopeNew","View","Inject","Controller","Service","Filter","bootstrap","State","options","Options","MeteorMethod","MeteorReactive","LocalInjectables","Directive","Injectable","Meteor","window","undefined","currentModule","currentNameSpace","ng2nOptions","controllerAs","$q","injector","get","arguments","split","length","apply","selector","target","controller","ctrlInstance","toInjectAfter","_len","args","Array","_key","injectedDeps","meteorReactive","$reactive","$scope","attach","slice","$inject","localInjectables","forEach","index","$$init","concat","unshift","deferController","oldproto","prototype","construct","constructor","staticProps","i","link","scope","el","attr","controllers","$dependson","isClass","injectables","_inject","services","providers","_utils","camelCase","unCamelCase","template","templateUrl","transclude","directives","_view","requiredControllers","map","dep","test","push","filter","v","$injectDefer","ddo","bindToController","restrict","replace","require","hasOwnProperty","directive","er","Error","transcludeContent","s","match","toLowerCase","indexOf","deps","name","descriptor","injectable","TypeError","existingInjects","nameSpace","getService","serviceName","moduleName","_invokeQueue","serviceExists","a","b","toUpperCase","service","filterFunc","f","Function","bind","config","onReady","bootOnDocument","document","body","querySelector","bootModule","strictDi","element","on","ready","resolvedServiceName","doResolve","resolves","resolve","keys","$urlRouterProvider","$stateProvider","$locationProvider","localScope","defaultRoute","otherwise","url","html5Mode","userController","sdo","params","abstract","templateProvider","onEnter","onExit","parent","data","state","spinner","show","noop","hide","events","beforeCall","afterCall","noConflict","_setModule","merge","_options","resolver","err","deferred","reject","argv","defer","has","promise"],"mappings":"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","file":"dist/angular2-now.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"angular2now\"] = factory();\n\telse\n\t\troot[\"angular2now\"] = factory();\n})(this, function() {\nreturn \n\n\n/** WEBPACK FOOTER **\n ** webpack/universalModuleDefinition\n **/","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"angular2now\"] = factory();\n\telse\n\t\troot[\"angular2now\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _apiSetModule = __webpack_require__(2);\n\t\n\tvar _apiComponent = __webpack_require__(3);\n\t\n\tvar _apiScopeShared = __webpack_require__(7);\n\t\n\tvar _apiScopeNew = __webpack_require__(8);\n\t\n\tvar _apiView = __webpack_require__(4);\n\t\n\tvar _apiInject = __webpack_require__(5);\n\t\n\tvar _apiController = __webpack_require__(9);\n\t\n\tvar _apiService = __webpack_require__(10);\n\t\n\tvar _apiFilter = __webpack_require__(11);\n\t\n\tvar _apiBootstrap = __webpack_require__(12);\n\t\n\tvar _apiState = __webpack_require__(13);\n\t\n\tvar _apiOptions = __webpack_require__(14);\n\t\n\tvar _apiMeteorMethod = __webpack_require__(15);\n\t\n\tvar _apiMeteorReactive = __webpack_require__(16);\n\t\n\tvar _apiLocalInjectables = __webpack_require__(17);\n\t\n\tvar angular2now = {\n\t init: init,\n\t\n\t SetModule: _apiSetModule.SetModule,\n\t\n\t Component: _apiComponent.Component,\n\t ScopeShared: _apiScopeShared.ScopeShared,\n\t ScopeNew: _apiScopeNew.ScopeNew,\n\t View: _apiView.View,\n\t Inject: _apiInject.Inject,\n\t Controller: _apiController.Controller,\n\t Service: _apiService.Service,\n\t Filter: _apiFilter.Filter,\n\t bootstrap: _apiBootstrap.bootstrap,\n\t State: _apiState.State,\n\t\n\t options: _apiOptions.options,\n\t Options: _apiOptions.Options,\n\t\n\t MeteorMethod: _apiMeteorMethod.MeteorMethod,\n\t MeteorReactive: _apiMeteorReactive.MeteorReactive,\n\t LocalInjectables: _apiLocalInjectables.LocalInjectables,\n\t\n\t Directive: _apiComponent.Component,\n\t Injectable: _apiService.Service\n\t};\n\t\n\tfunction init() {\n\t _common.common.isCordova = typeof cordova !== 'undefined';\n\t _common.common.angularModule = angular.module;\n\t}\n\t\n\tif (typeof Meteor === 'undefined') {\n\t init();\n\t}\n\t\n\tif (typeof window !== 'undefined') {\n\t window.angular2now = angular2now;\n\t}\n\t\n\texports['default'] = angular2now;\n\tmodule.exports = exports['default'];\n\n/***/ },\n/* 1 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\tvar common = {\n\t angularModule: undefined,\n\t currentModule: undefined,\n\t currentNameSpace: undefined,\n\t isCordova: false,\n\t ng2nOptions: {\n\t currentModule: function currentModule() {\n\t return common.currentModule;\n\t }\n\t },\n\t controllerAs: undefined,\n\t $q: angular.injector(['ng']).get('$q')\n\t};\n\texports.common = common;\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.SetModule = SetModule;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tfunction SetModule() {\n\t /**\r\n\t * Name-spacing applies to provider names, not modules. Each module\r\n\t * has to have a unique name of it's own.\r\n\t *\r\n\t * A namespace may be specified like this:\r\n\t * SetModule('ftdesiree:helpers')\r\n\t * The namespace, once set, will remain in force until removed.\r\n\t * Remove the namespace like this:\r\n\t * angular.module(':helpers')\r\n\t **/\n\t _common.common.currentModule = arguments[0].split(':');\n\t\n\t if (_common.common.currentModule.length === 1) {\n\t // No namespace, just the module name\n\t _common.common.currentModule = _common.common.currentModule[0];\n\t } else {\n\t // Split off the name-space and module name\n\t _common.common.currentNameSpace = _common.common.currentModule[0];\n\t _common.common.currentModule = _common.common.currentModule[1];\n\t\n\t // Reassign arguments[0] without the namespace\n\t arguments[0] = _common.common.currentModule;\n\t }\n\t\n\t return _common.common.angularModule.apply(angular, arguments);\n\t}\n\n/***/ },\n/* 3 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.Component = Component;\n\t\n\tvar _view = __webpack_require__(4);\n\t\n\tvar _inject = __webpack_require__(5);\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _utils = __webpack_require__(6);\n\t\n\t// function Directive(options) {\n\t//\n\t// // A string passed is assumed to be the attribute name of the directive.\n\t// if (typeof options === 'string')\n\t// options = { selector: options };\n\t//\n\t// // Directives have shared scope by default (scope:undefined).\n\t// // Optionally they can have a new scope created (scope: true).\n\t// // If you require an isolate scope for your directive then\n\t// // pass \"scope: { ... }\" in options.\n\t// if (options && !options.hasOwnProperty('scope'))\n\t// angular.merge(options, { scope: undefined });\n\t//\n\t// return Component(options);\n\t// }\n\t\n\tfunction Component(options) {\n\t options = options || {};\n\t // Allow shorthand notation of just passing the selector name as a string\n\t if (typeof options === 'string') {\n\t options = {\n\t selector: options\n\t };\n\t }\n\t\n\t return function ComponentTarget(target) {\n\t var isClass = false;\n\t\n\t // Create a stub controller and substitute it for the target's constructor,\n\t // so that we can call the target's constructor later, within the link function.\n\t target = deferController(target, controller);\n\t\n\t // service injections, which could also have been specified by using @Inject\n\t if (options.injectables && options.injectables instanceof Array) {\n\t target = (0, _inject.Inject)(options.injectables)(target);\n\t }\n\t // injectables has been renamed to services\n\t if (options.services && options.services instanceof Array) {\n\t target = (0, _inject.Inject)(options.services)(target);\n\t }\n\t // injectables has been renamed to providers, actually, but also keeping\n\t // services in case anyone has used it already.\n\t if (options.providers && options.providers instanceof Array) {\n\t target = (0, _inject.Inject)(options.providers)(target);\n\t }\n\t\n\t // Selector name may be prefixed with a '.', in which case \"restrict: 'C'\" will be used\n\t options.selector = (0, _utils.camelCase)(options.selector || '') + '';\n\t if (options.selector[0] === '.') {\n\t isClass = true;\n\t options.selector = options.selector.slice(1);\n\t }\n\t // Save the unCamelCased selector name, so that bootstrap() can use it\n\t target.selector = (0, _utils.unCamelCase)(options.selector);\n\t\n\t // template options can be set with Component or with View\n\t // so, we run View on the passed in options first.\n\t if (options.template || options.templateUrl || options.transclude || options.directives) {\n\t (0, _view.View)(options)(target);\n\t }\n\t\n\t // The template(Url) can also be passed in from the @View decorator\n\t options.template = target.template || undefined;\n\t options.templateUrl = target.templateUrl || undefined;\n\t\n\t // Build the require array.\n\t // Our controller needs the same injections as the component's controller,\n\t // but with the \"@*\" injections renamed to \"$scope\". The link function will pass\n\t // the \"@*\" injections directly to the component controller.\n\t var requiredControllers = [options.selector];\n\t\n\t target.$inject = target.$inject || [];\n\t target.$inject = target.$inject.map(function (dep) {\n\t if (/^@[^]{0,2}/.test(dep[0])) {\n\t requiredControllers.push('?' + dep.slice(1));\n\t dep = 'delete-me';\n\t }\n\t return dep;\n\t });\n\t\n\t // Remove all the 'delete-me' entries\n\t target.$inject = target.$inject.filter(function (v) {\n\t return v !== 'delete-me';\n\t });\n\t\n\t if (target.meteorReactive) {\n\t // Prepend angular-meteor injectables\n\t target.$inject.unshift('$scope');\n\t target.$inject.unshift('$reactive');\n\t }\n\t\n\t // Remember the original $inject, as it will be needed in the link function.\n\t // In the link function we will receive any requested component controllers\n\t // which we will then inject into the arguments that we will pass to the\n\t // actual constructor of our component.\n\t target.$injectDefer = target.$inject || [];\n\t\n\t // Create the angular directive\n\t var ddo = {\n\t controllerAs: options.controllerAs || _common.common.controllerAs || target.controllerAs || options.selector,\n\t bindToController: typeof target.bindToController === 'boolean' ? target.bindToController : true,\n\t restrict: options.template + options.templateUrl ? 'EA' : isClass ? 'C' : 'A',\n\t scope: {},\n\t template: options.template,\n\t templateUrl: options.templateUrl,\n\t controller: target,\n\t replace: options.replace || false,\n\t transclude: /ng-transclude/i.test(options.template) || target.transclude,\n\t require: options.require || target.require || requiredControllers,\n\t link: options.link || target.link || link\n\t };\n\t\n\t // ddo's restrict\n\t if (options.restrict) {\n\t ddo.restrict = options.restrict;\n\t }\n\t // ddo's scope\n\t if (target.hasOwnProperty('scope')) {\n\t ddo.scope = target.scope;\n\t } else if (options.hasOwnProperty('scope')) {\n\t ddo.scope = options.scope;\n\t } else if (options['bind']) {\n\t ddo.scope = options['bind'];\n\t }\n\t\n\t try {\n\t angular.module(_common.common.currentModule).directive(options.selector, function () {\n\t return ddo;\n\t });\n\t } catch (er) {\n\t throw new Error('Does module \"' + _common.common.currentModule + '\" exist? You may need to use SetModule(\"youModuleName\").');\n\t }\n\t\n\t return target;\n\t\n\t // The stub controller below saves injected objects, so we can re-inject them\n\t // into the \"real\" controller when the link function executes.\n\t // This allows me to add stuff to the controller and it's \"this\", which is required\n\t // for some future functionality.\n\t function controller() {\n\t var ctrlInstance = this;\n\t var toInjectAfter = [];\n\t\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\t\n\t var injectedDeps = args;\n\t\n\t if (target.meteorReactive) {\n\t // Get injected angular-meteor objects\n\t var $reactive = injectedDeps[0];\n\t var $scope = injectedDeps[1];\n\t\n\t $reactive(ctrlInstance).attach($scope);\n\t\n\t toInjectAfter = injectedDeps.slice(0, 2);\n\t injectedDeps = injectedDeps.slice(2);\n\t target.$inject = target.$inject.slice(2);\n\t }\n\t if (target.localInjectables) {\n\t target.$inject.forEach(function (value, index) {\n\t ctrlInstance[value] = injectedDeps[index];\n\t });\n\t }\n\t // Call the original constructor, which is now called $$init, injecting all the\n\t // dependencies requested.\n\t this.$$init.apply(this, injectedDeps);\n\t\n\t if (toInjectAfter.length > 0) {\n\t target.$inject = ['$reactive', '$scope'].concat(target.$inject);\n\t injectedDeps.unshift(toInjectAfter[1]);\n\t injectedDeps.unshift(toInjectAfter[0]);\n\t }\n\t }\n\t // This function allows me to replace a component's \"real\" constructor with my own.\n\t // I do this, because I want to decorate the $scope and this before instantiating\n\t // the class's original controller. Also, this enables me to inject\n\t // other component's controllers into the constructor, the same way as you would\n\t // inject a service.\n\t // The component's original constructor is assigned to the init method of the\n\t // component's class, so that when it executes it will run in the original scope and\n\t // closures that it was defined in. It is the init method that is called within the\n\t // link function.\n\t function deferController(target, controller) {\n\t // Save the original prototype\n\t var oldproto = target.prototype;\n\t // Save the original constructor, so we can call it later\n\t var construct = target.prototype.constructor;\n\t // Save any static properties\n\t var staticProps = {};\n\t\n\t for (var i in target) {\n\t staticProps[i] = target[i];\n\t }\n\t // Assign a new constructor, which holds the injected deps.\n\t target = controller;\n\t // Restore the original prototype\n\t target.prototype = oldproto;\n\t // Restore saved static properties\n\t for (var i in staticProps) {\n\t target[i] = staticProps[i];\n\t }\n\t // Store the original constructor under the name $$init,\n\t // which we will call in the link function.\n\t target.prototype.$$init = construct;\n\t // Hide $$init from the user's casual inspections of the controller\n\t // Object.defineProperty(target.prototype, \"$$init\", {enumerable: false})\n\t return target;\n\t }\n\t\n\t function link(scope, el, attr, controllers) {\n\t // Create a service with the same name as the selector\n\t // That holds a reference to our component\n\t // angular.module(currentModule).value(camelCase(target.selector), controllers[0]);\n\t\n\t // Alternate syntax for the injection of other component's controllers\n\t if (controllers[0].$dependson) {\n\t controllers[0].$dependson.apply(controllers[0], controllers.slice(1));\n\t }\n\t }\n\t };\n\t}\n\n/***/ },\n/* 4 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.View = View;\n\t\n\tfunction View(options) {\n\t options = options || {};\n\t // Allow shorthand notation of just passing the templateUrl as a string\n\t if (typeof options === 'string') {\n\t options = {\n\t templateUrl: options\n\t };\n\t }\n\t\n\t // if (!options.template) options.template = undefined;\n\t\n\t return function ViewTarget(target) {\n\t target.template = options.template || target.template;\n\t target.templateUrl = options.templateUrl || target.templateUrl;\n\t\n\t // When a templateUrl is specified in options, then transclude can also be specified\n\t target.transclude = options.transclude || target.transclude;\n\t\n\t // directives is an array of child directive controllers (Classes)\n\t target.directives = options.directives || target.directives;\n\t\n\t // Check for the new tag and add ng-transclude to it, if not there.\n\t if (target.template) {\n\t target.template = transcludeContent(target.template);\n\t }\n\t\n\t return target;\n\t };\n\t\n\t // If template contains the new tag then add ng-transclude to it.\n\t // This will be picked up in @Component, where ddo.transclude will be set to true.\n\t function transcludeContent(template) {\n\t var s = (template || '').match(/\\]([^\\>]+)/i);\n\t\n\t if (s && s[1].toLowerCase().indexOf('ng-transclude') === -1) {\n\t template = template.replace(/\\\".\n\t // 4) Otherwise, we provide the following default template \"
\".\n\t // (**) The bootstrap component will be rendered by Angular directly and must not\n\t // be rendered again by ui-router, or you will literally see it twice.\n\t // todo: allow the user to specify their own div/span instead of forcing \"div(ui-view)\"\n\t template: (target.template || target.templateUrl) && !target.bootstrap && target.selector ? target.selector.replace(/^(.*)$/, '<$1>') : '
',\n\t\n\t // The option for dynamically setting a template based on local values\n\t // or injectable services\n\t templateProvider: options.templateProvider,\n\t\n\t // Do we need to resolve stuff? If so, then we also provide a controller to catch the resolved data.\n\t resolve: resolves,\n\t\n\t // A user supplied controller OR\n\t // An internally created proxy controller, if resolves were requested for a Component.\n\t controller: doResolve ? controller : undefined,\n\t\n\t // Optionally controllerAs can be specifically set for those situations,\n\t // when we use @State on a class and there is no @Component defined.\n\t controllerAs: _common.common.ng2nOptions.hasOwnProperty('controllerAs') && !target.hasOwnProperty('selector') ? _common.common.ng2nOptions.controllerAs : undefined,\n\t\n\t // onEnter and onExit events\n\t onEnter: options.onEnter,\n\t onExit: options.onExit,\n\t\n\t // Custom parent State\n\t parent: options.parent,\n\t\n\t // Custom data\n\t data: options.data\n\t };\n\t\n\t // sdo's template\n\t if (options.templateUrl || options.templateProvider) {\n\t sdo.template = undefined;\n\t } else if (options.template) {\n\t sdo.template = options.template;\n\t }\n\t\n\t // sdo's controller\n\t if (userController) {\n\t sdo.controller = userController;\n\t }\n\t\n\t // sdo's controllerAs\n\t if (target.controllerAs) {\n\t sdo.controllerAs = target.controllerAs;\n\t } else if (options.controllerAs) {\n\t sdo.controllerAs = options.controllerAs;\n\t }\n\t\n\t // Create the state\n\t $stateProvider.state(options.name, sdo);\n\t\n\t // When our automatic controller is used, we inject the resolved values into it,\n\t // along with the injectable service that will be used to publish them.\n\t // If the user supplied a controller than we do not inject anything\n\t if (doResolve) {\n\t deps.unshift(resolvedServiceName);\n\t\n\t controller.$inject = deps;\n\t }\n\t\n\t // Populate the published service with the resolved values\n\t function controller() {\n\t for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n\t args[_key] = arguments[_key];\n\t }\n\t\n\t // This is the service that we \"unshifted\" earlier\n\t var localScope = args[0];\n\t\n\t args = args.slice(1);\n\t\n\t // Now we copy the resolved values to the service.\n\t // This service can be injected into a component's constructor, for example.\n\t deps.slice(1).forEach(function (v, i) {\n\t localScope[v] = args[i];\n\t });\n\t }\n\t }]);\n\t return target;\n\t };\n\t}\n\n/***/ },\n/* 14 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.options = options;\n\texports.Options = Options;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\tvar _setModule = __webpack_require__(2);\n\t\n\t// Allow configuration of some angular2-now default settings\n\t// controllerAs: if provided, will user this string instead of component name, for example \"vm\"\n\t\n\tfunction options(options) {\n\t if (!options) {\n\t return _common.common.ng2nOptions;\n\t }\n\t\n\t if (typeof options.controllerAs !== 'undefined') {\n\t _common.common.controllerAs = options.controllerAs;\n\t }\n\t\n\t // Optional spinner object can be registered. It must expose show() and hide() methods.\n\t // The spinner will be activated before any I/O operations and deactivated once they complete.\n\t _common.common.ng2nOptions.spinner = options.spinner || {\n\t show: angular.noop,\n\t hide: angular.noop\n\t };\n\t\n\t // events expose beforeCall() and afterCall().\n\t // beforeCall() will be called before any I/O operations.\n\t // afterCall() will be called after any I/O operations have completed.\n\t _common.common.ng2nOptions.events = options.events || {\n\t beforeCall: angular.noop,\n\t afterCall: angular.noop\n\t };\n\t\n\t // The noConflict option allows us to control whether or not angular2-now\n\t // monkey-patches angular.module.\n\t // true = don't monkey patch.\n\t // false = (default for versions < 0.4.0) DO monkey patch angular.module\n\t // for backwards compatibility\n\t if (typeof options.noConflict !== 'undefined') {\n\t angular.module = options.noConflict ? _common.common.angularModule : _setModule.SetModule;\n\t }\n\t}\n\t\n\tfunction Options(options) {\n\t return function OptionsTarget(target) {\n\t angular.merge(_common.common.ng2nOptions, options);\n\t return target;\n\t };\n\t}\n\n/***/ },\n/* 15 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tObject.defineProperty(exports, '__esModule', {\n\t value: true\n\t});\n\texports.MeteorMethod = MeteorMethod;\n\t\n\tvar _common = __webpack_require__(1);\n\t\n\t// The name of the Meteor.method is the same as the name of class method.\n\t\n\tfunction MeteorMethod(_options) {\n\t var options = angular.merge({}, _common.common.ng2nOptions, _options);\n\t var spinner = options.spinner || {\n\t show: angular.noop,\n\t hide: angular.noop\n\t };\n\t var events = options.events || {\n\t beforeCall: angular.noop,\n\t afterCall: angular.noop\n\t };\n\t\n\t return function MeteorMethodTarget(target, name, descriptor) {\n\t // Create a method that calls the back-end\n\t descriptor.value = function () {\n\t var argv = Array.prototype.slice.call(arguments);\n\t var deferred = _common.common.$q.defer();\n\t\n\t if (typeof spinner === 'string') {\n\t if (angular.injector(['ng', _common.common.currentModule]).has(options.spinner)) {\n\t spinner = angular.injector(['ng', _common.common.currentModule]).get(options.spinner);\n\t options.spinner = spinner;\n\t } else {\n\t throw new Error('Spinner \"' + spinner + '\" does not exist.');\n\t }\n\t }\n\t\n\t argv.unshift(name);\n\t argv.push(resolver);\n\t\n\t if (spinner) {\n\t spinner.show();\n\t }\n\t\n\t if (events.beforeCall) {\n\t events.beforeCall();\n\t }\n\t // Call optional events.beforeCall()\n\t\n\t // todo: should call Meteor after resolution of promise returned by beforeCall()\n\t Meteor.call.apply(this, argv);\n\t\n\t deferred.promise['finally'](function () {\n\t spinner.hide();\n\t // Call optional events.afterCall()\n\t if (events.afterCall) {\n\t events.afterCall();\n\t }\n\t });\n\t\n\t return deferred.promise;\n\t\n\t function resolver(err, data) {\n\t if (err) {\n\t deferred.reject(err);\n\t } else {\n\t deferred.resolve(data);\n\t }\n\t }\n\t };\n\t\n\t return descriptor;\n\t };\n\t}\n\n/***/ },\n/* 16 */\n/***/ function(module, exports) {\n\n\t// Turn on an indication to run $reactive(this).attach($scope) for the component's controller.\n\t// Uses with Angular-Meteor: http://angular-meteor.com, v1.3 and up only\n\t\"use strict\";\n\t\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\texports.MeteorReactive = MeteorReactive;\n\t\n\tfunction MeteorReactive(target) {\n\t target.meteorReactive = true;\n\t return target;\n\t}\n\n/***/ },\n/* 17 */\n/***/ function(module, exports) {\n\n\t\"use strict\";\n\t\n\tObject.defineProperty(exports, \"__esModule\", {\n\t value: true\n\t});\n\texports.LocalInjectables = LocalInjectables;\n\t\n\tfunction LocalInjectables(target) {\n\t target.localInjectables = true;\n\t return target;\n\t}\n\n/***/ }\n/******/ ])\n});\n;\n\n\n/** WEBPACK FOOTER **\n ** dist/angular2-now.min.js\n **/"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId])\n \t\t\treturn installedModules[moduleId].exports;\n\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\texports: {},\n \t\t\tid: moduleId,\n \t\t\tloaded: false\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.loaded = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(0);\n\n\n\n/** WEBPACK FOOTER **\n ** webpack/bootstrap 86976f13ab5ca4720457\n **/","import { common } from './common';\r\nimport { SetModule } from './api/set-module';\r\nimport { Component } from './api/component';\r\nimport { ScopeShared } from './api/scope-shared';\r\nimport { ScopeNew } from './api/scope-new';\r\nimport { View } from './api/view';\r\nimport { Inject } from './api/inject';\r\nimport { Controller } from './api/controller';\r\nimport { Service } from './api/service';\r\nimport { Filter } from './api/filter';\r\nimport { bootstrap } from './api/bootstrap';\r\nimport { State } from './api/state';\r\nimport { options, Options } from './api/options';\r\nimport { MeteorMethod } from './api/meteor-method';\r\nimport { MeteorReactive } from './api/meteor-reactive';\r\nimport { LocalInjectables } from './api/local-injectables';\r\n\r\nconst angular2now = {\r\n init,\r\n\r\n SetModule,\r\n\r\n Component,\r\n ScopeShared,\r\n ScopeNew,\r\n View,\r\n Inject,\r\n Controller,\r\n Service,\r\n Filter,\r\n bootstrap,\r\n State,\r\n\r\n options,\r\n Options,\r\n\r\n MeteorMethod,\r\n MeteorReactive,\r\n LocalInjectables,\r\n\r\n Directive: Component,\r\n Injectable: Service\r\n};\r\n\r\nfunction init() {\r\n common.isCordova = typeof cordova !== 'undefined';\r\n common.angularModule = angular.module;\r\n}\r\n\r\nif (typeof Meteor === 'undefined') {\r\n init();\r\n}\r\n\r\nif (typeof window !== 'undefined') {\r\n window.angular2now = angular2now;\r\n}\r\n\r\nexport default angular2now;\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/angular2-now.js\n **/","export const common = {\r\n angularModule: undefined,\r\n currentModule: undefined,\r\n currentNameSpace: undefined,\r\n isCordova: false,\r\n ng2nOptions: {\r\n currentModule() {\r\n return common.currentModule;\r\n }\r\n },\r\n controllerAs: undefined,\r\n $q: angular.injector(['ng']).get('$q')\r\n};\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/common.js\n **/","import { common } from './../common';\r\n\r\nexport function SetModule() {\r\n /**\r\n * Name-spacing applies to provider names, not modules. Each module\r\n * has to have a unique name of it's own.\r\n *\r\n * A namespace may be specified like this:\r\n * SetModule('ftdesiree:helpers')\r\n * The namespace, once set, will remain in force until removed.\r\n * Remove the namespace like this:\r\n * angular.module(':helpers')\r\n **/\r\n common.currentModule = arguments[0].split(':');\r\n\r\n if (common.currentModule.length === 1) {\r\n // No namespace, just the module name\r\n common.currentModule = common.currentModule[0];\r\n } else {\r\n // Split off the name-space and module name\r\n common.currentNameSpace = common.currentModule[0];\r\n common.currentModule = common.currentModule[1];\r\n\r\n // Reassign arguments[0] without the namespace\r\n arguments[0] = common.currentModule;\r\n }\r\n\r\n return common.angularModule.apply(angular, arguments);\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/set-module.js\n **/","import { View } from './view';\nimport { Inject } from './inject';\nimport { common } from './../common';\nimport { camelCase, unCamelCase } from './../utils';\n\n// function Directive(options) {\n//\n// // A string passed is assumed to be the attribute name of the directive.\n// if (typeof options === 'string')\n// options = { selector: options };\n//\n// // Directives have shared scope by default (scope:undefined).\n// // Optionally they can have a new scope created (scope: true).\n// // If you require an isolate scope for your directive then\n// // pass \"scope: { ... }\" in options.\n// if (options && !options.hasOwnProperty('scope'))\n// angular.merge(options, { scope: undefined });\n//\n// return Component(options);\n// }\n\nexport function Component(options) {\n options = options || {};\n // Allow shorthand notation of just passing the selector name as a string\n if (typeof options === 'string') {\n options = {\n selector: options\n };\n }\n\n return function ComponentTarget(target) {\n let isClass = false;\n\n // Create a stub controller and substitute it for the target's constructor,\n // so that we can call the target's constructor later, within the link function.\n target = deferController(target, controller);\n\n // service injections, which could also have been specified by using @Inject\n if (options.injectables && options.injectables instanceof Array) {\n target = Inject(options.injectables)(target);\n }\n // injectables has been renamed to services\n if (options.services && options.services instanceof Array) {\n target = Inject(options.services)(target);\n }\n // injectables has been renamed to providers, actually, but also keeping\n // services in case anyone has used it already.\n if (options.providers && options.providers instanceof Array) {\n target = Inject(options.providers)(target);\n }\n\n // Selector name may be prefixed with a '.', in which case \"restrict: 'C'\" will be used\n options.selector = camelCase(options.selector || '') + '';\n if (options.selector[0] === '.') {\n isClass = true;\n options.selector = options.selector.slice(1);\n }\n // Save the unCamelCased selector name, so that bootstrap() can use it\n target.selector = unCamelCase(options.selector);\n\n // template options can be set with Component or with View\n // so, we run View on the passed in options first.\n if (options.template || options.templateUrl || options.transclude || options.directives) {\n View(options)(target);\n }\n\n // The template(Url) can also be passed in from the @View decorator\n options.template = target.template || undefined;\n options.templateUrl = target.templateUrl || undefined;\n\n // Build the require array.\n // Our controller needs the same injections as the component's controller,\n // but with the \"@*\" injections renamed to \"$scope\". The link function will pass\n // the \"@*\" injections directly to the component controller.\n const requiredControllers = [options.selector];\n\n target.$inject = target.$inject || [];\n target.$inject = target.$inject.map((dep) => {\n if (/^@[^]{0,2}/.test(dep[0])) {\n requiredControllers.push('?' + dep.slice(1));\n dep = 'delete-me';\n }\n return dep;\n });\n\n // Remove all the 'delete-me' entries\n target.$inject = target.$inject.filter((v) => v !== 'delete-me');\n\n if (target.meteorReactive) {\n // Prepend angular-meteor injectables\n target.$inject.unshift('$scope');\n target.$inject.unshift('$reactive');\n }\n\n // Remember the original $inject, as it will be needed in the link function.\n // In the link function we will receive any requested component controllers\n // which we will then inject into the arguments that we will pass to the\n // actual constructor of our component.\n target.$injectDefer = target.$inject || [];\n\n // Create the angular directive\n const ddo = {\n controllerAs: options.controllerAs || common.controllerAs || target.controllerAs || options.selector,\n bindToController: typeof target.bindToController === 'boolean' ? target.bindToController : true,\n restrict: (options.template + options.templateUrl) ? 'EA' : isClass ? 'C' : 'A',\n scope: {},\n template: options.template,\n templateUrl: options.templateUrl,\n controller: target,\n replace: options.replace || false,\n transclude: /ng-transclude/i.test(options.template) || target.transclude,\n require: options.require || target.require || requiredControllers,\n link: options.link || target.link || link\n };\n\n // ddo's restrict\n if (options.restrict) {\n ddo.restrict = options.restrict;\n }\n // ddo's scope\n if (target.hasOwnProperty('scope')) {\n ddo.scope = target.scope;\n } else if (options.hasOwnProperty('scope')) {\n ddo.scope = options.scope;\n } else if (options['bind']) {\n ddo.scope = options['bind'];\n }\n\n\n try {\n angular.module(common.currentModule)\n .directive(options.selector, () => ddo);\n } catch (er) {\n throw new Error('Does module \"' + common.currentModule + '\" exist? You may need to use SetModule(\"youModuleName\").');\n }\n\n return target;\n\n // The stub controller below saves injected objects, so we can re-inject them\n // into the \"real\" controller when the link function executes.\n // This allows me to add stuff to the controller and it's \"this\", which is required\n // for some future functionality.\n function controller(...args) {\n const ctrlInstance = this;\n let toInjectAfter = [];\n let injectedDeps = args;\n\n if (target.meteorReactive) {\n // Get injected angular-meteor objects\n const $reactive = injectedDeps[0];\n const $scope = injectedDeps[1];\n\n $reactive(ctrlInstance).attach($scope);\n\n toInjectAfter = injectedDeps.slice(0, 2);\n injectedDeps = injectedDeps.slice(2);\n target.$inject = target.$inject.slice(2);\n }\n if (target.localInjectables) {\n target.$inject.forEach((value, index) => {\n ctrlInstance[value] = injectedDeps[index];\n });\n }\n // Call the original constructor, which is now called $$init, injecting all the\n // dependencies requested.\n this.$$init.apply(this, injectedDeps);\n\n if (toInjectAfter.length > 0) {\n target.$inject = ['$reactive', '$scope'].concat(target.$inject);\n injectedDeps.unshift(toInjectAfter[1]);\n injectedDeps.unshift(toInjectAfter[0]);\n }\n }\n // This function allows me to replace a component's \"real\" constructor with my own.\n // I do this, because I want to decorate the $scope and this before instantiating\n // the class's original controller. Also, this enables me to inject\n // other component's controllers into the constructor, the same way as you would\n // inject a service.\n // The component's original constructor is assigned to the init method of the\n // component's class, so that when it executes it will run in the original scope and\n // closures that it was defined in. It is the init method that is called within the\n // link function.\n function deferController(target, controller) {\n // Save the original prototype\n const oldproto = target.prototype;\n // Save the original constructor, so we can call it later\n const construct = target.prototype.constructor;\n // Save any static properties\n const staticProps = {};\n\n for (const i in target) {\n staticProps[i] = target[i];\n }\n // Assign a new constructor, which holds the injected deps.\n target = controller;\n // Restore the original prototype\n target.prototype = oldproto;\n // Restore saved static properties\n for (const i in staticProps) {\n target[i] = staticProps[i];\n }\n // Store the original constructor under the name $$init,\n // which we will call in the link function.\n target.prototype.$$init = construct;\n // Hide $$init from the user's casual inspections of the controller\n // Object.defineProperty(target.prototype, \"$$init\", {enumerable: false})\n return target;\n }\n\n function link(scope, el, attr, controllers) {\n // Create a service with the same name as the selector\n // That holds a reference to our component\n // angular.module(currentModule).value(camelCase(target.selector), controllers[0]);\n\n // Alternate syntax for the injection of other component's controllers\n if (controllers[0].$dependson) {\n controllers[0].$dependson.apply(controllers[0], controllers.slice(1));\n }\n }\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/component.js\n **/","export function View(options) {\r\n options = options || {};\r\n // Allow shorthand notation of just passing the templateUrl as a string\r\n if (typeof options === 'string') {\r\n options = {\r\n templateUrl: options\r\n };\r\n }\r\n\r\n // if (!options.template) options.template = undefined;\r\n\r\n return function ViewTarget(target) {\r\n target.template = options.template || target.template;\r\n target.templateUrl = options.templateUrl || target.templateUrl;\r\n\r\n // When a templateUrl is specified in options, then transclude can also be specified\r\n target.transclude = options.transclude || target.transclude;\r\n\r\n // directives is an array of child directive controllers (Classes)\r\n target.directives = options.directives || target.directives;\r\n\r\n // Check for the new tag and add ng-transclude to it, if not there.\r\n if (target.template) {\r\n target.template = transcludeContent(target.template);\r\n }\r\n\r\n return target;\r\n };\r\n\r\n // If template contains the new tag then add ng-transclude to it.\r\n // This will be picked up in @Component, where ddo.transclude will be set to true.\r\n function transcludeContent(template) {\r\n const s = (template || '').match(/\\]([^\\>]+)/i);\r\n\r\n if (s && s[1].toLowerCase().indexOf('ng-transclude') === -1) {\r\n template = template.replace(/\\ {\r\n // Namespace any injectables without an existing nameSpace prefix and also\r\n // not already prefixed with '$', '@' or '@^'.\r\n if (dep[0] !== '$' && dep[0] !== '@' && dep.indexOf('_') === -1) {\r\n dep = nameSpace(dep);\r\n }\r\n\r\n if (injectable.$inject.indexOf(dep) === -1) {\r\n injectable.$inject.push(dep);\r\n }\r\n });\r\n\r\n if (existingInjects) {\r\n injectable.$inject = injectable.$inject.concat(existingInjects);\r\n }\r\n\r\n return descriptor || target;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/inject.js\n **/","import { common } from './common';\r\n\r\n// Create a new name from the concatenation of\r\n// the currentNameSpace and the name argument\r\nexport function nameSpace(name) {\r\n return common.currentNameSpace ? common.currentNameSpace + '_' + name : name;\r\n}\r\n\r\nexport function getService(serviceName, moduleName) {\r\n return angular.module(moduleName || common.currentModule)\r\n ._invokeQueue\r\n .filter((v) => v[0] === '$provide' && v[2][0] === serviceName)[0];\r\n}\r\n\r\n// Does a provider with a specific name exist in the current module\r\nexport function serviceExists(serviceName) {\r\n return !!getService(serviceName);\r\n}\r\n\r\nexport function camelCase(s) {\r\n return s.replace(/-(.)/g, (a, b) => b.toUpperCase());\r\n}\r\n\r\nexport function unCamelCase(c) {\r\n const s = c.replace(/([A-Z])/g, '-$1')\r\n .replace(/--/g, '-')\r\n .toLowerCase();\r\n\r\n if (s[0] === '-') {\r\n return s.slice(1);\r\n }\r\n\r\n return s;\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/utils.js\n **/","// Cancels out the automatic creation of isolate scope for the directive,\r\n// because Angular 1.x allows only one isolate scope directive per element.\r\n// This is useful when actually creating directives, which add behaviour\r\n// to an existing element, as opposed to components which are stand alone\r\n// bits of html and behaviour.\r\n// The other way to do this is to pass \"scope: undefined\" to @Component.\r\nexport function ScopeShared(target) {\r\n target.scope = undefined;\r\n return target;\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/scope-shared.js\n **/","// Requests a new scope to be created when the directive is created.\r\n// The other way to do this is to pass \"scope: true\" to @Component.\r\nexport function ScopeNew(target) {\r\n target.scope = true;\r\n return target;\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/scope-new.js\n **/","import { common } from './../common';\r\nimport { nameSpace } from './../utils';\r\n\r\nexport function Controller(options) {\r\n options = options || {};\r\n // Allow shorthand notation of just passing the name as a string\r\n if (typeof options === 'string') {\r\n options = { name: options };\r\n }\r\n\r\n return function ControllerTarget(target) {\r\n angular.module(common.currentModule)\r\n .controller(nameSpace(options.name), target);\r\n return target;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/controller.js\n **/","import { common } from './../common';\r\nimport { nameSpace } from './../utils';\r\n\r\nexport function Service(options) {\r\n options = options || {};\r\n // Allow shorthand notation of just passing the name as a string\r\n if (typeof options === 'string') {\r\n options = {\r\n name: options\r\n };\r\n }\r\n\r\n return function ServiceTarget(target) {\r\n angular.module(common.currentModule)\r\n .service(nameSpace(options.name), target);\r\n // .factory(options.name, function () { return new target })\r\n\r\n return target;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/service.js\n **/","import { common } from './../common';\r\nimport { nameSpace } from './../utils';\r\n\r\nexport function Filter(options) {\r\n options = options || {};\r\n // Allow shorthand notation of just passing the name as a string\r\n if (typeof options === 'string') {\r\n options = {\r\n name: options\r\n };\r\n }\r\n\r\n return function FilterTarget(target) {\r\n filterFunc.$inject = target.$inject;\r\n\r\n angular.module(common.currentModule)\r\n .filter(nameSpace(options.name), filterFunc);\r\n\r\n function filterFunc() {\r\n const args = Array.prototype.slice.call(arguments);\r\n const f = new(Function.prototype.bind.apply(target, [null].concat(args)));\r\n\r\n return f;\r\n }\r\n\r\n return target;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/filter.js\n **/","import { common } from './../common';\r\n\r\n/**\r\n * Bootstraps the Angular 1.x app.\r\n *\r\n * @param ?target undefined | string | class\r\n * undefined: bootstraps on document and the current angular module\r\n * string: will use document.querySelector to find the element by this string\r\n * class: bootstraps on the component defined on this class, looks for selector\r\n *\r\n * @param ?config angular.bootstrap() config object, see AngularJS doco\r\n */\r\nexport function bootstrap(target, config) {\r\n let bootOnDocument = false;\r\n\r\n if (!target || (target && !target.selector && typeof target === 'function')) {\r\n target = {\r\n selector: common.currentModule\r\n };\r\n bootOnDocument = true;\r\n }\r\n\r\n // Allow string shortcut for target.selector. Can be the name of any HTML tag.\r\n if (typeof target === 'string') {\r\n target = {\r\n selector: target\r\n };\r\n }\r\n\r\n // Mark this class as a bootstrap component. This allows @State\r\n // to handle it correctly.\r\n target.bootstrap = true;\r\n\r\n const bootModule = target.selector || common.currentModule;\r\n\r\n if (bootModule !== common.currentModule) {\r\n angular.module(bootModule);\r\n }\r\n\r\n if (!config) {\r\n config = {\r\n strictDi: false\r\n };\r\n }\r\n\r\n if (common.isCordova) {\r\n angular.element(document).on('deviceready', onReady);\r\n } else {\r\n angular.element(document).ready(onReady);\r\n }\r\n\r\n function onReady() {\r\n let el;\r\n\r\n if (!bootOnDocument) {\r\n // Find the component's element\r\n el = document.querySelector(target.selector);\r\n } else {\r\n // Or use document, if user passed no arguments\r\n el = document.body;\r\n }\r\n\r\n angular.bootstrap(el, [bootModule], config);\r\n }\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/bootstrap.js\n **/","import { common } from './../common';\nimport { serviceExists, nameSpace, camelCase } from './../utils';\n\n/**\n * State can be used to annotate either a Component or a class and assign\n * a ui-router state to it.\n *\n * @param options literal object\n * name: name of the state\n * url: url associated with this state\n * template: template\n * templateUrl: templateUrl\n * templateProvider: templateProvider\n * defaultRoute: truthy = .otherwise(url)\n * string = .otherwise(defaultRoute)\n * resolve: Literal object, see ui-router resolve\n * abstract: true/false\n * params: Literal object, see ui-router doco\n * parent: Define a custom parent state\n * controller: A controller is automatically assigned, but if you need\n * finer control then you can assign your own controller\n * controllerAs: Specify ControllerAs for cases when there is no\n * @Component used\n *\n * If a class is annotated then it is assumed to be the controller and\n * the state name will be used as the name of the injectable service\n * that will hold any resolves requested.\n *\n * When a component is annotated and resolves requested, then the component's\n * selector name is used as the name of the injectable service that holds\n * their values.\n */\nexport function State(options) {\n if (!options || !(options instanceof Object) || options.name === undefined) {\n throw new Error('@State: Valid options are: name, url, defaultRoute, template, templateUrl, templateProvider, resolve, abstract, parent, data.');\n }\n\n return function StateTarget(target) {\n let deps;\n const resolvedServiceName = nameSpace(camelCase(target.selector || (options.name + '').replace('.', '-')));\n\n // Indicates if there is anything to resolve\n let doResolve = false;\n\n // Values to resolve can either be supplied in options.resolve or as a static method on the\n // component's class\n const resolves = options.resolve || target.resolve;\n\n // Is there a resolve block?\n if (resolves && resolves instanceof Object) {\n deps = Object.keys(resolves);\n\n if (deps.length) {\n doResolve = true;\n }\n }\n\n // Create an injectable value service to share the resolved values with the controller\n // The service bears the same name as the component's camelCased selector name.\n if (doResolve) {\n if (!serviceExists(resolvedServiceName)) {\n angular.module(common.currentModule).value(resolvedServiceName, {});\n }\n }\n\n // Configure the state\n angular.module(common.currentModule)\n .config(['$urlRouterProvider', '$stateProvider', '$locationProvider',\n function ($urlRouterProvider, $stateProvider, $locationProvider) {\n // Activate this state, if options.defaultRoute = true.\n // If you don't want this then don't set options.defaultRoute to true\n // and, instead, use $state.go inside the constructor to active a state.\n // You can also pass a string to defaultRoute, which will become the default route.\n if (options.defaultRoute) {\n $urlRouterProvider.otherwise((typeof options.defaultRoute === 'string') ? options.defaultRoute : options.url);\n }\n\n // Optionally configure html5Mode\n if (!(typeof options.html5Mode === 'undefined')) {\n $locationProvider.html5Mode(options.html5Mode);\n }\n\n // The user can supply a controller through a parameter in options\n // or the class itself can be used as the controller if no component is annotated.\n const userController = options.controller || (!target.selector ? target : undefined);\n\n // Also, de-namespace the resolve injectables for ui-router to inject correctly\n if (userController && userController.$inject && userController.$inject.length && deps && deps.length) {\n deps.forEach(function (dep) {\n const i = userController.$inject.indexOf(common.currentNameSpace + '_' + dep);\n\n if (i !== -1) {\n userController.$inject[i] = dep;\n }\n });\n }\n\n\n // This is the state definition object\n const sdo = {\n url: options.url,\n\n // Default values for URL parameters can be configured here.\n // ALso, parameters that do not appear in the URL can be configured here.\n params: options.params,\n\n // The State applied to a bootstrap component can be abstract,\n // if you don't want that state to be able to activate.\n abstract: options.abstract,\n\n templateUrl: options.templateUrl,\n\n // This is the \"inline\" template, as opposed to the templateUrl.\n // 1) If either options.templateUrl or options.templateProvider is specified then\n // template will be set to undefined.\n // 2) If options.template is provided then it will be used.\n // 3) Otherwise, if this is a component, but not the bootstrap(**) component,\n // then we use it's selector to create the inline template \"\".\n // 4) Otherwise, we provide the following default template \"
\".\n // (**) The bootstrap component will be rendered by Angular directly and must not\n // be rendered again by ui-router, or you will literally see it twice.\n // todo: allow the user to specify their own div/span instead of forcing \"div(ui-view)\"\n template: (target.template || target.templateUrl) && !target.bootstrap && target.selector ? target.selector.replace(/^(.*)$/, '<$1>') : '
',\n\n // The option for dynamically setting a template based on local values\n // or injectable services\n templateProvider: options.templateProvider,\n\n // Do we need to resolve stuff? If so, then we also provide a controller to catch the resolved data.\n resolve: resolves,\n\n // A user supplied controller OR\n // An internally created proxy controller, if resolves were requested for a Component.\n controller: doResolve ? controller : undefined,\n\n // Optionally controllerAs can be specifically set for those situations,\n // when we use @State on a class and there is no @Component defined.\n controllerAs: common.ng2nOptions.hasOwnProperty('controllerAs') && !target.hasOwnProperty('selector') ? common.ng2nOptions.controllerAs : undefined,\n\n // onEnter and onExit events\n onEnter: options.onEnter,\n onExit: options.onExit,\n\n // Custom parent State\n parent: options.parent,\n\n // Custom data\n data: options.data\n };\n\n // sdo's template\n if (options.templateUrl || options.templateProvider) {\n sdo.template = undefined;\n } else if (options.template) {\n sdo.template = options.template;\n }\n\n // sdo's controller\n if (userController) {\n sdo.controller = userController;\n }\n\n // sdo's controllerAs\n if (target.controllerAs) {\n sdo.controllerAs = target.controllerAs;\n } else if (options.controllerAs) {\n sdo.controllerAs = options.controllerAs;\n }\n\n // Create the state\n $stateProvider.state(options.name, sdo);\n\n // When our automatic controller is used, we inject the resolved values into it,\n // along with the injectable service that will be used to publish them.\n // If the user supplied a controller than we do not inject anything\n if (doResolve) {\n deps.unshift(resolvedServiceName);\n\n controller.$inject = deps;\n }\n\n // Populate the published service with the resolved values\n function controller(...args) {\n // This is the service that we \"unshifted\" earlier\n const localScope = args[0];\n\n args = args.slice(1);\n\n // Now we copy the resolved values to the service.\n // This service can be injected into a component's constructor, for example.\n deps.slice(1).forEach((v, i) => {\n localScope[v] = args[i];\n });\n }\n }\n ]);\n return target;\n };\n}\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/state.js\n **/","import { common } from './../common';\r\nimport { SetModule } from './set-module';\r\n\r\n// Allow configuration of some angular2-now default settings\r\n// controllerAs: if provided, will user this string instead of component name, for example \"vm\"\r\nexport function options(options) {\r\n if (!options) {\r\n return common.ng2nOptions;\r\n }\r\n\r\n if (typeof options.controllerAs !== 'undefined') {\r\n common.controllerAs = options.controllerAs;\r\n }\r\n\r\n // Optional spinner object can be registered. It must expose show() and hide() methods.\r\n // The spinner will be activated before any I/O operations and deactivated once they complete.\r\n common.ng2nOptions.spinner = options.spinner || {\r\n show: angular.noop,\r\n hide: angular.noop\r\n };\r\n\r\n // events expose beforeCall() and afterCall().\r\n // beforeCall() will be called before any I/O operations.\r\n // afterCall() will be called after any I/O operations have completed.\r\n common.ng2nOptions.events = options.events || {\r\n beforeCall: angular.noop,\r\n afterCall: angular.noop\r\n };\r\n\r\n // The noConflict option allows us to control whether or not angular2-now\r\n // monkey-patches angular.module.\r\n // true = don't monkey patch.\r\n // false = (default for versions < 0.4.0) DO monkey patch angular.module\r\n // for backwards compatibility\r\n if (typeof options.noConflict !== 'undefined') {\r\n angular.module = options.noConflict ? common.angularModule : SetModule;\r\n }\r\n}\r\n\r\nexport function Options(options) {\r\n return function OptionsTarget(target) {\r\n angular.merge(common.ng2nOptions, options);\r\n return target;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/options.js\n **/","import { common } from './../common';\r\n\r\n// The name of the Meteor.method is the same as the name of class method.\r\nexport function MeteorMethod(_options) {\r\n const options = angular.merge({}, common.ng2nOptions, _options);\r\n let spinner = options.spinner || {\r\n show: angular.noop,\r\n hide: angular.noop\r\n };\r\n const events = options.events || {\r\n beforeCall: angular.noop,\r\n afterCall: angular.noop\r\n };\r\n\r\n return function MeteorMethodTarget(target, name, descriptor) {\r\n // Create a method that calls the back-end\r\n descriptor.value = function () {\r\n const argv = Array.prototype.slice.call(arguments);\r\n const deferred = common.$q.defer();\r\n\r\n if (typeof spinner === 'string') {\r\n if (angular.injector(['ng', common.currentModule]).has(options.spinner)) {\r\n spinner = angular.injector(['ng', common.currentModule]).get(options.spinner);\r\n options.spinner = spinner;\r\n } else {\r\n throw new Error('Spinner \"' + spinner + '\" does not exist.');\r\n }\r\n }\r\n\r\n argv.unshift(name);\r\n argv.push(resolver);\r\n\r\n if (spinner) {\r\n spinner.show();\r\n }\r\n\r\n if (events.beforeCall) {\r\n events.beforeCall();\r\n }\r\n // Call optional events.beforeCall()\r\n\r\n // todo: should call Meteor after resolution of promise returned by beforeCall()\r\n Meteor.call.apply(this, argv);\r\n\r\n deferred.promise.finally(function () {\r\n spinner.hide();\r\n // Call optional events.afterCall()\r\n if (events.afterCall) {\r\n events.afterCall();\r\n }\r\n });\r\n\r\n return deferred.promise;\r\n\r\n function resolver(err, data) {\r\n if (err) {\r\n deferred.reject(err);\r\n } else {\r\n deferred.resolve(data);\r\n }\r\n }\r\n };\r\n\r\n return descriptor;\r\n };\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/meteor-method.js\n **/","// Turn on an indication to run $reactive(this).attach($scope) for the component's controller.\r\n// Uses with Angular-Meteor: http://angular-meteor.com, v1.3 and up only\r\nexport function MeteorReactive(target) {\r\n target.meteorReactive = true;\r\n return target;\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/meteor-reactive.js\n **/","export function LocalInjectables(target) {\r\n target.localInjectables = true;\r\n return target;\r\n}\r\n\n\n\n/** WEBPACK FOOTER **\n ** C:/Users/mYsPC/Dropbox/Repozytoria/Forki/angular2-now/src/api/local-injectables.js\n **/"],"sourceRoot":""} \ No newline at end of file diff --git a/package.js b/package.js index c97e6c9..223efc6 100644 --- a/package.js +++ b/package.js @@ -1,13 +1,13 @@ Package.describe({ name: 'pbastowski:angular2-now', - version: '1.1.5', + version: '1.1.6', summary: 'Angular 2 @Component syntax for Meteor 1.2 and AngularJS', git: 'https://github.com/pbastowski/angular2-now.git', documentation: 'README.md' }); Npm.depends({ - 'angular2-now': '1.1.5' + 'angular2-now': '1.1.6' }); Package.onUse(function(api) { diff --git a/package.json b/package.json index a056588..c3d63b0 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "angular2-now", - "version": "1.1.5", + "version": "1.1.6", "description": "Angular 2 component syntax for Angular 1 apps", "main": "dist/angular2-now.js", "scripts": {