@ardimedia/angular-portal-azure 0.2.274 → 0.2.275

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ AngularPortalBladeController.$inject = ['angularportalazure.portalService'];
4
+ function AngularPortalBladeController(portalService) {
5
+ var _this = this;
6
+ this.$onInit = function () {
7
+ _this.close = function () { };
8
+ };
9
+ }
10
+ exports.default = {
11
+ transclude: true,
12
+ templateUrl: '/node_modules/@ardimedia/angular-portal-azure/directives/blade/blade.html',
13
+ controller: AngularPortalBladeController,
14
+ bindings: {
15
+ vm: '='
16
+ }
17
+ };
@@ -1,3 +1,3 @@
1
- # DirtyFlag
2
-
3
- // http://blogs.msdn.com/b/laurieatkinson/archive/2014/08/23/implementing-a-save-warning-in-an-angular-spa.aspx
1
+ # DirtyFlag
2
+
3
+ // http://blogs.msdn.com/b/laurieatkinson/archive/2014/08/23/implementing-a-save-warning-in-an-angular-spa.aspx
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = {
4
+ transclude: true,
5
+ templateUrl: '/node_modules/@ardimedia/angular-portal-azure/directives/bladegrid/bladegrid.html',
6
+ controller: function () { },
7
+ bindings: {
8
+ vm: '='
9
+ }
10
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var areablades_1 = require("../../domain/areablades");
4
+ var areanotification_1 = require("../../domain/areanotification");
5
+ AngularPortalHomeController.$inject = ['$scope', 'angularportalazure.portalService'];
6
+ function AngularPortalHomeController($scope, portalService) {
7
+ this.$onInit = function () {
8
+ portalService.areaNotification = new areanotification_1.AreaNotification($scope, portalService);
9
+ portalService.areaBlades = new areablades_1.AreaBlades($scope, portalService);
10
+ };
11
+ }
12
+ exports.default = {
13
+ templateUrl: '/node_modules/@ardimedia/angular-portal-azure/directives/home/home.html',
14
+ controller: AngularPortalHomeController,
15
+ bindings: {
16
+ vm: '='
17
+ }
18
+ };
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = {
4
+ transclude: true,
5
+ templateUrl: '/node_modules/@ardimedia/angular-portal-azure/directives/nav/nav.html',
6
+ controller: function () { },
7
+ bindings: {
8
+ vm: '='
9
+ }
10
+ };
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var PortalService = (function () {
4
+ function PortalService($injector) {
5
+ // #endregion
6
+ // #region Properties
7
+ this.parameter = { action: 'none', itemId: 0 };
8
+ this.$injector = $injector;
9
+ this.$http = $injector.get('$http');
10
+ this.$httpBackend = $injector.get('$httpBackend');
11
+ this.$q = $injector.get('$q');
12
+ this.$rootScope = $injector.get('$rootScope');
13
+ this.$window = $injector.get('$window');
14
+ this.$analytics = $injector.get('$analytics');
15
+ this.$timeout = $injector.get('$timeout');
16
+ this.$translate = $injector.get('$translate');
17
+ this.ngDialog = $injector.get('ngDialog');
18
+ }
19
+ // #region Constructor
20
+ PortalService.$inject = ['$injector'];
21
+ return PortalService;
22
+ }());
23
+ exports.PortalService = PortalService;
@@ -0,0 +1,205 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
6
+ return function (d, b) {
7
+ extendStatics(d, b);
8
+ function __() { this.constructor = d; }
9
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
10
+ };
11
+ })();
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ var blade_1 = require("./blade");
14
+ var usercontrolbase_1 = require("./usercontrolbase");
15
+ var AreaBlades = (function (_super) {
16
+ __extends(AreaBlades, _super);
17
+ function AreaBlades($scope, portalService) {
18
+ var _this = _super.call(this, $scope, portalService) || this;
19
+ _this.blades = new Array();
20
+ // this.areaBlades = this.portalService.$window.document.getElementById('apa-blade-area');
21
+ _this.portalScroll = _this.portalService.$window.document.getElementById('apa-portal-scroll');
22
+ _this.setupAddBladeListener();
23
+ _this.setupShowHideNotificationAreaListener();
24
+ _this.setupWindowResizeListener(function () { _this.setPortalScrollCss(); });
25
+ return _this;
26
+ }
27
+ // #endregion
28
+ // #region Methods
29
+ AreaBlades.prototype.raiseAddBladeEvent = function (args) {
30
+ var isBladeAlreadyShown = false;
31
+ this.blades.forEach(function (blade) {
32
+ if (blade.path === args.path) {
33
+ // Blade is already show, just activate it again
34
+ blade.onActivate();
35
+ isBladeAlreadyShown = true;
36
+ return;
37
+ }
38
+ });
39
+ if (!isBladeAlreadyShown) {
40
+ // Add the blade, since it is not yet shown
41
+ this.portalService.$rootScope.$broadcast('AreaBlades.AddBlade', args);
42
+ }
43
+ };
44
+ AreaBlades.prototype.setFirstBlade = function (path) {
45
+ this.clearAll();
46
+ this.hidePanorama();
47
+ return this.addBlade(path);
48
+ };
49
+ AreaBlades.prototype.addBlade = function (path, senderPath) {
50
+ var _this = this;
51
+ if (senderPath === void 0) { senderPath = ''; }
52
+ if (path == null) {
53
+ return;
54
+ }
55
+ if (senderPath == null) {
56
+ return;
57
+ }
58
+ var portalcontent = null;
59
+ this.portalService.$analytics.pageTrack(path);
60
+ path = path.toLowerCase();
61
+ senderPath = senderPath.toLowerCase();
62
+ // #region Verify
63
+ if (path === undefined || path === '') {
64
+ return;
65
+ }
66
+ if (this.portalService.$window !== undefined) {
67
+ if (this.portalService.$window.document === undefined) {
68
+ throw new Error('[angularportalazure.AreaBlades] \'this.$window.document\' undefined.');
69
+ }
70
+ portalcontent = this.portalService.$window.document.getElementById('apa-portal-scroll');
71
+ if (portalcontent === null) {
72
+ throw new Error('[angularportalazure.AreaBlades] HTML element with ID [apa-portal-scroll] not found. Maybe it is to early to call function \'BladeArea.addBlade\'.');
73
+ }
74
+ }
75
+ // #endregion
76
+ // #region Clear all children of the parent path
77
+ this.clearChild(senderPath);
78
+ // #endregion
79
+ // #region Make sure the blade is not yet show
80
+ this.blades.forEach(function (blade) {
81
+ // we do not distinguish between lower and upper case path name
82
+ if (blade.comparePaths(blade.path, path)) {
83
+ throw new Error('[angularportalazure.AreaBlades] path: \'' + path + '\' will not be added. It is already added.');
84
+ }
85
+ });
86
+ // #endregion
87
+ // #region Show the blade
88
+ var blade = new blade_1.Blade(this.$scope, this.portalService, path, '');
89
+ this.blades.push(blade);
90
+ // #endregion
91
+ // #region Position the blade
92
+ if (this.portalService.$window !== undefined) {
93
+ this.portalService.$window.setTimeout(function () {
94
+ var azureportalblades = _this.portalService.$window.document.getElementsByClassName('azureportalblade');
95
+ var i = _this.blades.length - 1;
96
+ // HACK: Sometime azureportalblades[i].offsetLeft is undefined.
97
+ // So now if it is, the user has to scroll on its own.
98
+ if (azureportalblades[i] !== undefined && azureportalblades[i].offsetLeft !== undefined) {
99
+ var sl = azureportalblades[i].offsetLeft - 30;
100
+ portalcontent.scrollLeft = sl;
101
+ }
102
+ }, 250);
103
+ }
104
+ // #endregion
105
+ return blade;
106
+ };
107
+ AreaBlades.prototype.clearAll = function () {
108
+ this.blades.length = 0;
109
+ this.showPanoramaIfNoBlades();
110
+ };
111
+ AreaBlades.prototype.clearPath = function (path) {
112
+ var _this = this;
113
+ // we do not distinguish between lower and upper case path name
114
+ path = path.toLowerCase();
115
+ var isremoved = this.blades.some(function (blade, index) {
116
+ if (blade.comparePaths(blade.path, path)) {
117
+ _this.blades.length = index;
118
+ return true;
119
+ }
120
+ });
121
+ if (!isremoved && this.portalService.areaNotification.path === path) {
122
+ this.portalService.areaNotification.hide();
123
+ isremoved = true;
124
+ }
125
+ if (!isremoved) {
126
+ throw new Error('[angularportalazure.AreaBlades.clearPath] path: \'' + path + '\' could not be removed, since path not found in bladeUrls.');
127
+ }
128
+ this.showPanoramaIfNoBlades();
129
+ };
130
+ AreaBlades.prototype.clearLevel = function (level) {
131
+ if (this.blades.length < level) {
132
+ throw new Error('[angularportalazure.AreaBlades] level: \'' + level + '\' could not be cleard, since only \'' + this.blades.length + '\' available.');
133
+ }
134
+ if (level === 0) {
135
+ level = 1;
136
+ }
137
+ this.blades.length = level - 1;
138
+ this.showPanoramaIfNoBlades();
139
+ };
140
+ AreaBlades.prototype.clearLastLevel = function () {
141
+ this.clearLevel(this.blades.length);
142
+ this.showPanoramaIfNoBlades();
143
+ };
144
+ AreaBlades.prototype.clearChild = function (path) {
145
+ var _this = this;
146
+ path = path.toLowerCase();
147
+ if (path === '') {
148
+ return;
149
+ }
150
+ var isremoved = this.blades.some(function (blade, index) {
151
+ // we do not distinguish between lower and upper case path name
152
+ if (blade.comparePaths(blade.path, path)) {
153
+ _this.blades.length = index + 1;
154
+ return true;
155
+ }
156
+ });
157
+ if (!isremoved) {
158
+ throw new Error('[angularportalazure.AreaBlades.clearChild] path: \'' + path + '\' could not be removed, since path not found in bladeUrls.');
159
+ }
160
+ };
161
+ AreaBlades.prototype.showPanoramaIfNoBlades = function () {
162
+ if (this.blades.length === 0) {
163
+ if (this.portalService.panorama !== undefined) {
164
+ {
165
+ this.portalService.panorama.isVisible = true;
166
+ }
167
+ }
168
+ }
169
+ };
170
+ AreaBlades.prototype.hidePanorama = function () {
171
+ if (this.portalService.panorama !== undefined) {
172
+ this.portalService.panorama.isVisible = false;
173
+ }
174
+ };
175
+ /** We need to call this when AreaBlades is no longer used, otherwise the listener does not get removed. */
176
+ AreaBlades.prototype.close = function () {
177
+ // Unregister Listeners
178
+ this.addBladeListener();
179
+ this.areaNotificationShowListener();
180
+ this.areaNotificationHideListener();
181
+ };
182
+ // #endregion
183
+ AreaBlades.prototype.setPortalScrollCss = function () {
184
+ this.portalScroll.style.marginRight = this.portalService.areaNotification.widthAreaUsed + 'px';
185
+ };
186
+ AreaBlades.prototype.setupShowHideNotificationAreaListener = function () {
187
+ var _this = this;
188
+ this.areaNotificationShowListener = this.portalService.$rootScope.$on('AreaNotification.Show', function (event, args) {
189
+ _this.setPortalScrollCss();
190
+ });
191
+ this.areaNotificationHideListener = this.portalService.$rootScope.$on('AreaNotification.Hide', function (event, args) {
192
+ _this.setPortalScrollCss();
193
+ });
194
+ };
195
+ AreaBlades.prototype.setupAddBladeListener = function () {
196
+ var _this = this;
197
+ this.addBladeListener = this.portalService.$rootScope.$on('AreaBlades.AddBlade', function (event, args) {
198
+ _this.addBlade(args.path, args.pathSender);
199
+ });
200
+ };
201
+ // #region Constructor
202
+ AreaBlades.$inject = ['$scope', 'angularportalazure.portalService'];
203
+ return AreaBlades;
204
+ }(usercontrolbase_1.UserControlBase));
205
+ exports.AreaBlades = AreaBlades;
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
6
+ return function (d, b) {
7
+ extendStatics(d, b);
8
+ function __() { this.constructor = d; }
9
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
10
+ };
11
+ })();
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ var usercontrolbase_1 = require("./usercontrolbase");
14
+ var AreaNotification = (function (_super) {
15
+ __extends(AreaNotification, _super);
16
+ // #region Constructor
17
+ function AreaNotification($scope, portalService) {
18
+ var _this = _super.call(this, $scope, portalService) || this;
19
+ // #endregion
20
+ // #region Properties
21
+ _this.path = '';
22
+ _this.widthAreaUsed = 0;
23
+ _this._width = 250;
24
+ _this._backgroundColor = '#32383f';
25
+ _this.areaNotification = _this.portalService.$window.document.getElementById('apa-notification-area');
26
+ _this.hide();
27
+ _this.setupWindowResizeListener(function () { _this.calcualteCssStyles(); });
28
+ return _this;
29
+ }
30
+ Object.defineProperty(AreaNotification.prototype, "width", {
31
+ get: function () {
32
+ return this._width;
33
+ },
34
+ set: function (value) {
35
+ this._width = value;
36
+ this.calcualteCssStyles();
37
+ },
38
+ enumerable: true,
39
+ configurable: true
40
+ });
41
+ Object.defineProperty(AreaNotification.prototype, "backgroundColor", {
42
+ get: function () {
43
+ return this._backgroundColor;
44
+ },
45
+ set: function (value) {
46
+ this._backgroundColor = value;
47
+ this.calcualteCssStyles();
48
+ },
49
+ enumerable: true,
50
+ configurable: true
51
+ });
52
+ // #endregion
53
+ // #region Methods
54
+ AreaNotification.prototype.hide = function () {
55
+ // Do not hide on false
56
+ if (!this.onHide) {
57
+ return;
58
+ }
59
+ this.path = '';
60
+ this.widthAreaUsed = 0;
61
+ this.areaNotification.style.display = 'none';
62
+ this.portalService.$rootScope.$broadcast('AreaNotification.Hide');
63
+ };
64
+ AreaNotification.prototype.show = function (width) {
65
+ if (width === void 0) { width = 250; }
66
+ this.onShow();
67
+ this.width = width;
68
+ this.widthAreaUsed = 1; // Indicate to the calcualteCssStyles function, that we need to set this value
69
+ this.calcualteCssStyles();
70
+ this.areaNotification.style.display = 'inline-block';
71
+ this.portalService.$rootScope.$broadcast('AreaNotification.Show');
72
+ this.onShowed();
73
+ };
74
+ /* Override */
75
+ AreaNotification.prototype.onHide = function () {
76
+ return true;
77
+ };
78
+ /* Override */
79
+ AreaNotification.prototype.onShow = function () {
80
+ };
81
+ /* Override */
82
+ AreaNotification.prototype.onShowed = function () {
83
+ };
84
+ AreaNotification.prototype.calcualteCssStyles = function () {
85
+ this.areaNotification.style.position = 'absolute';
86
+ this.areaNotification.style.top = '0';
87
+ this.areaNotification.style.height = '100%';
88
+ this.areaNotification.style.backgroundColor = this.backgroundColor;
89
+ this.areaNotification.style.borderLeft = '2px solid gray';
90
+ this.areaNotification.style.width = this.width + 'px';
91
+ this.areaNotification.style.left = this.portalService.$window.innerWidth - this.width + 'px';
92
+ if (this.widthAreaUsed !== 0) {
93
+ this.widthAreaUsed = this.width;
94
+ }
95
+ };
96
+ return AreaNotification;
97
+ }(usercontrolbase_1.UserControlBase));
98
+ exports.AreaNotification = AreaNotification;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = Object.setPrototypeOf ||
4
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
5
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
6
+ return function (d, b) {
7
+ extendStatics(d, b);
8
+ function __() { this.constructor = d; }
9
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
10
+ };
11
+ })();
12
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ var usercontrolbase_1 = require("./usercontrolbase");
14
+ var AvatarMenu = (function (_super) {
15
+ __extends(AvatarMenu, _super);
16
+ // #region Constructor
17
+ function AvatarMenu($scope, portalService) {
18
+ return _super.call(this, $scope, portalService) || this;
19
+ }
20
+ return AvatarMenu;
21
+ }(usercontrolbase_1.UserControlBase));
22
+ exports.AvatarMenu = AvatarMenu;