@web-atoms/core 2.1.478 → 2.2.0

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.
Files changed (298) hide show
  1. package/dist/App.js +189 -242
  2. package/dist/App.js.map +1 -1
  3. package/dist/Atom.js +123 -138
  4. package/dist/Atom.js.map +1 -1
  5. package/dist/MockApp.js +32 -32
  6. package/dist/MockApp.js.map +1 -1
  7. package/dist/Pack.js +11 -17
  8. package/dist/Pack.js.map +1 -1
  9. package/dist/core/AtomBinder.js +187 -199
  10. package/dist/core/AtomBinder.js.map +1 -1
  11. package/dist/core/AtomBridge.js +251 -274
  12. package/dist/core/AtomBridge.js.map +1 -1
  13. package/dist/core/AtomComponent.js +509 -592
  14. package/dist/core/AtomComponent.js.map +1 -1
  15. package/dist/core/AtomDispatcher.js +50 -54
  16. package/dist/core/AtomDispatcher.js.map +1 -1
  17. package/dist/core/AtomDisposableList.js +31 -36
  18. package/dist/core/AtomDisposableList.js.map +1 -1
  19. package/dist/core/AtomEnumerator.js +19 -21
  20. package/dist/core/AtomEnumerator.js.map +1 -1
  21. package/dist/core/AtomList.js +168 -232
  22. package/dist/core/AtomList.js.map +1 -1
  23. package/dist/core/AtomLoader.js +274 -257
  24. package/dist/core/AtomLoader.js.map +1 -1
  25. package/dist/core/AtomMap.js +15 -20
  26. package/dist/core/AtomMap.js.map +1 -1
  27. package/dist/core/AtomOnce.js +31 -71
  28. package/dist/core/AtomOnce.js.map +1 -1
  29. package/dist/core/AtomSelectableList.js +210 -223
  30. package/dist/core/AtomSelectableList.js.map +1 -1
  31. package/dist/core/AtomUri.js +78 -85
  32. package/dist/core/AtomUri.js.map +1 -1
  33. package/dist/core/AtomWatcher.js +112 -186
  34. package/dist/core/AtomWatcher.js.map +1 -1
  35. package/dist/core/Bind.js +288 -380
  36. package/dist/core/Bind.js.map +1 -1
  37. package/dist/core/BindableProperty.js +40 -59
  38. package/dist/core/BindableProperty.js.map +1 -1
  39. package/dist/core/CancelTokenFactory.js +42 -49
  40. package/dist/core/CancelTokenFactory.js.map +1 -1
  41. package/dist/core/Color.js +9 -13
  42. package/dist/core/Color.js.map +1 -1
  43. package/dist/core/Colors.js +254 -254
  44. package/dist/core/Colors.js.map +1 -1
  45. package/dist/core/Defer.js +37 -47
  46. package/dist/core/Defer.js.map +1 -1
  47. package/dist/core/EventScope.js +52 -49
  48. package/dist/core/EventScope.js.map +1 -1
  49. package/dist/core/ExpressionParser.js +152 -216
  50. package/dist/core/ExpressionParser.js.map +1 -1
  51. package/dist/core/FormattedError.js +17 -19
  52. package/dist/core/FormattedError.js.map +1 -1
  53. package/dist/core/FormattedString.js +14 -16
  54. package/dist/core/FormattedString.js.map +1 -1
  55. package/dist/core/IFetchEvent.js +9 -13
  56. package/dist/core/IFetchEvent.js.map +1 -1
  57. package/dist/core/IScreen.js +9 -13
  58. package/dist/core/IScreen.js.map +1 -1
  59. package/dist/core/IValueConverter.js +9 -13
  60. package/dist/core/IValueConverter.js.map +1 -1
  61. package/dist/core/InheritedProperty.js +83 -99
  62. package/dist/core/InheritedProperty.js.map +1 -1
  63. package/dist/core/InjectProperty.js +22 -29
  64. package/dist/core/InjectProperty.js.map +1 -1
  65. package/dist/core/KeyValuePairs.js +9 -13
  66. package/dist/core/KeyValuePairs.js.map +1 -1
  67. package/dist/core/Markdown.js +22 -24
  68. package/dist/core/Markdown.js.map +1 -1
  69. package/dist/core/MarkdownError.js +20 -20
  70. package/dist/core/MarkdownError.js.map +1 -1
  71. package/dist/core/PropertyBinding.js +11 -16
  72. package/dist/core/PropertyBinding.js.map +1 -1
  73. package/dist/core/PropertyMap.js +37 -44
  74. package/dist/core/PropertyMap.js.map +1 -1
  75. package/dist/core/SingleInvoker.js +51 -54
  76. package/dist/core/SingleInvoker.js.map +1 -1
  77. package/dist/core/StringHelper.js +36 -39
  78. package/dist/core/StringHelper.js.map +1 -1
  79. package/dist/core/TransientDisposable.js +23 -26
  80. package/dist/core/TransientDisposable.js.map +1 -1
  81. package/dist/core/WatchProperty.js +34 -34
  82. package/dist/core/WatchProperty.js.map +1 -1
  83. package/dist/core/WebImage.js +15 -17
  84. package/dist/core/WebImage.js.map +1 -1
  85. package/dist/core/XNode.js +129 -157
  86. package/dist/core/XNode.js.map +1 -1
  87. package/dist/core/sleep.js +34 -40
  88. package/dist/core/sleep.js.map +1 -1
  89. package/dist/core/types.js +80 -88
  90. package/dist/core/types.js.map +1 -1
  91. package/dist/di/DISingleton.js +23 -21
  92. package/dist/di/DISingleton.js.map +1 -1
  93. package/dist/di/DITransient.js +23 -21
  94. package/dist/di/DITransient.js.map +1 -1
  95. package/dist/di/IMockOrInject.js +9 -13
  96. package/dist/di/IMockOrInject.js.map +1 -1
  97. package/dist/di/IServiceProvider.js +9 -13
  98. package/dist/di/IServiceProvider.js.map +1 -1
  99. package/dist/di/Inject.js +79 -88
  100. package/dist/di/Inject.js.map +1 -1
  101. package/dist/di/Register.js +49 -51
  102. package/dist/di/Register.js.map +1 -1
  103. package/dist/di/RegisterScoped.js +20 -20
  104. package/dist/di/RegisterScoped.js.map +1 -1
  105. package/dist/di/RegisterSingleton.js +20 -20
  106. package/dist/di/RegisterSingleton.js.map +1 -1
  107. package/dist/di/ServiceCollection.js +46 -45
  108. package/dist/di/ServiceCollection.js.map +1 -1
  109. package/dist/di/ServiceProvider.js +111 -109
  110. package/dist/di/ServiceProvider.js.map +1 -1
  111. package/dist/di/TypeKey.js +20 -43
  112. package/dist/di/TypeKey.js.map +1 -1
  113. package/dist/services/BusyIndicatorService.js +26 -32
  114. package/dist/services/BusyIndicatorService.js.map +1 -1
  115. package/dist/services/CacheService.js +112 -98
  116. package/dist/services/CacheService.js.map +1 -1
  117. package/dist/services/JsonService.js +131 -133
  118. package/dist/services/JsonService.js.map +1 -1
  119. package/dist/services/MockNavigationService.js +152 -221
  120. package/dist/services/MockNavigationService.js.map +1 -1
  121. package/dist/services/NavigationService.js +140 -154
  122. package/dist/services/NavigationService.js.map +1 -1
  123. package/dist/services/ReferenceService.js +47 -50
  124. package/dist/services/ReferenceService.js.map +1 -1
  125. package/dist/services/http/AjaxOptions.js +12 -16
  126. package/dist/services/http/AjaxOptions.js.map +1 -1
  127. package/dist/services/http/JsonError.js +17 -19
  128. package/dist/services/http/JsonError.js.map +1 -1
  129. package/dist/services/http/RestService.js +395 -583
  130. package/dist/services/http/RestService.js.map +1 -1
  131. package/dist/style/StyleRule.js +1830 -1844
  132. package/dist/style/StyleRule.js.map +1 -1
  133. package/dist/test.js +9 -66
  134. package/dist/test.js.map +1 -1
  135. package/dist/tsconfig.tsbuildinfo +1 -1
  136. package/dist/unit/AtomTest.js +54 -36
  137. package/dist/unit/AtomTest.js.map +1 -1
  138. package/dist/unit/AtomWebTest.js +64 -43
  139. package/dist/unit/AtomWebTest.js.map +1 -1
  140. package/dist/view-model/Action.js +152 -134
  141. package/dist/view-model/Action.js.map +1 -1
  142. package/dist/view-model/AtomViewModel.js +318 -416
  143. package/dist/view-model/AtomViewModel.js.map +1 -1
  144. package/dist/view-model/AtomWindowViewModel.js +55 -90
  145. package/dist/view-model/AtomWindowViewModel.js.map +1 -1
  146. package/dist/view-model/BindableUrlParameter.js +25 -25
  147. package/dist/view-model/BindableUrlParameter.js.map +1 -1
  148. package/dist/view-model/Delay.js +34 -46
  149. package/dist/view-model/Delay.js.map +1 -1
  150. package/dist/view-model/Disposable.js +31 -39
  151. package/dist/view-model/Disposable.js.map +1 -1
  152. package/dist/view-model/Load.js +119 -123
  153. package/dist/view-model/Load.js.map +1 -1
  154. package/dist/view-model/Once.js +48 -53
  155. package/dist/view-model/Once.js.map +1 -1
  156. package/dist/view-model/baseTypes.js +15 -20
  157. package/dist/view-model/baseTypes.js.map +1 -1
  158. package/dist/view-model/bindPromise.js +42 -48
  159. package/dist/view-model/bindPromise.js.map +1 -1
  160. package/dist/view-model/bindProperty.js +17 -27
  161. package/dist/view-model/bindProperty.js.map +1 -1
  162. package/dist/view-model/bindUrlParameter.js +55 -66
  163. package/dist/view-model/bindUrlParameter.js.map +1 -1
  164. package/dist/web/WebApp.js +136 -135
  165. package/dist/web/WebApp.js.map +1 -1
  166. package/dist/web/controls/AtomAlertWindow.js +61 -90
  167. package/dist/web/controls/AtomAlertWindow.js.map +1 -1
  168. package/dist/web/controls/AtomComboBox.js +82 -86
  169. package/dist/web/controls/AtomComboBox.js.map +1 -1
  170. package/dist/web/controls/AtomContentControl.js +52 -50
  171. package/dist/web/controls/AtomContentControl.js.map +1 -1
  172. package/dist/web/controls/AtomControl.js +435 -476
  173. package/dist/web/controls/AtomControl.js.map +1 -1
  174. package/dist/web/controls/AtomFrame.js +224 -226
  175. package/dist/web/controls/AtomFrame.js.map +1 -1
  176. package/dist/web/controls/AtomGridSplitter.js +67 -65
  177. package/dist/web/controls/AtomGridSplitter.js.map +1 -1
  178. package/dist/web/controls/AtomGridView.js +228 -254
  179. package/dist/web/controls/AtomGridView.js.map +1 -1
  180. package/dist/web/controls/AtomItemsControl.js +622 -761
  181. package/dist/web/controls/AtomItemsControl.js.map +1 -1
  182. package/dist/web/controls/AtomListBox.js +56 -64
  183. package/dist/web/controls/AtomListBox.js.map +1 -1
  184. package/dist/web/controls/AtomNotification.js +59 -54
  185. package/dist/web/controls/AtomNotification.js.map +1 -1
  186. package/dist/web/controls/AtomPage.js +18 -20
  187. package/dist/web/controls/AtomPage.js.map +1 -1
  188. package/dist/web/controls/AtomPageLink.js +131 -107
  189. package/dist/web/controls/AtomPageLink.js.map +1 -1
  190. package/dist/web/controls/AtomTabbedPage.js +269 -246
  191. package/dist/web/controls/AtomTabbedPage.js.map +1 -1
  192. package/dist/web/controls/AtomTemplate.js +14 -17
  193. package/dist/web/controls/AtomTemplate.js.map +1 -1
  194. package/dist/web/controls/AtomTemplateControl.js +38 -40
  195. package/dist/web/controls/AtomTemplateControl.js.map +1 -1
  196. package/dist/web/controls/AtomToggleButtonBar.js +37 -37
  197. package/dist/web/controls/AtomToggleButtonBar.js.map +1 -1
  198. package/dist/web/controls/AtomViewPager.js +87 -67
  199. package/dist/web/controls/AtomViewPager.js.map +1 -1
  200. package/dist/web/controls/AtomViewStack.js +30 -32
  201. package/dist/web/controls/AtomViewStack.js.map +1 -1
  202. package/dist/web/controls/AtomWindow.js +218 -233
  203. package/dist/web/controls/AtomWindow.js.map +1 -1
  204. package/dist/web/core/AtomUI.d.ts.map +1 -1
  205. package/dist/web/core/AtomUI.js +160 -172
  206. package/dist/web/core/AtomUI.js.map +1 -1
  207. package/dist/web/core/Encoder.js +152 -199
  208. package/dist/web/core/Encoder.js.map +1 -1
  209. package/dist/web/core/HtmlNode.js +165 -161
  210. package/dist/web/core/HtmlNode.js.map +1 -1
  211. package/dist/web/images/Busy.js +13 -14
  212. package/dist/web/images/Busy.js.map +1 -1
  213. package/dist/web/images/BusyDataUrl.js +14 -882
  214. package/dist/web/images/BusyDataUrl.js.map +1 -1
  215. package/dist/web/images/Button.js +13 -15
  216. package/dist/web/images/Button.js.map +1 -1
  217. package/dist/web/images/ButtonDataUrl.js +14 -43
  218. package/dist/web/images/ButtonDataUrl.js.map +1 -1
  219. package/dist/web/images/CloseButton.js +13 -14
  220. package/dist/web/images/CloseButton.js.map +1 -1
  221. package/dist/web/images/CloseButtonDataUrl.js +14 -43
  222. package/dist/web/images/CloseButtonDataUrl.js.map +1 -1
  223. package/dist/web/images/CloseButtonHover.js +13 -14
  224. package/dist/web/images/CloseButtonHover.js.map +1 -1
  225. package/dist/web/images/CloseButtonHoverDataUrl.js +14 -37
  226. package/dist/web/images/CloseButtonHoverDataUrl.js.map +1 -1
  227. package/dist/web/samples/MovieService.js +60 -49
  228. package/dist/web/samples/MovieService.js.map +1 -1
  229. package/dist/web/samples/demo/app.js +23 -23
  230. package/dist/web/samples/demo/app.js.map +1 -1
  231. package/dist/web/samples/demo/views/MovieList.js +64 -67
  232. package/dist/web/samples/demo/views/MovieList.js.map +1 -1
  233. package/dist/web/samples/demo/views/MovieListViewModel.js +102 -82
  234. package/dist/web/samples/demo/views/MovieListViewModel.js.map +1 -1
  235. package/dist/web/samples/tabs/app.js +57 -39
  236. package/dist/web/samples/tabs/app.js.map +1 -1
  237. package/dist/web/samples/tabs/views/List.js +13 -14
  238. package/dist/web/samples/tabs/views/List.js.map +1 -1
  239. package/dist/web/samples/tabs/views/ListDataUrl.js +14 -18
  240. package/dist/web/samples/tabs/views/ListDataUrl.js.map +1 -1
  241. package/dist/web/samples/tabs/views/Page1.js +94 -74
  242. package/dist/web/samples/tabs/views/Page1.js.map +1 -1
  243. package/dist/web/samples/tabs/views/TabHost.js +82 -63
  244. package/dist/web/samples/tabs/views/TabHost.js.map +1 -1
  245. package/dist/web/samples/window/WindowSample.js +27 -23
  246. package/dist/web/samples/window/WindowSample.js.map +1 -1
  247. package/dist/web/services/MarkdownService.js +35 -51
  248. package/dist/web/services/MarkdownService.js.map +1 -1
  249. package/dist/web/services/NotificationPopup.js +48 -44
  250. package/dist/web/services/NotificationPopup.js.map +1 -1
  251. package/dist/web/services/PopupService.js +770 -940
  252. package/dist/web/services/PopupService.js.map +1 -1
  253. package/dist/web/services/WebBusyIndicatorService.js +80 -86
  254. package/dist/web/services/WebBusyIndicatorService.js.map +1 -1
  255. package/dist/web/services/WindowService.js +332 -418
  256. package/dist/web/services/WindowService.js.map +1 -1
  257. package/dist/web/styles/AtomAlertWindowStyle.js +44 -34
  258. package/dist/web/styles/AtomAlertWindowStyle.js.map +1 -1
  259. package/dist/web/styles/AtomFrameStyle.js +27 -20
  260. package/dist/web/styles/AtomFrameStyle.js.map +1 -1
  261. package/dist/web/styles/AtomListBoxStyle.js +34 -32
  262. package/dist/web/styles/AtomListBoxStyle.js.map +1 -1
  263. package/dist/web/styles/AtomNotificationStyle.js +33 -33
  264. package/dist/web/styles/AtomNotificationStyle.js.map +1 -1
  265. package/dist/web/styles/AtomPageLinkStyle.js +21 -22
  266. package/dist/web/styles/AtomPageLinkStyle.js.map +1 -1
  267. package/dist/web/styles/AtomPopupStyle.js +21 -23
  268. package/dist/web/styles/AtomPopupStyle.js.map +1 -1
  269. package/dist/web/styles/AtomStyle.js +69 -73
  270. package/dist/web/styles/AtomStyle.js.map +1 -1
  271. package/dist/web/styles/AtomStyleSheet.js +54 -57
  272. package/dist/web/styles/AtomStyleSheet.js.map +1 -1
  273. package/dist/web/styles/AtomTabbedPageStyle.js +110 -105
  274. package/dist/web/styles/AtomTabbedPageStyle.js.map +1 -1
  275. package/dist/web/styles/AtomTheme.js +62 -65
  276. package/dist/web/styles/AtomTheme.js.map +1 -1
  277. package/dist/web/styles/AtomToggleButtonBarStyle.js +68 -49
  278. package/dist/web/styles/AtomToggleButtonBarStyle.js.map +1 -1
  279. package/dist/web/styles/AtomWindowStyle.js +108 -117
  280. package/dist/web/styles/AtomWindowStyle.js.map +1 -1
  281. package/dist/web/styles/CSS.js +71 -81
  282. package/dist/web/styles/CSS.js.map +1 -1
  283. package/dist/web/styles/CommonStyles.js +60 -66
  284. package/dist/web/styles/CommonStyles.js.map +1 -1
  285. package/dist/web/styles/IStyleDeclaration.js +9 -13
  286. package/dist/web/styles/IStyleDeclaration.js.map +1 -1
  287. package/dist/web/styles/StyleBuilder.js +74 -75
  288. package/dist/web/styles/StyleBuilder.js.map +1 -1
  289. package/dist/xf/XFApp.js +54 -50
  290. package/dist/xf/XFApp.js.map +1 -1
  291. package/dist/xf/controls/AtomXFControl.js +233 -229
  292. package/dist/xf/controls/AtomXFControl.js.map +1 -1
  293. package/dist/xf/services/XFBusyIndicatorService.js +34 -34
  294. package/dist/xf/services/XFBusyIndicatorService.js.map +1 -1
  295. package/dist/xf/services/XFNavigationService.js +150 -133
  296. package/dist/xf/services/XFNavigationService.js.map +1 -1
  297. package/package.json +2 -1
  298. package/src/web/core/AtomUI.ts +8 -6
