jpf 4.2.18 → 5.0.6

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 (292) hide show
  1. package/dist/controls/codeMirror/Editor/Editor.d.ts +19 -0
  2. package/dist/controls/codeMirror/Editor/Editor.js +151 -0
  3. package/dist/controls/codeMirror/Editor/Editor.js.map +1 -0
  4. package/dist/controls/codeMirror/index.d.ts +1 -2
  5. package/dist/controls/codeMirror/index.js +1 -2
  6. package/dist/controls/codeMirror/index.js.map +1 -1
  7. package/dist/controls/custom/FileSelector/FileSelector.d.ts +18 -18
  8. package/dist/controls/custom/FileSelector/FileSelector.js +47 -46
  9. package/dist/controls/custom/FileSelector/FileSelector.js.map +1 -1
  10. package/dist/controls/custom/LabeledControl/LabeledControl.d.ts +15 -15
  11. package/dist/controls/custom/LabeledControl/LabeledControl.js +31 -36
  12. package/dist/controls/custom/LabeledControl/LabeledControl.js.map +1 -1
  13. package/dist/controls/custom/ListItem/ListItem.d.ts +37 -36
  14. package/dist/controls/custom/ListItem/ListItem.js +62 -62
  15. package/dist/controls/custom/ListItem/ListItem.js.map +1 -1
  16. package/dist/controls/custom/index.d.ts +3 -3
  17. package/dist/controls/custom/index.js +3 -3
  18. package/dist/controls/html/Button/Button.d.ts +16 -16
  19. package/dist/controls/html/Button/Button.js +47 -50
  20. package/dist/controls/html/Button/Button.js.map +1 -1
  21. package/dist/controls/html/Div/Div.d.ts +14 -14
  22. package/dist/controls/html/Div/Div.js +23 -24
  23. package/dist/controls/html/Div/Div.js.map +1 -1
  24. package/dist/controls/html/Image/Image.d.ts +16 -16
  25. package/dist/controls/html/Image/Image.js +29 -28
  26. package/dist/controls/html/Image/Image.js.map +1 -1
  27. package/dist/controls/html/Input/Input.d.ts +34 -34
  28. package/dist/controls/html/Input/Input.js +166 -170
  29. package/dist/controls/html/Input/Input.js.map +1 -1
  30. package/dist/controls/html/Select/Select.d.ts +30 -30
  31. package/dist/controls/html/Select/Select.js +109 -110
  32. package/dist/controls/html/Select/Select.js.map +1 -1
  33. package/dist/controls/html/Span/Span.d.ts +11 -11
  34. package/dist/controls/html/Span/Span.js +22 -22
  35. package/dist/controls/html/Span/Span.js.map +1 -1
  36. package/dist/controls/html/index.d.ts +6 -6
  37. package/dist/controls/html/index.js +6 -6
  38. package/dist/controls/index.d.ts +14 -14
  39. package/dist/controls/index.js +14 -14
  40. package/dist/controls/index.js.map +1 -1
  41. package/dist/controls/{jsonViewAwesome → jsonViewerAwesome}/index.d.ts +1 -1
  42. package/dist/controls/{jsonViewAwesome → jsonViewerAwesome}/index.js +1 -1
  43. package/dist/controls/jsonViewerAwesome/index.js.map +1 -0
  44. package/dist/controls/jsonViewerAwesome/jsonFormatter/JsonFormatter.d.ts +28 -0
  45. package/dist/controls/{jsonViewAwesome → jsonViewerAwesome}/jsonFormatter/JsonFormatter.js +65 -65
  46. package/dist/controls/jsonViewerAwesome/jsonFormatter/JsonFormatter.js.map +1 -0
  47. package/dist/controls/kendo/Chart/Chart.d.ts +19 -19
  48. package/dist/controls/kendo/Chart/Chart.js +62 -62
  49. package/dist/controls/kendo/Chart/Chart.js.map +1 -1
  50. package/dist/controls/kendo/Culture/Culture.d.ts +1 -1
  51. package/dist/controls/kendo/Culture/Culture.js +25 -25
  52. package/dist/controls/kendo/Culture/Culture.js.map +1 -1
  53. package/dist/controls/kendo/DataSource/DataSource.d.ts +4 -4
  54. package/dist/controls/kendo/DataSource/DataSource.js +1 -1
  55. package/dist/controls/kendo/Editor/Editor.d.ts +14 -19
  56. package/dist/controls/kendo/Editor/Editor.js +94 -104
  57. package/dist/controls/kendo/Editor/Editor.js.map +1 -1
  58. package/dist/controls/kendo/Grid/Grid.d.ts +54 -54
  59. package/dist/controls/kendo/Grid/Grid.js +201 -218
  60. package/dist/controls/kendo/Grid/Grid.js.map +1 -1
  61. package/dist/controls/kendo/Menu/Menu.d.ts +15 -15
  62. package/dist/controls/kendo/Menu/Menu.js +90 -90
  63. package/dist/controls/kendo/Menu/Menu.js.map +1 -1
  64. package/dist/controls/kendo/ObservableObject/ObservableObject.d.ts +0 -5
  65. package/dist/controls/kendo/ObservableObject/ObservableObject.js +0 -34
  66. package/dist/controls/kendo/ObservableObject/ObservableObject.js.map +1 -1
  67. package/dist/controls/kendo/Treeview/Treeview.d.ts +17 -0
  68. package/dist/controls/kendo/{Tree/Tree.js → Treeview/Treeview.js} +107 -107
  69. package/dist/controls/kendo/Treeview/Treeview.js.map +1 -0
  70. package/dist/controls/kendo/Window/Window.d.ts +14 -0
  71. package/dist/controls/kendo/{Dialog/Dialog.js → Window/Window.js} +49 -49
  72. package/dist/controls/kendo/Window/Window.js.map +1 -0
  73. package/dist/controls/kendo/index.d.ts +8 -9
  74. package/dist/controls/kendo/index.js +8 -9
  75. package/dist/controls/kendo/index.js.map +1 -1
  76. package/dist/controls/leaflet/LabelControl/LabelControl.d.ts +12 -12
  77. package/dist/controls/leaflet/LabelControl/LabelControl.js +33 -33
  78. package/dist/controls/leaflet/LabelControl/LabelControl.js.map +1 -1
  79. package/dist/controls/leaflet/Map/Map.d.ts +45 -45
  80. package/dist/controls/leaflet/Map/Map.js +116 -115
  81. package/dist/controls/leaflet/Map/Map.js.map +1 -1
  82. package/dist/controls/leaflet/OpenStreetMapTileLayer/OpenStreetMapTileLayer.d.ts +8 -8
  83. package/dist/controls/leaflet/OpenStreetMapTileLayer/OpenStreetMapTileLayer.js +13 -13
  84. package/dist/controls/leaflet/OpenStreetMapTileLayer/OpenStreetMapTileLayer.js.map +1 -1
  85. package/dist/controls/leaflet/PointerEvent/PointerEvent.d.ts +2 -2
  86. package/dist/controls/leaflet/PointerEvent/PointerEvent.js +7 -7
  87. package/dist/controls/leaflet/PointerEvent/PointerEvent.js.map +1 -1
  88. package/dist/controls/leaflet/index.d.ts +4 -4
  89. package/dist/controls/leaflet/index.js +4 -4
  90. package/dist/controls/svg/Circle/Circle.d.ts +12 -12
  91. package/dist/controls/svg/Circle/Circle.js +20 -20
  92. package/dist/controls/svg/Circle/Circle.js.map +1 -1
  93. package/dist/controls/svg/Ellipse/Ellipse.d.ts +13 -13
  94. package/dist/controls/svg/Ellipse/Ellipse.js +21 -21
  95. package/dist/controls/svg/Ellipse/Ellipse.js.map +1 -1
  96. package/dist/controls/svg/ForeignObject/ForeignObject.d.ts +15 -14
  97. package/dist/controls/svg/ForeignObject/ForeignObject.js +21 -22
  98. package/dist/controls/svg/ForeignObject/ForeignObject.js.map +1 -1
  99. package/dist/controls/svg/Group/Group.d.ts +15 -14
  100. package/dist/controls/svg/Group/Group.js +21 -22
  101. package/dist/controls/svg/Group/Group.js.map +1 -1
  102. package/dist/controls/svg/Line/Line.d.ts +13 -13
  103. package/dist/controls/svg/Line/Line.js +21 -21
  104. package/dist/controls/svg/Line/Line.js.map +1 -1
  105. package/dist/controls/svg/Pattern/Pattern.d.ts +22 -22
  106. package/dist/controls/svg/Pattern/Pattern.js +22 -23
  107. package/dist/controls/svg/Pattern/Pattern.js.map +1 -1
  108. package/dist/controls/svg/Polygon/Polygon.d.ts +11 -11
  109. package/dist/controls/svg/Polygon/Polygon.js +20 -20
  110. package/dist/controls/svg/Polygon/Polygon.js.map +1 -1
  111. package/dist/controls/svg/Polyline/Polyline.d.ts +11 -11
  112. package/dist/controls/svg/Polyline/Polyline.js +19 -19
  113. package/dist/controls/svg/Polyline/Polyline.js.map +1 -1
  114. package/dist/controls/svg/Rectangle/Rectangle.d.ts +13 -13
  115. package/dist/controls/svg/Rectangle/Rectangle.js +21 -21
  116. package/dist/controls/svg/Rectangle/Rectangle.js.map +1 -1
  117. package/dist/controls/svg/Svg/Svg.d.ts +17 -17
  118. package/dist/controls/svg/Svg/Svg.js +23 -24
  119. package/dist/controls/svg/Svg/Svg.js.map +1 -1
  120. package/dist/controls/svg/Text/Text.d.ts +14 -14
  121. package/dist/controls/svg/Text/Text.js +22 -22
  122. package/dist/controls/svg/Text/Text.js.map +1 -1
  123. package/dist/controls/svg/Title/Title.d.ts +10 -10
  124. package/dist/controls/svg/Title/Title.js +16 -16
  125. package/dist/controls/svg/Title/Title.js.map +1 -1
  126. package/dist/controls/svg/index.d.ts +13 -13
  127. package/dist/controls/svg/index.js +13 -13
  128. package/dist/controls/svg/svg.d.ts +6 -6
  129. package/dist/controls/svg/svg.js +12 -12
  130. package/dist/controls/svg/svg.js.map +1 -1
  131. package/dist/framework/attributes.d.ts +90 -90
  132. package/dist/framework/attributes.js +1 -1
  133. package/dist/framework/{View.d.ts → element.d.ts} +61 -62
  134. package/dist/framework/{View.js → element.js} +157 -150
  135. package/dist/framework/element.js.map +1 -0
  136. package/dist/framework/event.d.ts +80 -80
  137. package/dist/framework/event.js +25 -25
  138. package/dist/framework/event.js.map +1 -1
  139. package/dist/framework/observable.d.ts +37 -12
  140. package/dist/framework/observable.js +66 -58
  141. package/dist/framework/observable.js.map +1 -1
  142. package/dist/framework/properties.d.ts +40 -0
  143. package/dist/framework/{ViewModel.js → properties.js} +303 -312
  144. package/dist/framework/properties.js.map +1 -0
  145. package/dist/framework/root.d.ts +9 -0
  146. package/dist/framework/root.js +38 -0
  147. package/dist/framework/root.js.map +1 -0
  148. package/dist/framework/style.d.ts +657 -658
  149. package/dist/framework/style.js +146 -153
  150. package/dist/framework/style.js.map +1 -1
  151. package/dist/framework/types.d.ts +87 -87
  152. package/dist/framework/types.js +1 -1
  153. package/dist/index.d.ts +12 -12
  154. package/dist/index.js +12 -12
  155. package/dist/index.js.map +1 -1
  156. package/dist/utilities/blob/blob.d.ts +1 -1
  157. package/dist/utilities/blob/blob.js +17 -17
  158. package/dist/utilities/blob/blob.js.map +1 -1
  159. package/dist/utilities/contextMenu/contextMenu.d.ts +2 -0
  160. package/dist/utilities/contextMenu/contextMenu.js +11 -0
  161. package/dist/utilities/contextMenu/contextMenu.js.map +1 -0
  162. package/dist/utilities/cookie/cookie.d.ts +3 -3
  163. package/dist/utilities/cookie/cookie.js +26 -26
  164. package/dist/utilities/cookie/cookie.js.map +1 -1
  165. package/dist/utilities/dataReaderTable/dataReaderTable.d.ts +9 -9
  166. package/dist/utilities/dataReaderTable/dataReaderTable.js +23 -23
  167. package/dist/utilities/dataReaderTable/dataReaderTable.js.map +1 -1
  168. package/dist/utilities/fetch/fetch.d.ts +7 -8
  169. package/dist/utilities/fetch/fetch.js +139 -137
  170. package/dist/utilities/fetch/fetch.js.map +1 -1
  171. package/dist/utilities/float/float.d.ts +1 -1
  172. package/dist/utilities/float/float.js +3 -3
  173. package/dist/utilities/formData/formData.d.ts +1 -1
  174. package/dist/utilities/formData/formData.js +11 -11
  175. package/dist/utilities/formData/formData.js.map +1 -1
  176. package/dist/utilities/formatting/formatting.d.ts +4 -0
  177. package/dist/utilities/formatting/formatting.js +26 -0
  178. package/dist/utilities/formatting/formatting.js.map +1 -0
  179. package/dist/utilities/htmlElement/htmlElement.d.ts +1 -1
  180. package/dist/utilities/htmlElement/htmlElement.js +16 -16
  181. package/dist/utilities/htmlElement/htmlElement.js.map +1 -1
  182. package/dist/utilities/image/image.d.ts +1 -1
  183. package/dist/utilities/image/image.js +1 -1
  184. package/dist/utilities/index.d.ts +40 -36
  185. package/dist/utilities/index.js +40 -36
  186. package/dist/utilities/index.js.map +1 -1
  187. package/dist/utilities/integer/integer.d.ts +3 -3
  188. package/dist/utilities/integer/integer.js +27 -27
  189. package/dist/utilities/integer/integer.js.map +1 -1
  190. package/dist/utilities/key/key.d.ts +2 -2
  191. package/dist/utilities/key/key.js +6 -6
  192. package/dist/utilities/navigator/navigator.d.ts +1 -1
  193. package/dist/utilities/navigator/navigator.js +8 -8
  194. package/dist/utilities/navigator/navigator.js.map +1 -1
  195. package/dist/utilities/notification/notification.d.ts +5 -5
  196. package/dist/utilities/notification/notification.js +66 -66
  197. package/dist/utilities/notification/notification.js.map +1 -1
  198. package/dist/utilities/querystring/querystring.d.ts +6 -6
  199. package/dist/utilities/querystring/querystring.js +53 -53
  200. package/dist/utilities/querystring/querystring.js.map +1 -1
  201. package/dist/utilities/router/router.d.ts +19 -19
  202. package/dist/utilities/router/router.js +80 -80
  203. package/dist/utilities/router/router.js.map +1 -1
  204. package/dist/utilities/stylesheet/stylesheet.d.ts +2 -2
  205. package/dist/utilities/stylesheet/stylesheet.js +47 -47
  206. package/dist/utilities/stylesheet/stylesheet.js.map +1 -1
  207. package/dist/utilities/uniqueId/uniqueId.d.ts +1 -1
  208. package/dist/utilities/uniqueId/uniqueId.js +4 -4
  209. package/dist/{framework → utilities/userAgent}/userAgent.d.ts +31 -31
  210. package/dist/{framework → utilities/userAgent}/userAgent.js +46 -46
  211. package/dist/utilities/userAgent/userAgent.js.map +1 -0
  212. package/dist/utilities/webSocket/webSocket.d.ts +1 -1
  213. package/dist/utilities/webSocket/webSocket.js +54 -54
  214. package/dist/utilities/webSocket/webSocket.js.map +1 -1
  215. package/package.json +18 -14
  216. package/src/controls/codeMirror/Editor/Editor.ts +207 -0
  217. package/src/controls/codeMirror/index.ts +1 -2
  218. package/src/controls/custom/FileSelector/FileSelector.ts +30 -28
  219. package/src/controls/custom/LabeledControl/LabeledControl.ts +32 -36
  220. package/src/controls/custom/ListItem/ListItem.ts +36 -36
  221. package/src/controls/html/Button/Button.ts +36 -29
  222. package/src/controls/html/Div/Div.ts +20 -21
  223. package/src/controls/html/Image/Image.ts +22 -20
  224. package/src/controls/html/Input/Input.ts +59 -61
  225. package/src/controls/html/Select/Select.ts +37 -39
  226. package/src/controls/html/Span/Span.ts +14 -14
  227. package/src/controls/index.ts +2 -2
  228. package/src/controls/{jsonViewAwesome → jsonViewerAwesome}/jsonFormatter/JsonFormatter.ts +23 -23
  229. package/src/controls/kendo/Chart/Chart.ts +34 -34
  230. package/src/controls/kendo/DataSource/DataSource.ts +1 -1
  231. package/src/controls/kendo/Editor/Editor.ts +58 -68
  232. package/src/controls/kendo/Grid/Grid.ts +77 -80
  233. package/src/controls/kendo/Menu/Menu.ts +22 -22
  234. package/src/controls/kendo/ObservableObject/ObservableObject.ts +45 -45
  235. package/src/controls/kendo/{Tree/Tree.ts → Treeview/Treeview.ts} +15 -15
  236. package/src/controls/kendo/{Dialog/Dialog.ts → Window/Window.ts} +21 -19
  237. package/src/controls/kendo/index.ts +3 -3
  238. package/src/controls/leaflet/LabelControl/LabelControl.ts +10 -10
  239. package/src/controls/leaflet/Map/Map.ts +41 -38
  240. package/src/controls/leaflet/OpenStreetMapTileLayer/OpenStreetMapTileLayer.ts +3 -3
  241. package/src/controls/svg/Circle/Circle.ts +14 -14
  242. package/src/controls/svg/Ellipse/Ellipse.ts +15 -15
  243. package/src/controls/svg/ForeignObject/ForeignObject.ts +19 -20
  244. package/src/controls/svg/Group/Group.ts +19 -19
  245. package/src/controls/svg/Line/Line.ts +15 -15
  246. package/src/controls/svg/Pattern/Pattern.ts +25 -25
  247. package/src/controls/svg/Polygon/Polygon.ts +13 -13
  248. package/src/controls/svg/Polyline/Polyline.ts +13 -13
  249. package/src/controls/svg/Rectangle/Rectangle.ts +15 -15
  250. package/src/controls/svg/Svg/Svg.ts +19 -19
  251. package/src/controls/svg/Text/Text.ts +16 -16
  252. package/src/controls/svg/Title/Title.ts +12 -12
  253. package/src/controls/svg/svg.ts +4 -4
  254. package/src/framework/attributes.ts +46 -46
  255. package/src/framework/{View.ts → element.ts} +52 -39
  256. package/src/framework/event.ts +7 -7
  257. package/src/framework/observable.ts +94 -60
  258. package/src/framework/properties.ts +393 -0
  259. package/src/framework/root.ts +45 -0
  260. package/src/framework/style.ts +330 -340
  261. package/src/index.ts +4 -4
  262. package/src/utilities/contextMenu/contextMenu.ts +16 -0
  263. package/src/utilities/fetch/fetch.ts +16 -14
  264. package/src/utilities/formatting/formatting.ts +29 -0
  265. package/src/utilities/index.ts +7 -3
  266. package/src/utilities/router/router.ts +3 -3
  267. package/dist/controls/codeMirror/HtmlEditor/HtmlEditor.d.ts +0 -16
  268. package/dist/controls/codeMirror/HtmlEditor/HtmlEditor.js +0 -120
  269. package/dist/controls/codeMirror/HtmlEditor/HtmlEditor.js.map +0 -1
  270. package/dist/controls/codeMirror/JsonEditor/JsonEditor.d.ts +0 -16
  271. package/dist/controls/codeMirror/JsonEditor/JsonEditor.js +0 -104
  272. package/dist/controls/codeMirror/JsonEditor/JsonEditor.js.map +0 -1
  273. package/dist/controls/jsonViewAwesome/index.js.map +0 -1
  274. package/dist/controls/jsonViewAwesome/jsonFormatter/JsonFormatter.d.ts +0 -28
  275. package/dist/controls/jsonViewAwesome/jsonFormatter/JsonFormatter.js.map +0 -1
  276. package/dist/controls/kendo/Dialog/Dialog.d.ts +0 -14
  277. package/dist/controls/kendo/Dialog/Dialog.js.map +0 -1
  278. package/dist/controls/kendo/Tree/Tree.d.ts +0 -17
  279. package/dist/controls/kendo/Tree/Tree.js.map +0 -1
  280. package/dist/framework/View.js.map +0 -1
  281. package/dist/framework/ViewModel.d.ts +0 -42
  282. package/dist/framework/ViewModel.js.map +0 -1
  283. package/dist/framework/userAgent.js.map +0 -1
  284. package/dist/utilities/html/html.d.ts +0 -1
  285. package/dist/utilities/html/html.js +0 -8
  286. package/dist/utilities/html/html.js.map +0 -1
  287. package/src/controls/codeMirror/HtmlEditor/HtmlEditor.ts +0 -153
  288. package/src/controls/codeMirror/JsonEditor/JsonEditor.ts +0 -136
  289. package/src/framework/ViewModel.ts +0 -528
  290. package/src/utilities/html/html.ts +0 -8
  291. /package/src/controls/{jsonViewAwesome → jsonViewerAwesome}/index.ts +0 -0
  292. /package/src/{framework → utilities/userAgent}/userAgent.ts +0 -0
