@web-atoms/core 2.1.479 → 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 (296) 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.js +160 -172
  205. package/dist/web/core/AtomUI.js.map +1 -1
  206. package/dist/web/core/Encoder.js +152 -199
  207. package/dist/web/core/Encoder.js.map +1 -1
  208. package/dist/web/core/HtmlNode.js +165 -161
  209. package/dist/web/core/HtmlNode.js.map +1 -1
  210. package/dist/web/images/Busy.js +13 -14
  211. package/dist/web/images/Busy.js.map +1 -1
  212. package/dist/web/images/BusyDataUrl.js +14 -882
  213. package/dist/web/images/BusyDataUrl.js.map +1 -1
  214. package/dist/web/images/Button.js +13 -15
  215. package/dist/web/images/Button.js.map +1 -1
  216. package/dist/web/images/ButtonDataUrl.js +14 -43
  217. package/dist/web/images/ButtonDataUrl.js.map +1 -1
  218. package/dist/web/images/CloseButton.js +13 -14
  219. package/dist/web/images/CloseButton.js.map +1 -1
  220. package/dist/web/images/CloseButtonDataUrl.js +14 -43
  221. package/dist/web/images/CloseButtonDataUrl.js.map +1 -1
  222. package/dist/web/images/CloseButtonHover.js +13 -14
  223. package/dist/web/images/CloseButtonHover.js.map +1 -1
  224. package/dist/web/images/CloseButtonHoverDataUrl.js +14 -37
  225. package/dist/web/images/CloseButtonHoverDataUrl.js.map +1 -1
  226. package/dist/web/samples/MovieService.js +60 -49
  227. package/dist/web/samples/MovieService.js.map +1 -1
  228. package/dist/web/samples/demo/app.js +23 -23
  229. package/dist/web/samples/demo/app.js.map +1 -1
  230. package/dist/web/samples/demo/views/MovieList.js +64 -67
  231. package/dist/web/samples/demo/views/MovieList.js.map +1 -1
  232. package/dist/web/samples/demo/views/MovieListViewModel.js +102 -82
  233. package/dist/web/samples/demo/views/MovieListViewModel.js.map +1 -1
  234. package/dist/web/samples/tabs/app.js +57 -39
  235. package/dist/web/samples/tabs/app.js.map +1 -1
  236. package/dist/web/samples/tabs/views/List.js +13 -14
  237. package/dist/web/samples/tabs/views/List.js.map +1 -1
  238. package/dist/web/samples/tabs/views/ListDataUrl.js +14 -18
  239. package/dist/web/samples/tabs/views/ListDataUrl.js.map +1 -1
  240. package/dist/web/samples/tabs/views/Page1.js +94 -74
  241. package/dist/web/samples/tabs/views/Page1.js.map +1 -1
  242. package/dist/web/samples/tabs/views/TabHost.js +82 -63
  243. package/dist/web/samples/tabs/views/TabHost.js.map +1 -1
  244. package/dist/web/samples/window/WindowSample.js +27 -23
  245. package/dist/web/samples/window/WindowSample.js.map +1 -1
  246. package/dist/web/services/MarkdownService.js +35 -51
  247. package/dist/web/services/MarkdownService.js.map +1 -1
  248. package/dist/web/services/NotificationPopup.js +48 -44
  249. package/dist/web/services/NotificationPopup.js.map +1 -1
  250. package/dist/web/services/PopupService.js +770 -940
  251. package/dist/web/services/PopupService.js.map +1 -1
  252. package/dist/web/services/WebBusyIndicatorService.js +80 -86
  253. package/dist/web/services/WebBusyIndicatorService.js.map +1 -1
  254. package/dist/web/services/WindowService.js +332 -418
  255. package/dist/web/services/WindowService.js.map +1 -1
  256. package/dist/web/styles/AtomAlertWindowStyle.js +44 -34
  257. package/dist/web/styles/AtomAlertWindowStyle.js.map +1 -1
  258. package/dist/web/styles/AtomFrameStyle.js +27 -20
  259. package/dist/web/styles/AtomFrameStyle.js.map +1 -1
  260. package/dist/web/styles/AtomListBoxStyle.js +34 -32
  261. package/dist/web/styles/AtomListBoxStyle.js.map +1 -1
  262. package/dist/web/styles/AtomNotificationStyle.js +33 -33
  263. package/dist/web/styles/AtomNotificationStyle.js.map +1 -1
  264. package/dist/web/styles/AtomPageLinkStyle.js +21 -22
  265. package/dist/web/styles/AtomPageLinkStyle.js.map +1 -1
  266. package/dist/web/styles/AtomPopupStyle.js +21 -23
  267. package/dist/web/styles/AtomPopupStyle.js.map +1 -1
  268. package/dist/web/styles/AtomStyle.js +69 -73
  269. package/dist/web/styles/AtomStyle.js.map +1 -1
  270. package/dist/web/styles/AtomStyleSheet.js +54 -57
  271. package/dist/web/styles/AtomStyleSheet.js.map +1 -1
  272. package/dist/web/styles/AtomTabbedPageStyle.js +110 -105
  273. package/dist/web/styles/AtomTabbedPageStyle.js.map +1 -1
  274. package/dist/web/styles/AtomTheme.js +62 -65
  275. package/dist/web/styles/AtomTheme.js.map +1 -1
  276. package/dist/web/styles/AtomToggleButtonBarStyle.js +68 -49
  277. package/dist/web/styles/AtomToggleButtonBarStyle.js.map +1 -1
  278. package/dist/web/styles/AtomWindowStyle.js +108 -117
  279. package/dist/web/styles/AtomWindowStyle.js.map +1 -1
  280. package/dist/web/styles/CSS.js +71 -81
  281. package/dist/web/styles/CSS.js.map +1 -1
  282. package/dist/web/styles/CommonStyles.js +60 -66
  283. package/dist/web/styles/CommonStyles.js.map +1 -1
  284. package/dist/web/styles/IStyleDeclaration.js +9 -13
  285. package/dist/web/styles/IStyleDeclaration.js.map +1 -1
  286. package/dist/web/styles/StyleBuilder.js +74 -75
  287. package/dist/web/styles/StyleBuilder.js.map +1 -1
  288. package/dist/xf/XFApp.js +54 -50
  289. package/dist/xf/XFApp.js.map +1 -1
  290. package/dist/xf/controls/AtomXFControl.js +233 -229
  291. package/dist/xf/controls/AtomXFControl.js.map +1 -1
  292. package/dist/xf/services/XFBusyIndicatorService.js +34 -34
  293. package/dist/xf/services/XFBusyIndicatorService.js.map +1 -1
  294. package/dist/xf/services/XFNavigationService.js +150 -133
  295. package/dist/xf/services/XFNavigationService.js.map +1 -1
  296. package/package.json +2 -1