@@ -1,464 +1,378 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- var __param = (this && this.__param) || function (paramIndex, decorator) {
11
- return function (target, key) { decorator(target, key, paramIndex); }
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- (function (factory) {
23
- if (typeof module === "object" && typeof module.exports === "object") {
24
- var v = factory(require, exports);
25
- if (v !== undefined) module.exports = v;
26
- }
27
- else if (typeof define === "function" && define.amd) {
28
- define(["require", "exports", "../../App", "../../Atom", "../../core/AtomLoader", "../../core/AtomUri", "../../core/FormattedError", "../../core/FormattedString", "../../core/types", "../../di/Inject", "../../di/RegisterSingleton", "../../di/ServiceCollection", "../../services/JsonService", "../../services/NavigationService", "../../view-model/AtomWindowViewModel", "../../web/core/AtomUI", "../controls/AtomAlertWindow", "../controls/AtomNotification", "../controls/AtomWindow", "../styles/AtomPopupStyle", "../styles/AtomStyleSheet", "../styles/StyleBuilder", "./NotificationPopup", "./PopupService"], factory);
29
- }
30
- })(function (require, exports) {
31
- "use strict";
32
- Object.defineProperty(exports, "__esModule", { value: true });
33
- exports.WindowService = void 0;
34
- const App_1 = require("../../App");
35
- const Atom_1 = require("../../Atom");
36
- const AtomLoader_1 = require("../../core/AtomLoader");
37
- const AtomUri_1 = require("../../core/AtomUri");
38
- const FormattedError_1 = require("../../core/FormattedError");
39
- const FormattedString_1 = require("../../core/FormattedString");
40
- const types_1 = require("../../core/types");
41
- const Inject_1 = require("../../di/Inject");
42
- const RegisterSingleton_1 = require("../../di/RegisterSingleton");
43
- const ServiceCollection_1 = require("../../di/ServiceCollection");
44
- const JsonService_1 = require("../../services/JsonService");
45
- const NavigationService_1 = require("../../services/NavigationService");
46
- const AtomWindowViewModel_1 = require("../../view-model/AtomWindowViewModel");
47
- const AtomUI_1 = require("../../web/core/AtomUI");
48
- const AtomAlertWindow_1 = require("../controls/AtomAlertWindow");
49
- const AtomNotification_1 = require("../controls/AtomNotification");
50
- const AtomWindow_1 = require("../controls/AtomWindow");
51
- const AtomPopupStyle_1 = require("../styles/AtomPopupStyle");
52
- const AtomStyleSheet_1 = require("../styles/AtomStyleSheet");
53
- const StyleBuilder_1 = require("../styles/StyleBuilder");
54
- const NotificationPopup_1 = require("./NotificationPopup");
55
- const PopupService_1 = require("./PopupService");
56
- let WindowService = class WindowService extends NavigationService_1.NavigationService {
57
- /**
58
- * Get current window title
59
- *
60
- * @type {string}
61
- * @memberof BrowserService
62
- */
1
+ System.register(["../../App", "../../Atom", "../../core/AtomLoader", "../../core/AtomUri", "../../core/FormattedError", "../../core/FormattedString", "../../core/types", "../../di/Inject", "../../di/RegisterSingleton", "../../di/ServiceCollection", "../../services/JsonService", "../../services/NavigationService", "../../view-model/AtomWindowViewModel", "../../web/core/AtomUI", "../controls/AtomAlertWindow", "../controls/AtomNotification", "../controls/AtomWindow", "../styles/AtomPopupStyle", "../styles/AtomStyleSheet", "../styles/StyleBuilder", "./NotificationPopup", "./PopupService"], function (_export, _context) {
2
+ "use strict";
3
+
4
+ var App, Atom, AtomLoader, AtomUri, FormattedError, FormattedString, CancelToken, Inject, RegisterSingleton, Scope, ServiceCollection, JsonService, NavigationService, AtomWindowViewModel, AtomUI, AtomAlertWindow, AtomNotification, AtomWindow, AtomPopupStyle, AtomStyleSheet, cssNumberToString, NotificationPopup, PopupService, __decorate, __metadata, __param, __awaiter, WindowService;
5
+ return {
6
+ setters: [function (_App) {
7
+ App = _App.App;
8
+ }, function (_Atom) {
9
+ Atom = _Atom.Atom;
10
+ }, function (_coreAtomLoader) {
11
+ AtomLoader = _coreAtomLoader.AtomLoader;
12
+ }, function (_coreAtomUri) {
13
+ AtomUri = _coreAtomUri.AtomUri;
14
+ }, function (_coreFormattedError) {
15
+ FormattedError = _coreFormattedError.default;
16
+ }, function (_coreFormattedString) {
17
+ FormattedString = _coreFormattedString.default;
18
+ }, function (_coreTypes) {
19
+ CancelToken = _coreTypes.CancelToken;
20
+ }, function (_diInject) {
21
+ Inject = _diInject.Inject;
22
+ }, function (_diRegisterSingleton) {
23
+ RegisterSingleton = _diRegisterSingleton.RegisterSingleton;
24
+ }, function (_diServiceCollection) {
25
+ Scope = _diServiceCollection.Scope;
26
+ ServiceCollection = _diServiceCollection.ServiceCollection;
27
+ }, function (_servicesJsonService) {
28
+ JsonService = _servicesJsonService.JsonService;
29
+ }, function (_servicesNavigationService) {
30
+ NavigationService = _servicesNavigationService.NavigationService;
31
+ }, function (_viewModelAtomWindowViewModel) {
32
+ AtomWindowViewModel = _viewModelAtomWindowViewModel.AtomWindowViewModel;
33
+ }, function (_webCoreAtomUI) {
34
+ AtomUI = _webCoreAtomUI.AtomUI;
35
+ }, function (_controlsAtomAlertWindow) {
36
+ AtomAlertWindow = _controlsAtomAlertWindow.default;
37
+ }, function (_controlsAtomNotification) {
38
+ AtomNotification = _controlsAtomNotification.default;
39
+ }, function (_controlsAtomWindow) {
40
+ AtomWindow = _controlsAtomWindow.AtomWindow;
41
+ }, function (_stylesAtomPopupStyle) {
42
+ AtomPopupStyle = _stylesAtomPopupStyle.AtomPopupStyle;
43
+ }, function (_stylesAtomStyleSheet) {
44
+ AtomStyleSheet = _stylesAtomStyleSheet.AtomStyleSheet;
45
+ }, function (_stylesStyleBuilder) {
46
+ cssNumberToString = _stylesStyleBuilder.cssNumberToString;
47
+ }, function (_NotificationPopup) {
48
+ NotificationPopup = _NotificationPopup.default;
49
+ }, function (_PopupService) {
50
+ PopupService = _PopupService.default;
51
+ }],
52
+ execute: function () {
53
+ __decorate = void 0 && (void 0).__decorate || function (decorators, target, key, desc) {
54
+ var c = arguments.length,
55
+ r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc,
56
+ d;
57
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
58
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
59
+ };
60
+ __metadata = void 0 && (void 0).__metadata || function (k, v) {
61
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
62
+ };
63
+ __param = void 0 && (void 0).__param || function (paramIndex, decorator) {
64
+ return function (target, key) {
65
+ decorator(target, key, paramIndex);
66
+ };
67
+ };
68
+ __awaiter = void 0 && (void 0).__awaiter || function (thisArg, _arguments, P, generator) {
69
+ function adopt(value) {
70
+ return value instanceof P ? value : new P(function (resolve) {
71
+ resolve(value);
72
+ });
73
+ }
74
+ return new (P || (P = Promise))(function (resolve, reject) {
75
+ function fulfilled(value) {
76
+ try {
77
+ step(generator.next(value));
78
+ } catch (e) {
79
+ reject(e);
80
+ }
81
+ }
82
+ function rejected(value) {
83
+ try {
84
+ step(generator["throw"](value));
85
+ } catch (e) {
86
+ reject(e);
87
+ }
88
+ }
89
+ function step(result) {
90
+ result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);
91
+ }
92
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
93
+ });
94
+ };
95
+ _export("WindowService", WindowService = class WindowService extends NavigationService {
63
96
  get title() {
64
- return window.document.title;
97
+ return window.document.title;
65
98
  }
66
- /**
67
- * Set current window title
68
- * @memberof BrowserService
69
- */
70
99
  set title(v) {
71
- window.document.title = v;
100
+ window.document.title = v;
72
101
  }
73
- /**
74
- * Gets current location of browser, this does not return
75
- * actual location but it returns values of browser location.
76
- * This is done to provide mocking behavior for unit testing.
77
- *
78
- * @readonly
79
- * @type {AtomLocation}
80
- * @memberof BrowserService
81
- */
82
102
  get location() {
83
- return new AtomUri_1.AtomUri(location.href);
103
+ return new AtomUri(location.href);
84
104
  }
85
105
  set location(v) {
86
- location.href = v.toString();
106
+ location.href = v.toString();
87
107
  }
88
108
  constructor(app, jsonService) {
89
- super(app);
90
- this.jsonService = jsonService;
91
- // private targetStack: HTMLElement[] = [];
92
- // public get currentTarget(): HTMLElement {
93
- // const ts = this.targetStack;
94
- // return ts.length > 0 ? ts[ts.length - 1] : undefined;
95
- // }
96
- // public set currentTarget(v: HTMLElement) {
97
- // const ts = this.targetStack;
98
- // const nts = [];
99
- // if (v === null) {
100
- // // special case... remove all non existent elements...
101
- // for (const iterator of ts) {
102
- // if (iterator.parentElement) {
103
- // nts.push(iterator);
104
- // }
105
- // }
106
- // this.targetStack = nts;
107
- // return;
108
- // }
109
- // if (ts.length === 0 && ts[ts.length - 1] === v) {
110
- // return;
111
- // }
112
- // ts.push(v);
113
- // }
114
- this.popups = [];
115
- this.hostForElementFunc = [];
116
- this.lastPopupID = 0;
117
- this.screen = app.screen;
118
- let st = "desktop";
119
- if (/mobile|android|ios/i.test(window.navigator.userAgent)) {
120
- st = "mobile";
121
- if (/tablet/i.test(window.navigator.userAgent)) {
122
- st = "tablet";
123
- }
109
+ super(app);
110
+ this.jsonService = jsonService;
111
+ this.popups = [];
112
+ this.hostForElementFunc = [];
113
+ this.lastPopupID = 0;
114
+ this.screen = app.screen;
115
+ let st = "desktop";
116
+ if (/mobile|android|ios/i.test(window.navigator.userAgent)) {
117
+ st = "mobile";
118
+ if (/tablet/i.test(window.navigator.userAgent)) {
119
+ st = "tablet";
124
120
  }
125
- this.screen.screenType = st;
126
- if (window) {
127
- // window.addEventListener("click", (e) => {
128
- // // this.currentTarget = e.target as HTMLElement;
129
- // this.closePopup(e);
130
- // });
131
- const update = (e) => {
132
- this.refreshScreen();
133
- };
134
- // we don't do this in mobile..
135
- if (st !== "mobile") {
136
- window.addEventListener("resize", update);
137
- window.addEventListener("scroll", update);
138
- document.body.addEventListener("scroll", update);
139
- document.body.addEventListener("resize", update);
140
- }
141
- setTimeout(() => {
142
- update(null);
143
- }, 1000);
121
+ }
122
+ this.screen.screenType = st;
123
+ if (window) {
124
+ const update = e => {
125
+ this.refreshScreen();
126
+ };
127
+ if (st !== "mobile") {
128
+ window.addEventListener("resize", update);
129
+ window.addEventListener("scroll", update);
130
+ document.body.addEventListener("scroll", update);
131
+ document.body.addEventListener("resize", update);
144
132
  }
133
+ setTimeout(() => {
134
+ update(null);
135
+ }, 1000);
136
+ }
145
137
  }
146
138
  registerHostForWindow(f) {
147
- this.hostForElementFunc.push(f);
148
- return {
149
- dispose: () => {
150
- this.hostForElementFunc.remove(f);
151
- }
152
- };
139
+ this.hostForElementFunc.push(f);
140
+ return {
141
+ dispose: () => {
142
+ this.hostForElementFunc.remove(f);
143
+ }
144
+ };
153
145
  }
154
- /**
155
- * Navigate current browser to given url.
156
- * @param {string} url
157
- * @memberof BrowserService
158
- */
159
146
  navigate(url) {
160
- location.href = url;
147
+ location.href = url;
161
148
  }
162
149
  back() {
163
- window.history.back();
150
+ window.history.back();
164
151
  }
165
152
  register(id, type) {
166
- ServiceCollection_1.ServiceCollection.instance.register(type, null, ServiceCollection_1.Scope.Transient, id);
153
+ ServiceCollection.instance.register(type, null, Scope.Transient, id);
167
154
  }
168
155
  confirm(message, title) {
169
- return PopupService_1.default.confirm({ message: message, title });
170
- // try {
171
- // return await this.openPage(AtomAlertWindow, {
172
- // okTitle: "Yes",
173
- // cancelTitle: "No",
174
- // title: title || "Confirm",
175
- // message
176
- // });
177
- // } catch (e) {
178
- // if (/canceled|cancelled/i.test(e)) {
179
- // return false;
180
- // }
181
- // throw e;
182
- // }
156
+ return PopupService.confirm({
157
+ message: message,
158
+ title
159
+ });
183
160
  }
184
161
  alert(message, title) {
185
- if (!(message instanceof FormattedString_1.default || typeof message === "string")) {
186
- if (message instanceof FormattedError_1.default) {
187
- message = message.formattedMessage;
188
- }
189
- else {
190
- message = message.message ? message.message : message.toString();
191
- }
162
+ if (!(message instanceof FormattedString || typeof message === "string")) {
163
+ if (message instanceof FormattedError) {
164
+ message = message.formattedMessage;
165
+ } else {
166
+ message = message.message ? message.message : message.toString();
192
167
  }
193
- return PopupService_1.default.alert({ message, title });
194
- // return this.openPage(AtomAlertWindow, {
195
- // message,
196
- // title,
197
- // okTitle: "Ok",
198
- // cancelTitle: ""
199
- // }).catch((e) => {
200
- // // do nothing...
201
- // // tslint:disable-next-line: no-console
202
- // console.warn(e);
203
- // });
168
+ }
169
+ return PopupService.alert({
170
+ message,
171
+ title
172
+ });
204
173
  }
205
- // public closePopup(e: MouseEvent): void {
206
- // // need to simulate parent click if we are inside an iframe...
207
- // const fe = typeof frameElement !== "undefined" ? frameElement : null;
208
- // if (fe) {
209
- // (fe as any).click();
210
- // const pe = fe.ownerDocument ? fe.ownerDocument.defaultView as any : null;
211
- // if (pe && pe.simulateParentClick) {
212
- // pe.simulateParentClick();
213
- // }
214
- // }
215
- // let target = this.currentTarget;
216
- // const et = e.target as HTMLElement;
217
- // if (!et.parentElement) {
218
- // // probably the window/popup was just disposed..
219
- // // ignore it...
220
- // // if mouse click was outside body and within the window
221
- // // target element will be HTML
222
- // // in that case we have to dispose the top popup
223
- // if (!/html/i.test(et.tagName)) {
224
- // return;
225
- // }
226
- // // we need to manually override target so popup will be disposed
227
- // target = et;
228
- // }
229
- // this.currentTarget = e.target as HTMLElement;
230
- // if (!this.popups.length) {
231
- // return;
232
- // }
233
- // const peek = this.popups[this.popups.length - 1];
234
- // const element = peek.element;
235
- // while (target) {
236
- // if (target === element) {
237
- // // do not close this popup....
238
- // return;
239
- // }
240
- // if (element._logicalParent === target) {
241
- // return;
242
- // }
243
- // target = target.parentElement;
244
- // }
245
- // this.remove(peek);
246
- // }
247
174
  refresh() {
248
- location.reload();
175
+ location.reload();
249
176
  }
250
177
  getHostForElement() {
251
- const ce = PopupService_1.default.lastTarget;
252
- if (!ce) {
253
- return null;
254
- }
255
- for (const iterator of this.hostForElementFunc) {
256
- const e = iterator(ce);
257
- if (e) {
258
- return e;
259
- }
260
- }
178
+ const ce = PopupService.lastTarget;
179
+ if (!ce) {
261
180
  return null;
181
+ }
182
+ for (const iterator of this.hostForElementFunc) {
183
+ const e = iterator(ce);
184
+ if (e) {
185
+ return e;
186
+ }
187
+ }
188
+ return null;
262
189
  }
263
190
  refreshScreen() {
264
- const height = this.screen.height = window.innerHeight || document.body.clientHeight;
265
- const width = this.screen.width = window.innerWidth || document.body.clientWidth;
266
- this.screen.scrollLeft = window.scrollX || document.body.scrollLeft || 0;
267
- this.screen.scrollTop = window.scrollY || document.body.scrollTop || 0;
268
- this.screen.orientation = width > height ? "landscape" : "portrait";
191
+ const height = this.screen.height = window.innerHeight || document.body.clientHeight;
192
+ const width = this.screen.width = window.innerWidth || document.body.clientWidth;
193
+ this.screen.scrollLeft = window.scrollX || document.body.scrollLeft || 0;
194
+ this.screen.scrollTop = window.scrollY || document.body.scrollTop || 0;
195
+ this.screen.orientation = width > height ? "landscape" : "portrait";
269
196
  }
270
197
  notify(message, title, type, delay) {
271
- return __awaiter(this, void 0, void 0, function* () {
272
- try {
273
- const notification = (0, NotificationPopup_1.default)({ message, type });
274
- const cancelToken = new types_1.CancelToken(delay !== null && delay !== void 0 ? delay : 5000);
275
- yield notification.showWindow(notification, {
276
- title,
277
- cancelToken
278
- });
279
- }
280
- catch (ex) {
281
- console.error(ex);
282
- }
283
- });
198
+ return __awaiter(this, void 0, void 0, function* () {
199
+ try {
200
+ const notification = NotificationPopup({
201
+ message,
202
+ type
203
+ });
204
+ const cancelToken = new CancelToken(delay !== null && delay !== void 0 ? delay : 5000);
205
+ yield notification.showWindow(notification, {
206
+ title,
207
+ cancelToken
208
+ });
209
+ } catch (ex) {
210
+ console.error(ex);
211
+ }
212
+ });
284
213
  }
285
- // protected registerForPopup(): void {
286
- // if (window) {
287
- // window.addEventListener("click", (e) => {
288
- // this.closePopup(e);
289
- // });
290
- // }
291
- // }
292
214
  openWindow(url, options) {
293
- return __awaiter(this, void 0, void 0, function* () {
294
- // this is because current target is not yet set
295
- yield Atom_1.Atom.delay(1);
296
- const lastTarget = PopupService_1.default.lastTarget;
297
- const { view: popup, returnPromise, disposables } = yield AtomLoader_1.AtomLoader.loadView(url, this.app, true, () => this.app.resolve(AtomWindowViewModel_1.AtomWindowViewModel, true));
298
- if (options && options.onInit) {
299
- options.onInit(popup);
300
- }
301
- const cancelToken = options.cancelToken;
302
- if (cancelToken) {
303
- if (cancelToken.cancelled) {
304
- this.app.callLater(() => {
305
- this.remove(popup, true);
306
- });
307
- }
308
- cancelToken.registerForCancel(() => {
309
- this.remove(popup, true);
310
- });
311
- }
312
- const e = popup.element;
313
- let isPopup = true;
314
- if (popup instanceof AtomWindow_1.AtomWindow) {
315
- isPopup = false;
316
- e.style.opacity = "0";
317
- }
318
- popup.registerDisposable({
319
- dispose: () => {
320
- PopupService_1.default.lastTarget = lastTarget;
321
- }
215
+ return __awaiter(this, void 0, void 0, function* () {
216
+ yield Atom.delay(1);
217
+ const lastTarget = PopupService.lastTarget;
218
+ const {
219
+ view: popup,
220
+ returnPromise,
221
+ disposables
222
+ } = yield AtomLoader.loadView(url, this.app, true, () => this.app.resolve(AtomWindowViewModel, true));
223
+ if (options && options.onInit) {
224
+ options.onInit(popup);
225
+ }
226
+ const cancelToken = options.cancelToken;
227
+ if (cancelToken) {
228
+ if (cancelToken.cancelled) {
229
+ this.app.callLater(() => {
230
+ this.remove(popup, true);
322
231
  });
323
- if (isPopup) {
324
- // register for close...
325
- const root = popup.element;
326
- const last = PopupService_1.default.lastTarget;
327
- const closePopup = (et) => {
328
- let target = et.target;
329
- while (target) {
330
- if (target === root || target === last) {
331
- return;
332
- }
333
- target = target.parentElement;
334
- }
335
- this.remove(popup, true);
336
- };
337
- document.body.addEventListener("click", closePopup);
338
- popup.registerDisposable({ dispose: () => {
339
- document.body.removeEventListener("click", closePopup);
340
- } });
232
+ }
233
+ cancelToken.registerForCancel(() => {
234
+ this.remove(popup, true);
235
+ });
236
+ }
237
+ const e = popup.element;
238
+ let isPopup = true;
239
+ if (popup instanceof AtomWindow) {
240
+ isPopup = false;
241
+ e.style.opacity = "0";
242
+ }
243
+ popup.registerDisposable({
244
+ dispose: () => {
245
+ PopupService.lastTarget = lastTarget;
246
+ }
247
+ });
248
+ if (isPopup) {
249
+ const root = popup.element;
250
+ const last = PopupService.lastTarget;
251
+ const closePopup = et => {
252
+ let target = et.target;
253
+ while (target) {
254
+ if (target === root || target === last) {
255
+ return;
256
+ }
257
+ target = target.parentElement;
341
258
  }
342
- e._logicalParent = lastTarget;
343
- e.sourceUrl = url;
344
- const pvm = popup.viewModel;
345
- if (pvm) {
346
- let ce = PopupService_1.default.lastTarget;
347
- if (ce) {
348
- while (!ce.atomControl) {
349
- ce = ce.parentElement;
350
- if (!ce) {
351
- break;
352
- }
353
- }
354
- if (ce && ce.atomControl && ce.atomControl.viewModel) {
355
- pvm.parent = ce.atomControl.viewModel;
356
- }
357
- }
259
+ this.remove(popup, true);
260
+ };
261
+ document.body.addEventListener("click", closePopup);
262
+ popup.registerDisposable({
263
+ dispose: () => {
264
+ document.body.removeEventListener("click", closePopup);
358
265
  }
359
- const theme = this.app.get(AtomStyleSheet_1.AtomStyleSheet).getNamedStyle(AtomPopupStyle_1.AtomPopupStyle);
360
- e.style.zIndex = 10000 + this.lastPopupID + "";
361
- const isNotification = popup instanceof AtomNotification_1.default;
362
- if (isPopup) {
363
- const sr = AtomUI_1.AtomUI.screenOffset(PopupService_1.default.lastTarget);
364
- const x = sr.x;
365
- const y = sr.y;
366
- const h = sr.height;
367
- e.style.position = "absolute";
368
- e.style.left = x + "px";
369
- e.style.top = (y + h) + "px";
370
- e.classList.add(theme.name);
371
- this.popups.push(popup);
372
- disposables.add(() => {
373
- this.popups.remove(popup);
374
- });
375
- document.body.appendChild(e);
376
- if (isNotification) {
377
- e.style.opacity = "0";
378
- this.centerElement(popup);
379
- }
266
+ });
267
+ }
268
+ e._logicalParent = lastTarget;
269
+ e.sourceUrl = url;
270
+ const pvm = popup.viewModel;
271
+ if (pvm) {
272
+ let ce = PopupService.lastTarget;
273
+ if (ce) {
274
+ while (!ce.atomControl) {
275
+ ce = ce.parentElement;
276
+ if (!ce) {
277
+ break;
278
+ }
380
279
  }
381
- else {
382
- const eHost = (options === null || options === void 0 ? void 0 : options.modal) ? null : this.getHostForElement();
383
- if (eHost) {
384
- eHost.appendChild(e);
385
- }
386
- else {
387
- const host = document.createElement("div");
388
- document.body.appendChild(host);
389
- host.style.position = "absolute";
390
- host.appendChild(e);
391
- disposables.add({
392
- dispose() {
393
- host.remove();
394
- }
395
- });
396
- this.refreshScreen();
397
- popup.bind(host, "styleLeft", [["this", "scrollLeft"]], false, StyleBuilder_1.cssNumberToString, this.screen);
398
- popup.bind(host, "styleTop", [["this", "scrollTop"]], false, StyleBuilder_1.cssNumberToString, this.screen);
399
- popup.bind(host, "styleWidth", [["this", "width"]], false, StyleBuilder_1.cssNumberToString, this.screen);
400
- popup.bind(host, "styleHeight", [["this", "height"]], false, StyleBuilder_1.cssNumberToString, this.screen);
401
- }
280
+ if (ce && ce.atomControl && ce.atomControl.viewModel) {
281
+ pvm.parent = ce.atomControl.viewModel;
402
282
  }
403
- // this.currentTarget = e;
404
- popup.bindEvent(document.body, "keyup", (keyboardEvent) => {
405
- if (keyboardEvent.key === "Escape") {
406
- this.app.runAsync(() => this.remove(popup));
407
- }
408
- });
283
+ }
284
+ }
285
+ const theme = this.app.get(AtomStyleSheet).getNamedStyle(AtomPopupStyle);
286
+ e.style.zIndex = 10000 + this.lastPopupID + "";
287
+ const isNotification = popup instanceof AtomNotification;
288
+ if (isPopup) {
289
+ const sr = AtomUI.screenOffset(PopupService.lastTarget);
290
+ const x = sr.x;
291
+ const y = sr.y;
292
+ const h = sr.height;
293
+ e.style.position = "absolute";
294
+ e.style.left = x + "px";
295
+ e.style.top = y + h + "px";
296
+ e.classList.add(theme.name);
297
+ this.popups.push(popup);
298
+ disposables.add(() => {
299
+ this.popups.remove(popup);
300
+ });
301
+ document.body.appendChild(e);
302
+ if (isNotification) {
303
+ e.style.opacity = "0";
304
+ this.centerElement(popup);
305
+ }
306
+ } else {
307
+ const eHost = (options === null || options === void 0 ? void 0 : options.modal) ? null : this.getHostForElement();
308
+ if (eHost) {
309
+ eHost.appendChild(e);
310
+ } else {
311
+ const host = document.createElement("div");
312
+ document.body.appendChild(host);
313
+ host.style.position = "absolute";
314
+ host.appendChild(e);
409
315
  disposables.add({
410
- dispose: () => {
411
- e.innerHTML = "";
412
- e.remove();
413
- // this.currentTarget = null;
414
- }
316
+ dispose() {
317
+ host.remove();
318
+ }
415
319
  });
416
- return yield returnPromise;
320
+ this.refreshScreen();
321
+ popup.bind(host, "styleLeft", [["this", "scrollLeft"]], false, cssNumberToString, this.screen);
322
+ popup.bind(host, "styleTop", [["this", "scrollTop"]], false, cssNumberToString, this.screen);
323
+ popup.bind(host, "styleWidth", [["this", "width"]], false, cssNumberToString, this.screen);
324
+ popup.bind(host, "styleHeight", [["this", "height"]], false, cssNumberToString, this.screen);
325
+ }
326
+ }
327
+ popup.bindEvent(document.body, "keyup", keyboardEvent => {
328
+ if (keyboardEvent.key === "Escape") {
329
+ this.app.runAsync(() => this.remove(popup));
330
+ }
331
+ });
332
+ disposables.add({
333
+ dispose: () => {
334
+ e.innerHTML = "";
335
+ e.remove();
336
+ }
417
337
  });
338
+ return yield returnPromise;
339
+ });
418
340
  }
419
341
  centerElement(c) {
420
- const e = c.element;
421
- const parent = e.parentElement;
422
- if (parent === window || parent === document.body) {
423
- setTimeout(() => {
424
- const ew = (document.body.offsetWidth - e.offsetWidth) / 2;
425
- const eh = window.scrollY + ((window.innerHeight - e.offsetHeight) / 2);
426
- e.style.left = `${ew}px`;
427
- e.style.top = `${eh}px`;
428
- e.style.removeProperty("opacity");
429
- }, 200);
430
- return;
431
- }
432
- if (parent.offsetWidth <= 0 || parent.offsetHeight <= 0) {
433
- setTimeout(() => {
434
- this.centerElement(c);
435
- }, 100);
436
- return;
437
- }
438
- if (e.offsetWidth <= 0 || e.offsetHeight <= 0) {
439
- setTimeout(() => {
440
- this.centerElement(c);
441
- }, 100);
442
- return;
443
- }
444
- const x = (parent.offsetWidth - e.offsetWidth) / 2;
445
- const y = (parent.offsetHeight - e.offsetHeight) / 2;
446
- e.style.left = `${x}px`;
447
- e.style.top = `${y}px`;
448
- e.style.removeProperty("opacity");
342
+ const e = c.element;
343
+ const parent = e.parentElement;
344
+ if (parent === window || parent === document.body) {
345
+ setTimeout(() => {
346
+ const ew = (document.body.offsetWidth - e.offsetWidth) / 2;
347
+ const eh = window.scrollY + (window.innerHeight - e.offsetHeight) / 2;
348
+ e.style.left = `${ew}px`;
349
+ e.style.top = `${eh}px`;
350
+ e.style.removeProperty("opacity");
351
+ }, 200);
352
+ return;
353
+ }
354
+ if (parent.offsetWidth <= 0 || parent.offsetHeight <= 0) {
355
+ setTimeout(() => {
356
+ this.centerElement(c);
357
+ }, 100);
358
+ return;
359
+ }
360
+ if (e.offsetWidth <= 0 || e.offsetHeight <= 0) {
361
+ setTimeout(() => {
362
+ this.centerElement(c);
363
+ }, 100);
364
+ return;
365
+ }
366
+ const x = (parent.offsetWidth - e.offsetWidth) / 2;
367
+ const y = (parent.offsetHeight - e.offsetHeight) / 2;
368
+ e.style.left = `${x}px`;
369
+ e.style.top = `${y}px`;
370
+ e.style.removeProperty("opacity");
449
371
  }
450
- };
451
- /**
452
- * This is just to preload Alert window.
453
- */
454
- WindowService.alertWindow = AtomAlertWindow_1.default;
455
- WindowService = __decorate([
456
- RegisterSingleton_1.RegisterSingleton,
457
- __param(0, Inject_1.Inject),
458
- __param(1, Inject_1.Inject),
459
- __metadata("design:paramtypes", [App_1.App,
460
- JsonService_1.JsonService])
461
- ], WindowService);
462
- exports.WindowService = WindowService;
463
- });
464
- //# sourceMappingURL=WindowService.js.map
372
+ });
373
+ WindowService.alertWindow = AtomAlertWindow;
374
+ _export("WindowService", WindowService = __decorate([RegisterSingleton, __param(0, Inject), __param(1, Inject), __metadata("design:paramtypes", [App, JsonService])], WindowService));
375
+ }
376
+ };
377
+ });
378
+ //# sourceMappingURL=/home/runner/work/core/core/dist/web/services/WindowService.js.map