@@ -1,55 +1,55 @@
1
- const reopenDelay = 10000;
2
- var webSocket;
3
- var webSocketProtocol;
4
- if (location.protocol === "http:") {
5
- webSocketProtocol = "ws";
6
- }
7
- else {
8
- webSocketProtocol = "wss";
9
- }
10
- document.addEventListener("visibilitychange", () => {
11
- if (document.visibilityState === 'visible') {
12
- if (!webSocket || webSocket.readyState === WebSocket.CLOSED) {
13
- open();
14
- }
15
- }
16
- });
17
- var webSocketUrl;
18
- var onMessageHandler;
19
- function open() {
20
- if (webSocketUrl && onMessageHandler) {
21
- webSocket = new WebSocket(webSocketProtocol + "://" + location.host + "/" + webSocketUrl);
22
- webSocket.onopen = () => {
23
- console.log("Websocket opened");
24
- };
25
- webSocket.onclose = () => {
26
- console.log("Websocket closed");
27
- webSocket = null;
28
- setTimeout(() => {
29
- open();
30
- }, reopenDelay);
31
- };
32
- webSocket.onerror = (error) => {
33
- try {
34
- console.log("Websocket error" + JSON.stringify(error));
35
- webSocket.close();
36
- webSocket = null;
37
- setTimeout(() => {
38
- open();
39
- }, reopenDelay);
40
- }
41
- catch (e) {
42
- }
43
- };
44
- webSocket.onmessage = (messageEvent) => {
45
- var webSocketMessage = JSON.parse(messageEvent.data);
46
- onMessageHandler(webSocketMessage);
47
- };
48
- }
49
- }
50
- export function initializeWebSocket(url, handler) {
51
- webSocketUrl = url;
52
- onMessageHandler = handler;
53
- open();
54
- }
1
+ const reopenDelay = 10000;
2
+ var webSocket;
3
+ var webSocketProtocol;
4
+ if (location.protocol === "http:") {
5
+ webSocketProtocol = "ws";
6
+ }
7
+ else {
8
+ webSocketProtocol = "wss";
9
+ }
10
+ document.addEventListener("visibilitychange", () => {
11
+ if (document.visibilityState === 'visible') {
12
+ if (!webSocket || webSocket.readyState === WebSocket.CLOSED) {
13
+ open();
14
+ }
15
+ }
16
+ });
17
+ var webSocketUrl;
18
+ var onMessageHandler;
19
+ function open() {
20
+ if (webSocketUrl && onMessageHandler) {
21
+ webSocket = new WebSocket(webSocketProtocol + "://" + location.host + "/" + webSocketUrl);
22
+ webSocket.onopen = () => {
23
+ console.log("Websocket opened");
24
+ };
25
+ webSocket.onclose = () => {
26
+ console.log("Websocket closed");
27
+ webSocket = null;
28
+ setTimeout(() => {
29
+ open();
30
+ }, reopenDelay);
31
+ };
32
+ webSocket.onerror = (error) => {
33
+ try {
34
+ console.log("Websocket error" + JSON.stringify(error));
35
+ webSocket.close();
36
+ webSocket = null;
37
+ setTimeout(() => {
38
+ open();
39
+ }, reopenDelay);
40
+ }
41
+ catch (e) {
42
+ }
43
+ };
44
+ webSocket.onmessage = (messageEvent) => {
45
+ var webSocketMessage = JSON.parse(messageEvent.data);
46
+ onMessageHandler(webSocketMessage);
47
+ };
48
+ }
49
+ }
50
+ export function initializeWebSocket(url, handler) {
51
+ webSocketUrl = url;
52
+ onMessageHandler = handler;
53
+ open();
54
+ }
55
55
  //# sourceMappingURL=webSocket.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"webSocket.js","sourceRoot":"","sources":["../../../src/utilities/webSocket/webSocket.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,KAAK,CAAC;AAC1B,IAAI,SAAoB,CAAC;AACzB,IAAI,iBAAyB,CAAC;AAC9B,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE;IAC/B,iBAAiB,GAAG,IAAI,CAAC;CAC5B;KAAM;IACH,iBAAiB,GAAG,KAAK,CAAC;CAC7B;AAED,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC/C,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;QACxC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,MAAM,EAAE;YACzD,IAAI,EAAE,CAAC;SACV;KACJ;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,YAAoB,CAAC;AACzB,IAAI,gBAA4C,CAAC;AAEjD,SAAS,IAAI;IACT,IAAI,YAAY,IAAI,gBAAgB,EAAE;QAClC,SAAS,GAAG,IAAI,SAAS,CAAC,iBAAiB,GAAG,KAAK,GAAG,QAAQ,CAAC,IAAI,GAAG,GAAG,GAAG,YAAY,CAAC,CAAC;QAE1F,SAAS,CAAC,MAAM,GAAG,GAAG,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACpC,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAChC,SAAS,GAAG,IAAI,CAAC;YAEjB,UAAU,CACN,GAAG,EAAE;gBACD,IAAI,EAAE,CAAC;YACX,CAAC,EACD,WAAW,CACd,CAAC;QACN,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC1B,IAAI;gBACA,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvD,SAAS,CAAC,KAAK,EAAE,CAAC;gBAClB,SAAS,GAAG,IAAI,CAAC;gBAEjB,UAAU,CACN,GAAG,EAAE;oBACD,IAAI,EAAE,CAAC;gBACX,CAAC,EACD,WAAW,CACd,CAAC;aACL;YAAC,OAAO,CAAC,EAAE;aAEX;QACL,CAAC,CAAA;QAED,SAAS,CAAC,SAAS,GAAG,CAAC,YAA0B,EAAE,EAAE;YAEjD,IAAI,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAGrD,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC,CAAC;KACL;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,OAAmC;IAChF,YAAY,GAAG,GAAG,CAAC;IACnB,gBAAgB,GAAG,OAAO,CAAC;IAC3B,IAAI,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"webSocket.js","sourceRoot":"","sources":["../../../src/utilities/webSocket/webSocket.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,GAAG,KAAK,CAAC;AAC1B,IAAI,SAAoB,CAAC;AACzB,IAAI,iBAAyB,CAAC;AAC9B,IAAI,QAAQ,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;IAChC,iBAAiB,GAAG,IAAI,CAAC;AAC7B,CAAC;KAAM,CAAC;IACJ,iBAAiB,GAAG,KAAK,CAAC;AAC9B,CAAC;AAED,QAAQ,CAAC,gBAAgB,CAAC,kBAAkB,EAAE,GAAG,EAAE;IAC/C,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;QACzC,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,UAAU,KAAK,SAAS,CAAC,MAAM,EAAE,CAAC;YAC1D,IAAI,EAAE,CAAC;QACX,CAAC;IACL,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,IAAI,YAAoB,CAAC;AACzB,IAAI,gBAA4C,CAAC;AAEjD,SAAS,IAAI;IACT,IAAI,YAAY,IAAI,gBAAgB,EAAE,CAAC;QACnC,SAAS,GAAG,IAAI,SAAS,CAAC,iBAAiB,GAAG,KAAK,GAAG,QAAQ,CAAC,IAAI,GAAG,GAAG,GAAG,YAAY,CAAC,CAAC;QAE1F,SAAS,CAAC,MAAM,GAAG,GAAG,EAAE;YACpB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACpC,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,GAAG,EAAE;YACrB,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;YAChC,SAAS,GAAG,IAAI,CAAC;YAEjB,UAAU,CACN,GAAG,EAAE;gBACD,IAAI,EAAE,CAAC;YACX,CAAC,EACD,WAAW,CACd,CAAC;QACN,CAAC,CAAA;QAED,SAAS,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC1B,IAAI,CAAC;gBACD,OAAO,CAAC,GAAG,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC;gBACvD,SAAS,CAAC,KAAK,EAAE,CAAC;gBAClB,SAAS,GAAG,IAAI,CAAC;gBAEjB,UAAU,CACN,GAAG,EAAE;oBACD,IAAI,EAAE,CAAC;gBACX,CAAC,EACD,WAAW,CACd,CAAC;YACN,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;YAEb,CAAC;QACL,CAAC,CAAA;QAED,SAAS,CAAC,SAAS,GAAG,CAAC,YAA0B,EAAE,EAAE;YAEjD,IAAI,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAGrD,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;QACvC,CAAC,CAAC;IACN,CAAC;AACL,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,GAAW,EAAE,OAAmC;IAChF,YAAY,GAAG,GAAG,CAAC;IACnB,gBAAgB,GAAG,OAAO,CAAC;IAC3B,IAAI,EAAE,CAAC;AACX,CAAC"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "jpf",