@@ -1,24 +1,19 @@
1
- // if (typeof Map === "undefined") {
2
- (function (factory) {
3
- if (typeof module === "object" && typeof module.exports === "object") {
4
- var v = factory(require, exports);
5
- if (v !== undefined) module.exports = v;
6
- }
7
- else if (typeof define === "function" && define.amd) {
8
- define(["require", "exports"], factory);
9
- }
10
- })(function (require, exports) {
11
- "use strict";
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- // tslint:disable-next-line:only-arrow-functions
14
- Map.prototype.getOrCreate = function (key, factory) {
1
+ System.register([], function (_export, _context) {
2
+ "use strict";
3
+
4
+ return {
5
+ setters: [],
6
+ execute: function () {
7
+ Map.prototype.getOrCreate = function (key, factory) {
15
8
  let item = this.get(key);
16
9
  if (item === undefined) {
17
- item = factory(key);
18
- this.set(key, item);
10
+ item = factory(key);
11
+ this.set(key, item);
19
12
  }
20
13
  return item;
21
- };
22
- exports.default = Map;
23
- });
24
- //# sourceMappingURL=AtomMap.js.map
14
+ };
15
+ _export("default", Map);
16
+ }
17
+ };
18
+ });
19
+ //# sourceMappingURL=/home/runner/work/core/core/dist/core/AtomMap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomMap.js","sourceRoot":"","sources":["../../src/core/AtomMap.ts"],"names":[],"mappings":"AAAA,oCAAoC;;;;;;;;;;;;IA+EpC,gDAAgD;IAChD,GAAG,CAAC,SAAS,CAAC,WAAW,GAAG,UAAS,GAAQ,EAAE,OAA0B;QACrE,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACzB,IAAI,IAAI,KAAK,SAAS,EAAE;YACpB,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;YACpB,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;SACvB;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAC;IAEF,kBAAe,GAAG,CAAC"}
1
+ {"version":3,"mappings":";;;;;;MAgFAA,GAAG,CAACC,SAAS,CAACC,WAAW,GAAG,UAASC,GAAQ,EAAEC,OAA0B;QACrE,IAAIC,IAAI,GAAG,IAAI,CAACC,GAAG,CAACH,GAAG,CAAC;QACxB,IAAIE,IAAI,KAAKE,SAAS,EAAE;UACpBF,IAAI,GAAGD,OAAO,CAACD,GAAG,CAAC;UACnB,IAAI,CAACK,GAAG,CAACL,GAAG,EAAEE,IAAI,CAAC;;QAEvB,OAAOA,IAAI;MACf,CAAC;MAAC,mBAEaL,GAAG;IAAA;EAAA;AAAA","names":["Map","prototype","getOrCreate","key","factory","item","get","undefined","set"],"sourceRoot":"","sources":["../../src/core/AtomMap.ts"],"sourcesContent":[null]}
@@ -1,76 +1,36 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
5
- }
6
- else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.AtomOnce = void 0;
13
- /**
14
- * AtomOnce will execute given method only once and it will prevent recursive calls.
15
- * This is important when you want to update source and destination and prevent recursive calls.
16
- * @example
17
- * private valueOnce: AtomOnce = new AtomOnce();
18
- *
19
- * private onValueChanged(): void {
20
- * valueOnce.run(()=> {
21
- * this.value = compute(this.target);
22
- * });
23
- * }
24
- *
25
- * private onTargetChanged(): void {
26
- * valueOnce.run(() => {
27
- * this.target = computeInverse(this.value);
28
- * });
29
- * }
30
- */
31
- class AtomOnce {
32
- /**
33
- * AtomOnce will execute given method only once and it will prevent recursive calls.
34
- * This is important when you want to update source and destination and prevent recursive calls.
35
- * @example
36
- * private valueOnce: AtomOnce = new AtomOnce();
37
- *
38
- * private onValueChanged(): void {
39
- * valueOnce.run(()=> {
40
- * this.value = compute(this.target);
41
- * });
42
- * }
43
- *
44
- * private onTargetChanged(): void {
45
- * valueOnce.run(() => {
46
- * this.target = computeInverse(this.value);
47
- * });
48
- * }
49
- */
1
+ System.register([], function (_export, _context) {
2
+ "use strict";
3
+
4
+ var AtomOnce;
5
+ _export("AtomOnce", void 0);
6
+ return {
7
+ setters: [],
8
+ execute: function () {
9
+ _export("AtomOnce", AtomOnce = class AtomOnce {
50
10
  run(f) {
51
- if (this.isRunning) {
52
- return;
53
- }
54
- let isAsync = false;
55
- try {
56
- this.isRunning = true;
57
- const p = f();
58
- if (p && p.then && p.catch) {
59
- isAsync = true;
60
- p.then(() => {
61
- this.isRunning = false;
62
- }).catch(() => {
63
- this.isRunning = false;
64
- });
65
- }
11
+ if (this.isRunning) {
12
+ return;
13
+ }
14
+ let isAsync = false;
15
+ try {
16
+ this.isRunning = true;
17
+ const p = f();
18
+ if (p && p.then && p.catch) {
19
+ isAsync = true;
20
+ p.then(() => {
21
+ this.isRunning = false;
22
+ }).catch(() => {
23
+ this.isRunning = false;
24
+ });
66
25
  }
67
- finally {
68
- if (!isAsync) {
69
- this.isRunning = false;
70
- }
26
+ } finally {
27
+ if (!isAsync) {
28
+ this.isRunning = false;
71
29
  }
30
+ }
72
31
  }
32
+ });
73
33
  }
74
- exports.AtomOnce = AtomOnce;
75
- });
76
- //# sourceMappingURL=AtomOnce.js.map
34
+ };
35
+ });
36
+ //# sourceMappingURL=/home/runner/work/core/core/dist/core/AtomOnce.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AtomOnce.js","sourceRoot":"","sources":["../../src/core/AtomOnce.ts"],"names":[],"mappings":";;;;;;;;;;;;IAAA;;;;;;;;;;;;;;;;;OAiBG;IACH,MAAa,QAAQ;QAGjB;;;;;;;;;;;;;;;;;WAiBG;QACI,GAAG,CAAC,CAAY;YACnB,IAAI,IAAI,CAAC,SAAS,EAAE;gBAChB,OAAO;aACV;YACD,IAAI,OAAO,GAAY,KAAK,CAAC;YAC7B,IAAI;gBACA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;gBACtB,MAAM,CAAC,GAAG,CAAC,EAAkB,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,EAAE;oBACxB,OAAO,GAAG,IAAI,CAAC;oBACf,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;wBACR,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;oBAC3B,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;oBAC3B,CAAC,CAAC,CAAC;iBACN;aACJ;oBAAS;gBACN,IAAI,CAAC,OAAO,EAAE;oBACV,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;iBAC1B;aACJ;QACL,CAAC;KAEJ;IA5CD,4BA4CC"}
1
+ {"version":3,"mappings":";;;MAkBaA,QAAQ;EAAA;EAAA;IAAA;IAAA;MAAA,oBAARA,QAAQ,GAAf,MAAOA,QAAQ;QAqBVC,GAAG,CAACC,CAAY;UACnB,IAAI,IAAI,CAACC,SAAS,EAAE;YAChB;;UAEJ,IAAIC,OAAO,GAAY,KAAK;UAC5B,IAAI;YACA,IAAI,CAACD,SAAS,GAAG,IAAI;YACrB,MAAME,CAAC,GAAGH,CAAC,EAAkB;YAC7B,IAAIG,CAAC,IAAIA,CAAC,CAACC,IAAI,IAAID,CAAC,CAACE,KAAK,EAAE;cACxBH,OAAO,GAAG,IAAI;cACdC,CAAC,CAACC,IAAI,CAAC,MAAK;gBACR,IAAI,CAACH,SAAS,GAAG,KAAK;cAC1B,CAAC,CAAC,CAACI,KAAK,CAAC,MAAK;gBACV,IAAI,CAACJ,SAAS,GAAG,KAAK;cAC1B,CAAC,CAAC;;WAET,SAAS;YACN,IAAI,CAACC,OAAO,EAAE;cACV,IAAI,CAACD,SAAS,GAAG,KAAK;;;QAGlC;OAEH;IAAA;EAAA;AAAA","names":["AtomOnce","run","f","isRunning","isAsync","p","then","catch"],"sourceRoot":"","sources":["../../src/core/AtomOnce.ts"],"sourcesContent":[null]}
@@ -1,271 +1,258 @@
1
- (function (factory) {
2
- if (typeof module === "object" && typeof module.exports === "object") {
3
- var v = factory(require, exports);
4
- if (v !== undefined) module.exports = v;
5
- }
6
- else if (typeof define === "function" && define.amd) {
7
- define(["require", "exports", "./AtomBinder"], factory);
8
- }
9
- })(function (require, exports) {
10
- "use strict";
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- const AtomBinder_1 = require("./AtomBinder");
13
- const isSelectableItem = {};
14
- class AtomSelectableList {
1
+ System.register(["./AtomBinder"], function (_export, _context) {
2
+ "use strict";
3
+
4
+ var AtomBinder, AtomSelectableList, isSelectableItem;
5
+ _export("default", void 0);
6
+ return {
7
+ setters: [function (_AtomBinder) {
8
+ AtomBinder = _AtomBinder.AtomBinder;
9
+ }],
10
+ execute: function () {
11
+ isSelectableItem = {};
12
+ _export("default", AtomSelectableList = class AtomSelectableList {
15
13
  get selectedIndex() {
16
- if (this.selectedItems.length) {
17
- return this.items.indexOf(this.selectedItems[0]);
18
- }
19
- return -1;
14
+ if (this.selectedItems.length) {
15
+ return this.items.indexOf(this.selectedItems[0]);
16
+ }
17
+ return -1;
20
18
  }
21
19
  set selectedIndex(n) {
22
- this.selectedItems.clear();
23
- if (n === -1) {
24
- this.updateBindings(true);
25
- return;
26
- }
27
- this.selectedItems.add(this.items[n]);
20
+ this.selectedItems.clear();
21
+ if (n === -1) {
22
+ this.updateBindings(true);
23
+ return;
24
+ }
25
+ this.selectedItems.add(this.items[n]);
28
26
  }
29
27
  get selectedItem() {
30
- if (!this.selectedItems.length) {
31
- return null;
32
- }
33
- const s = this.selectedItems[0];
34
- return s ? s.item : null;
28
+ if (!this.selectedItems.length) {
29
+ return null;
30
+ }
31
+ const s = this.selectedItems[0];
32
+ return s ? s.item : null;
35
33
  }
36
34
  set selectedItem(item) {
37
- this.selectedItems.clear();
38
- if (!item) {
39
- this.updateBindings(true);
40
- return;
41
- }
42
- const si = this.items.find((s) => s.item === item);
43
- si.select();
35
+ this.selectedItems.clear();
36
+ if (!item) {
37
+ this.updateBindings(true);
38
+ return;
39
+ }
40
+ const si = this.items.find(s => s.item === item);
41
+ si.select();
44
42
  }
45
43
  get label() {
46
- const labels = this.selectedItems.map((x) => this.labelPath(x.item));
47
- if (this.allowMultipleSelection) {
48
- return labels;
49
- }
50
- return labels[0] || null;
44
+ const labels = this.selectedItems.map(x => this.labelPath(x.item));
45
+ if (this.allowMultipleSelection) {
46
+ return labels;
47
+ }
48
+ return labels[0] || null;
51
49
  }
52
50
  get selectAll() {
53
- if (this.items.length) {
54
- return this.items.length === this.selectedItems.length;
55
- }
56
- return false;
51
+ if (this.items.length) {
52
+ return this.items.length === this.selectedItems.length;
53
+ }
54
+ return false;
57
55
  }
58
56
  set selectAll(v) {
59
- if (v) {
60
- this.selectedItems.splice(0, this.selectedItems.length, ...this.items);
61
- }
62
- else {
63
- this.selectedItems.clear();
64
- }
65
- AtomBinder_1.AtomBinder.refreshItems(this.selectedItems);
66
- for (const iterator of this.items) {
67
- AtomBinder_1.AtomBinder.refreshValue(iterator, "selected");
68
- }
57
+ if (v) {
58
+ this.selectedItems.splice(0, this.selectedItems.length, ...this.items);
59
+ } else {
60
+ this.selectedItems.clear();
61
+ }
62
+ AtomBinder.refreshItems(this.selectedItems);
63
+ for (const iterator of this.items) {
64
+ AtomBinder.refreshValue(iterator, "selected");
65
+ }
69
66
  }
70
67
  get value() {
71
- if (this.allowMultipleSelection && this.items.length) {
72
- return this.selectedItems.map((x) => this.valuePath(x.item));
73
- }
74
- if (this.selectedItems.length) {
75
- return this.valuePath(this.selectedItems[0].item);
76
- }
77
- return this.mValue;
68
+ if (this.allowMultipleSelection && this.items.length) {
69
+ return this.selectedItems.map(x => this.valuePath(x.item));
70
+ }
71
+ if (this.selectedItems.length) {
72
+ return this.valuePath(this.selectedItems[0].item);
73
+ }
74
+ return this.mValue;
78
75
  }
79
76
  set value(v) {
80
- this.mValue = v;
81
- if (!this.allowMultipleSelection) {
82
- v = [v];
83
- }
84
- const va = v;
85
- this.replaceSelectedInternal(va, false);
77
+ this.mValue = v;
78
+ if (!this.allowMultipleSelection) {
79
+ v = [v];
80
+ }
81
+ const va = v;
82
+ this.replaceSelectedInternal(va, false);
86
83
  }
87
84
  constructor(allowMultipleSelection = false, valuePath, labelPath) {
88
- this.allowMultipleSelection = allowMultipleSelection;
89
- this.valuePath = valuePath;
90
- this.labelPath = labelPath;
91
- this.selectedItems = [];
92
- this.mValue = undefined;
93
- if (!this.valuePath) {
94
- this.valuePath = (x) => x;
95
- }
96
- if (!this.labelPath) {
97
- this.labelPath = (x) => x.label || x;
98
- }
99
- this.items = [];
85
+ this.allowMultipleSelection = allowMultipleSelection;
86
+ this.valuePath = valuePath;
87
+ this.labelPath = labelPath;
88
+ this.selectedItems = [];
89
+ this.mValue = undefined;
90
+ if (!this.valuePath) {
91
+ this.valuePath = x => x;
92
+ }
93
+ if (!this.labelPath) {
94
+ this.labelPath = x => x.label || x;
95
+ }
96
+ this.items = [];
100
97
  }
101
- /**
102
- * Remove all items
103
- * @param clearValue clear Selection
104
- */
105
98
  clear(clearValue = false) {
106
- if (clearValue) {
107
- this.replaceSelectedInternal([], false);
108
- }
109
- this.items.clear();
99
+ if (clearValue) {
100
+ this.replaceSelectedInternal([], false);
101
+ }
102
+ this.items.clear();
110
103
  }
111
- /**
112
- * Append to existing items
113
- * @param source source items
114
- * @param total total number of items
115
- */
116
104
  append(source, total) {
117
- let values = this.value;
118
- if (!this.allowMultipleSelection) {
119
- values = [values];
105
+ let values = this.value;
106
+ if (!this.allowMultipleSelection) {
107
+ values = [values];
108
+ }
109
+ const map = source.map(x => {
110
+ const item = this.newItem(x);
111
+ if (values && values.length) {
112
+ const v = this.valuePath(x);
113
+ if (values.find(v1 => v1 === v)) {
114
+ item.selected = true;
115
+ }
120
116
  }
121
- const map = source.map((x) => {
122
- const item = this.newItem(x);
123
- if (values && values.length) {
124
- const v = this.valuePath(x);
125
- if (values.find((v1) => v1 === v)) {
126
- item.selected = true;
127
- }
128
- }
129
- return item;
130
- });
131
- this.total = total;
132
- this.items.addAll(map);
133
- this.mValue = undefined;
134
- this.updateBindings(true);
117
+ return item;
118
+ });
119
+ this.total = total;
120
+ this.items.addAll(map);
121
+ this.mValue = undefined;
122
+ this.updateBindings(true);
135
123
  }
136
124
  replace(source, start, size) {
137
- let values = this.value;
138
- if (!this.allowMultipleSelection) {
139
- values = [values];
140
- }
141
- this.selectedItems.clear();
142
- const map = source.map((x) => {
143
- const item = this.newItem(x);
144
- if (values && values.length) {
145
- const v = this.valuePath(x);
146
- if (values.find((v1) => v1 === v)) {
147
- item.selected = true;
148
- }
149
- }
150
- return item;
151
- });
152
- const a = source;
153
- if (a.total) {
154
- map.total = a.total;
125
+ let values = this.value;
126
+ if (!this.allowMultipleSelection) {
127
+ values = [values];
128
+ }
129
+ this.selectedItems.clear();
130
+ const map = source.map(x => {
131
+ const item = this.newItem(x);
132
+ if (values && values.length) {
133
+ const v = this.valuePath(x);
134
+ if (values.find(v1 => v1 === v)) {
135
+ item.selected = true;
136
+ }
155
137
  }
156
- this.items.replace(map, start, size);
157
- this.mValue = undefined;
158
- this.updateBindings(true);
138
+ return item;
139
+ });
140
+ const a = source;
141
+ if (a.total) {
142
+ map.total = a.total;
143
+ }
144
+ this.items.replace(map, start, size);
145
+ this.mValue = undefined;
146
+ this.updateBindings(true);
159
147
  }
160
148
  find(item) {
161
- let itemF = (i) => item(i);
162
- if (typeof item !== "function") {
163
- const e = item;
164
- itemF = (i) => i === e;
165
- }
166
- return this.items.find((i) => itemF(i.item));
149
+ let itemF = i => item(i);
150
+ if (typeof item !== "function") {
151
+ const e = item;
152
+ itemF = i => i === e;
153
+ }
154
+ return this.items.find(i => itemF(i.item));
167
155
  }
168
156
  select(item) {
169
- const i = item;
170
- if (i.itemType === isSelectableItem) {
171
- i.select();
172
- return;
173
- }
174
- const si = this.items.find((x) => x.item === item);
175
- si.select();
157
+ const i = item;
158
+ if (i.itemType === isSelectableItem) {
159
+ i.select();
160
+ return;
161
+ }
162
+ const si = this.items.find(x => x.item === item);
163
+ si.select();
176
164
  }
177
165
  deselect(item) {
178
- const i = item;
179
- if (i.itemType === isSelectableItem) {
180
- i.deselect();
181
- return;
182
- }
183
- const si = this.items.find((x) => x.item === item);
184
- si.deselect();
166
+ const i = item;
167
+ if (i.itemType === isSelectableItem) {
168
+ i.deselect();
169
+ return;
170
+ }
171
+ const si = this.items.find(x => x.item === item);
172
+ si.deselect();
185
173
  }
186
174
  toggle(item) {
187
- const i = item;
188
- if (i.itemType === isSelectableItem) {
189
- i.toggle();
190
- return;
191
- }
192
- const si = this.items.find((x) => x.item === item);
193
- si.toggle();
175
+ const i = item;
176
+ if (i.itemType === isSelectableItem) {
177
+ i.toggle();
178
+ return;
179
+ }
180
+ const si = this.items.find(x => x.item === item);
181
+ si.toggle();
194
182
  }
195
183
  replaceSelected(va) {
196
- this.replaceSelectedInternal(va, true);
184
+ this.replaceSelectedInternal(va, true);
197
185
  }
198
186
  replaceSelectedInternal(va = [], refreshValue = true) {
199
- const newItems = !va ? [] : this.items.filter((x) => {
200
- const vp = this.valuePath(x.item);
201
- const existing = va.find((y) => y === vp);
202
- return existing ? true : false;
203
- });
204
- const s = this.selectedItems.slice();
205
- this.selectedItems.clear();
206
- for (const iterator of s) {
207
- AtomBinder_1.AtomBinder.refreshValue(iterator, "selected");
208
- }
209
- if (newItems.length) {
210
- this.selectedItems.replace(newItems);
211
- }
212
- this.updateBindings(refreshValue);
187
+ const newItems = !va ? [] : this.items.filter(x => {
188
+ const vp = this.valuePath(x.item);
189
+ const existing = va.find(y => y === vp);
190
+ return existing ? true : false;
191
+ });
192
+ const s = this.selectedItems.slice();
193
+ this.selectedItems.clear();
194
+ for (const iterator of s) {
195
+ AtomBinder.refreshValue(iterator, "selected");
196
+ }
197
+ if (newItems.length) {
198
+ this.selectedItems.replace(newItems);
199
+ }
200
+ this.updateBindings(refreshValue);
213
201
  }
214
202
  updateBindings(refreshValue = true) {
215
- // to prevent recursive updates...
216
- if (refreshValue) {
217
- AtomBinder_1.AtomBinder.refreshValue(this, "value");
218
- }
219
- AtomBinder_1.AtomBinder.refreshValue(this, "label");
220
- AtomBinder_1.AtomBinder.refreshValue(this, "selectAll");
221
- AtomBinder_1.AtomBinder.refreshValue(this, "selectedItem");
222
- AtomBinder_1.AtomBinder.refreshValue(this, "selectedIndex");
203
+ if (refreshValue) {
204
+ AtomBinder.refreshValue(this, "value");
205
+ }
206
+ AtomBinder.refreshValue(this, "label");
207
+ AtomBinder.refreshValue(this, "selectAll");
208
+ AtomBinder.refreshValue(this, "selectedItem");
209
+ AtomBinder.refreshValue(this, "selectedIndex");
223
210
  }
224
211
  newItem(item) {
225
- const self = this;
226
- const newItem = {
227
- item,
228
- itemType: isSelectableItem,
229
- select: null,
230
- deselect: null,
231
- toggle: null,
232
- get selected() {
233
- return self.selectedItems.find((x) => x === this) ? true : false;
234
- },
235
- set selected(v) {
236
- if (v) {
237
- if (this.selected) {
238
- return;
239
- }
240
- self.clearSelected();
241
- self.selectedItems.add(this);
242
- }
243
- else {
244
- self.selectedItems.remove(this);
245
- }
246
- AtomBinder_1.AtomBinder.refreshValue(this, "selected");
247
- self.updateBindings(true);
212
+ const self = this;
213
+ const newItem = {
214
+ item,
215
+ itemType: isSelectableItem,
216
+ select: null,
217
+ deselect: null,
218
+ toggle: null,
219
+ get selected() {
220
+ return self.selectedItems.find(x => x === this) ? true : false;
221
+ },
222
+ set selected(v) {
223
+ if (v) {
224
+ if (this.selected) {
225
+ return;
248
226
  }
249
- };
250
- newItem.select = () => {
251
- newItem.selected = true;
252
- };
253
- newItem.deselect = () => {
254
- newItem.selected = false;
255
- };
256
- newItem.toggle = () => {
257
- newItem.selected = !newItem.selected;
258
- };
259
- return newItem;
227
+ self.clearSelected();
228
+ self.selectedItems.add(this);
229
+ } else {
230
+ self.selectedItems.remove(this);
231
+ }
232
+ AtomBinder.refreshValue(this, "selected");
233
+ self.updateBindings(true);
234
+ }
235
+ };
236
+ newItem.select = () => {
237
+ newItem.selected = true;
238
+ };
239
+ newItem.deselect = () => {
240
+ newItem.selected = false;
241
+ };
242
+ newItem.toggle = () => {
243
+ newItem.selected = !newItem.selected;
244
+ };
245
+ return newItem;
260
246
  }
261
247
  clearSelected() {
262
- if (!this.allowMultipleSelection) {
263
- const si = this.selectedItem;
264
- this.selectedItems.clear();
265
- AtomBinder_1.AtomBinder.refreshValue(si, "selected");
266
- }
248
+ if (!this.allowMultipleSelection) {
249
+ const si = this.selectedItem;
250
+ this.selectedItems.clear();
251
+ AtomBinder.refreshValue(si, "selected");
252
+ }
267
253
  }
254
+ });
268
255
  }
269
- exports.default = AtomSelectableList;
270
- });
271
- //# sourceMappingURL=AtomSelectableList.js.map
256
+ };
257
+ });
258
+ //# sourceMappingURL=/home/runner/work/core/core/dist/core/AtomSelectableList.js.map