3
- "version": "4.2.18",
4
- "description": "Javascript Presentation Foundation",
3
+ "version": "5.0.6",
4
+ "description": "Javascript Presentation Foundation base classes and interfaces",
5
5
  "keywords": [
6
6
  "mvvm",
7
7
  "framework",
@@ -10,7 +10,7 @@
10
10
  "single page application",
11
11
  "spa"
12
12
  ],
13
- "homepage": "https://dev.azure.com/opinio/JavascriptPresentationFoundation",
13
+ "homepage": "https://dev.azure.com/opinio/JPF",
14
14
  "bugs": "",
15
15
  "license": "MIT",
16
16
  "author": {
@@ -19,7 +19,7 @@
19
19
  },
20
20
  "repository": {
21
21
  "type": "tfs",
22
- "url": "https://dev.azure.com/opinio/JavascriptPresentationFoundation"
22
+ "url": "https://dev.azure.com/opinio/JPF"
23
23
  },
24
24
  "main": "dist/index.js",
25
25
  "types": "dist/index.d.ts",
@@ -41,22 +41,26 @@
41
41
  "tscVersion": "tsc -v"
42
42
  },
43
43
  "dependencies": {
44
- "knockout": "3.5.1",
45
44
  "tocca": "2.0.9",
46
- "ua-parser-js": "1.0.35",
45
+ "ua-parser-js": "1.0.37",
47
46
  "toastr": "2.1.4",
48
- "uuid": "9.0.0",
49
- "@progress/kendo-ui": "2022.3.913",
50
- "html-prettify": "1.0.7",
47
+ "uuid": "9.0.1",
48
+ "@progress/kendo-ui": "2024.2.514",
49
+ "simply-beautiful": "0.2.14",
51
50
  "codemirror": "6.0.1",
52
- "@codemirror/lang-html": "6.4.0",
51
+ "@codemirror/lang-html": "6.4.5",
53
52
  "@codemirror/lang-json": "6.0.1",
53
+ "@codemirror/lang-less": "6.0.1",
54
+ "@codemirror/lang-css": "6.2.0",
55
+ "@codemirror/lang-javascript": "6.1.9",
54
56
  "json-viewer-awesome": "1.0.15",
55
- "leaflet": "1.9.3",
56
- "leaflet-arrowheads": "1.4.0"
57
+ "leaflet": "1.9.4",
58
+ "leaflet-arrowheads": "1.4.0",
59
+ "lodash": "4.17.21"
57
60
  },
58
61
  "devDependencies": {
59
- "@types/ua-parser-js": "^0.7.36",
60
- "typescript": "4.9.4"
62
+ "typescript": "5.4.5",
63
+ "@types/lodash": "4.17.4",
64
+ "@types/leaflet": "1.9.8"
61
65
  }
62
66
  }
@@ -0,0 +1,207 @@
1
+ import { Element, registerElement } from "../../../framework/element";
2
+ import { Properties, IProperties, extendProperties } from "../../../framework/properties";
3
+ import { isSubscribable, isObservableValue, unwrap } from "../../../framework/observable";
4
+ import { EditorView, basicSetup } from "codemirror";
5
+ import { EditorState, Extension } from "@codemirror/state";
6
+ import { keymap } from "@codemirror/view";
7
+ import { html } from "@codemirror/lang-html";
8
+ import { json } from "@codemirror/lang-json";
9
+ import { css } from "@codemirror/lang-css";
10
+
11
+ import { indentWithTab } from "@codemirror/commands";
12
+ import { foldAll } from "@codemirror/language";
13
+ import { createButton } from "../../html/Button/Button";
14
+ import { formatHtml, formatCss, formatJson, formatJavascript } from "../../../utilities/formatting/formatting";
15
+ import { createDiv } from "../../html/Div/Div";
16
+ import { ISubscribable } from "../../../framework/observable";
17
+
18
+ export type mode = "json" | "html" | "css" | "less" | "javascript" | "typescript";
19
+
20
+ export interface IEditorProperties extends IProperties {
21
+ mode: mode;
22
+ value?: string | ISubscribable<string>;
23
+ }
24
+
25
+ export class EditorElement extends Element<IEditorProperties> {
26
+ constructor(properties: IEditorProperties) {
27
+ super(
28
+ {
29
+ tagName: "div",
30
+ properties: extendProperties(
31
+ properties,
32
+ {
33
+ elementType: "CodeEditor",
34
+ },
35
+ {
36
+ attributes: {
37
+ tabindex: 1
38
+ },
39
+ style: {
40
+ display: "flex",
41
+ flexDirection: "column",
42
+ border: "1px solid #a3d0e4"
43
+ }
44
+ }
45
+ )
46
+ }
47
+ );
48
+ }
49
+
50
+ private editor: EditorView;
51
+
52
+
53
+ build(): void {
54
+ super.build();
55
+
56
+ const properties = this.properties;
57
+ const foldAllButton = createButton({
58
+ content: "Collapse all",
59
+ style: {
60
+ margin: "3px"
61
+ },
62
+ eventListeners: {
63
+ click: {
64
+ listener: () => {
65
+ foldAll(this.editor);
66
+ }
67
+ }
68
+ }
69
+ });
70
+
71
+ const formatButton = createButton({
72
+ content: "Format",
73
+ style: {
74
+ margin: "3px"
75
+ },
76
+ eventListeners: {
77
+ click: {
78
+ listener: () => {
79
+ const code = this.editor.state.doc.toString();
80
+ let formattedCode: string;
81
+
82
+ switch (properties.mode) {
83
+ case "html":
84
+ formattedCode = formatHtml(code);
85
+ break;
86
+
87
+ case "css":
88
+ formattedCode = formatCss(code);
89
+ break;
90
+ case "json":
91
+ formattedCode = formatJson(code);
92
+ break;
93
+
94
+ case "javascript":
95
+ formattedCode = formatJavascript(code);
96
+ break;
97
+
98
+ default:
99
+ throw "Language not supported";
100
+
101
+ }
102
+
103
+ this.editor.dispatch({ changes: { from: 0, to: this.editor.state.doc.length, insert: formattedCode } });
104
+ }
105
+ }
106
+ }
107
+ });
108
+
109
+ const saveButton = createButton({
110
+ content: "Save",
111
+ style: {
112
+ margin: "3px"
113
+ },
114
+ eventListeners: {
115
+ click: {
116
+ listener: () => {
117
+ if (isObservableValue(properties.value)) {
118
+ properties.value.setValue(this.editor.state.doc.toString());
119
+ }
120
+ }
121
+ }
122
+ }
123
+ });
124
+
125
+ const buttons = createDiv(
126
+ {
127
+ style: {
128
+ display: "flex"
129
+ },
130
+ children: [
131
+ foldAllButton,
132
+ formatButton,
133
+ saveButton
134
+ ]
135
+ }
136
+ );
137
+
138
+ this.element.appendChild(buttons.render());
139
+ const extensions: Extension[] = [
140
+ basicSetup,
141
+ EditorView.lineWrapping,
142
+ keymap.of([indentWithTab])
143
+ ];
144
+
145
+ switch (properties.mode) {
146
+ case "html":
147
+ extensions.push(html());
148
+ break;
149
+
150
+ case "css":
151
+ extensions.push(css());
152
+ break;
153
+
154
+ case "json":
155
+ extensions.push(json());
156
+ break;
157
+
158
+
159
+ default:
160
+ }
161
+
162
+ this.editor = new EditorView({
163
+ state: EditorState.create(
164
+ {
165
+ extensions: extensions
166
+ }
167
+ ),
168
+ parent: this.element,
169
+
170
+ });
171
+
172
+ this.editor.dom.style.overflow = "auto";
173
+
174
+ //Set the initial value;
175
+ this.editor.dispatch({ changes: { from: 0, to: this.editor.state.doc.length, insert: unwrap(properties.value) as any as string } });
176
+
177
+ //Found out if the viewModel property is observable.
178
+ if (isSubscribable(properties.value)) {
179
+ this.subscriptions.push(
180
+ properties.value.subscribe(
181
+ (html) => {
182
+ this.editor.dispatch({ changes: { from: 0, to: this.editor.state.doc.length, insert: html } });
183
+ }
184
+ )
185
+ );
186
+ }
187
+ }
188
+ }
189
+
190
+ export function createEditor(properties: IEditorProperties) {
191
+ return new EditorElement(properties);
192
+ }
193
+
194
+ export class EditorProperties extends Properties implements IEditorProperties {
195
+ constructor(properties: IEditorProperties) {
196
+ super();
197
+ this.setProperties(this, properties);
198
+ }
199
+
200
+ mode: mode;
201
+ value?: string | ISubscribable<string>;
202
+ }
203
+
204
+ registerElement(
205
+ EditorProperties.prototype.constructor,
206
+ EditorElement
207
+ )
@@ -1,2 +1 @@
1
- export * from "./HtmlEditor/HtmlEditor";
2
- export * from "./JsonEditor/JsonEditor";
1
+ export * from "./Editor/Editor";
@@ -1,23 +1,24 @@
1
- import { ViewModel, Properties, extendProperties } from "../../../framework/ViewModel";
2
- import { View, registerView } from "../../../framework/View";
3
- import { ButtonProperties , ButtonView } from "../../html/Button/Button";
4
- import { InputView, InputProperties } from "../../html/Input/Input";
1
+ import { Properties, IProperties, extendProperties } from "../../../framework/properties";
2
+ import { Element, registerElement } from "../../../framework/element";
3
+ import { IButtonProperties, createButton as buttonElement } from "../../html/Button/Button";
4
+ import { createInput, IInputProperties } from "../../html/Input/Input";
5
5
 
6
- export interface FileSelectorProperties extends Properties {
7
- button?: ButtonProperties;
8
- inputFile: InputProperties<FileList>;
6
+ export interface IFileSelectorProperties extends IProperties {
7
+ button?: IButtonProperties;
8
+ inputFile: IInputProperties<FileList>;
9
9
  }
10
10
 
11
- export class FileSelectorView extends View<FileSelectorProperties> {
12
- constructor(properties: FileSelectorProperties) {
11
+ export class FileSelectorElement extends Element<IFileSelectorProperties> {
12
+ constructor(properties: IFileSelectorProperties) {
13
13
  super(
14
14
  {
15
15
  tagName: "div",
16
16
  properties: extendProperties(
17
+ properties,
18
+ {},
17
19
  {
18
- viewType: "FileSelector"
19
- },
20
- properties
20
+ elementType: "FileSelector"
21
+ }
21
22
  )
22
23
  }
23
24
  );
@@ -26,22 +27,23 @@ export class FileSelectorView extends View<FileSelectorProperties> {
26
27
  protected build(): void {
27
28
  super.build();
28
29
 
29
- const viewModel = this.properties;
30
+ const properties = this.properties;
31
+ const inputProperties = properties.inputFile || {} as IInputProperties<FileList>;
32
+ inputProperties.type = "file";
30
33
 
31
- var fileInput = new InputView(viewModel.inputFile).render();
34
+ var fileInput = createInput(inputProperties).render();
32
35
 
33
36
  this.element.appendChild(fileInput);
34
37
 
35
- if (viewModel.button) {
36
- const button = new ButtonView(
38
+ if (properties.button) {
39
+ const button = buttonElement(
37
40
  extendProperties(
38
- viewModel.button,
41
+ properties.button,
39
42
  {
40
43
  eventListeners: {
41
44
  click: {
42
45
  listener: () => {
43
- var mouseEvent = document.createEvent("MouseEvent");
44
- mouseEvent.initEvent("click", false, false);
46
+ var mouseEvent = new MouseEvent("click");
45
47
  fileInput.dispatchEvent(mouseEvent);
46
48
  }
47
49
  }
@@ -55,20 +57,20 @@ export class FileSelectorView extends View<FileSelectorProperties> {
55
57
  }
56
58
  }
57
59
 
58
- export function fileSelectorView(properties: FileSelectorProperties){
59
- return new FileSelectorView(properties);
60
+ export function createFileSelector(properties: IFileSelectorProperties) {
61
+ return new FileSelectorElement(properties);
60
62
  }
61
63
 
62
- export class FileSelectorViewModel extends ViewModel implements FileSelectorProperties {
63
- constructor(properties: FileSelectorProperties) {
64
+ export class FileSelectorProperties extends Properties implements IFileSelectorProperties {
65
+ constructor(properties: IFileSelectorProperties) {
64
66
  super();
65
67
  this.setProperties(this, properties);
66
68
  }
67
- button?: ButtonProperties;
68
- inputFile: InputProperties<FileList>;
69
+ button?: IButtonProperties;
70
+ inputFile: IInputProperties<FileList>;
69
71
  }
70
72
 
71
- registerView(
72
- FileSelectorViewModel,
73
- FileSelectorView
73
+ registerElement(
74
+ FileSelectorProperties.prototype.constructor,
75
+ FileSelectorElement
74
76
  );
@@ -1,58 +1,54 @@
1
- import { ViewModel, Properties, extendProperties } from "../../../framework/ViewModel"
2
- import { View, IView, registerView } from "../../../framework/View";
3
- import { DivView } from "../../html/Div/Div";
1
+ import { Properties, IProperties, extendProperties } from "../../../framework/properties"
2
+ import { Element, IElement, registerElement } from "../../../framework/element";
3
+ import { createDiv as divElement } from "../../html/Div/Div";
4
4
 
5
- export interface LabeledViewProperties extends Properties {
6
- labelProperties: Properties;
7
- view: IView;
5
+ export interface ILabeledViewProperties extends IProperties {
6
+ labelProperties: IProperties;
7
+ element: IElement;
8
8
  }
9
9
 
10
- export class LabeledControlView extends View<LabeledViewProperties> {
11
- constructor(properties: LabeledViewProperties) {
10
+ export class LabeledControlElement extends Element<ILabeledViewProperties> {
11
+ constructor(properties: ILabeledViewProperties) {
12
12
  super(
13
13
  {
14
14
  tagName: "div",
15
15
  properties: extendProperties(
16
+ properties,
16
17
  {
17
- viewType: "LabeledControl",
18
- style: {
19
- display: "flex",
20
- alignItems: "center"
21
- },
22
- classNames: ["o-labled-control"]
23
- },
24
- properties
18
+ elementType: "LabeledControl",
19
+ classNames: ["jpf-labled-control"]
20
+ }
21
+ )
22
+ },
23
+ [
24
+ divElement(
25
+ extendProperties(
26
+ properties.labelProperties,
27
+ {
28
+ elementType: "Label"
29
+ }
30
+ )
25
31
  ),
26
- children: [
27
- new DivView(
28
- extendProperties(
29
- properties.labelProperties,
30
- {
31
- viewType: "Label"
32
- }
33
- )
34
- ),
35
- properties.view
36
- ]
37
- }
32
+ properties.element
33
+ ]
38
34
  );
39
35
  }
40
36
  }
41
37
 
42
- export function labeledControlView(properties: LabeledViewProperties) {
43
- return new LabeledControlView(properties);
38
+ export function createLabeledControl(properties: ILabeledViewProperties) {
39
+ return new LabeledControlElement(properties);
44
40
  }
45
41
 
46
- export class LabeledControlViewModel extends ViewModel implements LabeledViewProperties {
47
- constructor(properties: LabeledViewProperties) {
42
+ export class LabeledControlProperties extends Properties implements ILabeledViewProperties {
43
+ constructor(properties: ILabeledViewProperties) {
48
44
  super();
49
45
  this.setProperties(this, properties);
50
46
  }
51
47
  labelProperties: Properties;
52
- view: IView;
48
+ element: IElement;
53
49
  }
54
50
 
55
- registerView(
56
- LabeledControlViewModel,
57
- LabeledControlView
51
+ registerElement(
52
+ LabeledControlProperties,
53
+ LabeledControlElement
58
54
  )