@j2inn/fin5-ui-utils 8.1.1-beta.6 → 8.1.1

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 (210) hide show
  1. package/README.md +5 -5
  2. package/dist/fantomProps/createFin5Props/index.d.ts +12 -12
  3. package/dist/fantomProps/createFin5Props/index.js +146 -146
  4. package/dist/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
  5. package/dist/fantomProps/createFin5Props/runCreateFin5Props.js +20 -20
  6. package/dist/fantomProps/fantomPropsToObject.d.ts +8 -8
  7. package/dist/fantomProps/fantomPropsToObject.js +183 -183
  8. package/dist/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
  9. package/dist/fantomProps/generateJsonFromFantomPropsFile.js +41 -41
  10. package/dist/fantomProps/localePropsToJson.d.ts +1 -1
  11. package/dist/fantomProps/localePropsToJson.js +50 -50
  12. package/dist/fantomProps/readFantomPropsFile.d.ts +5 -5
  13. package/dist/fantomProps/readFantomPropsFile.js +65 -65
  14. package/dist/fin5Top/fin5FileUpload.d.ts +24 -24
  15. package/dist/fin5Top/fin5FileUpload.js +51 -51
  16. package/dist/fin5Top/fin5Top.d.ts +165 -165
  17. package/dist/fin5Top/fin5Top.js +61 -61
  18. package/dist/fin5Top/finEdge2Cloud.d.ts +6 -6
  19. package/dist/fin5Top/finEdge2Cloud.js +15 -15
  20. package/dist/fin5Top/getFin5BinUrl.d.ts +2 -2
  21. package/dist/fin5Top/getFin5BinUrl.js +9 -9
  22. package/dist/fin5Top/openFin5Alarm.d.ts +22 -22
  23. package/dist/fin5Top/openFin5Alarm.js +23 -23
  24. package/dist/fin5Top/openFin5Historian.d.ts +3 -3
  25. package/dist/fin5Top/openFin5Historian.js +19 -19
  26. package/dist/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
  27. package/dist/fin5Top/useFin5AppURLHashParameter.js +133 -133
  28. package/dist/index.d.ts +35 -35
  29. package/dist/index.js +69 -69
  30. package/dist/jobs/jobUtils.d.ts +14 -14
  31. package/dist/jobs/jobUtils.js +15 -15
  32. package/dist/react/app/Fin5AppContainer.d.ts +36 -36
  33. package/dist/react/app/Fin5AppContainer.js +145 -145
  34. package/dist/react/app/Fin5AppRootStore.d.ts +40 -40
  35. package/dist/react/app/Fin5AppRootStore.js +90 -90
  36. package/dist/react/components/ErrorBoundary.d.ts +57 -57
  37. package/dist/react/components/ErrorBoundary.js +150 -150
  38. package/dist/react/components/ErrorDisplayer.d.ts +19 -19
  39. package/dist/react/components/ErrorDisplayer.js +36 -36
  40. package/dist/react/components/Loader.d.ts +9 -9
  41. package/dist/react/components/Loader.js +17 -17
  42. package/dist/react/components/LoadingSpinner.d.ts +2 -2
  43. package/dist/react/components/LoadingSpinner.js +27 -27
  44. package/dist/react/components/RecordImage.d.ts +20 -20
  45. package/dist/react/components/RecordImage.js +51 -51
  46. package/dist/react/components/charts/QRCode.d.ts +25 -25
  47. package/dist/react/components/charts/QRCode.js +82 -82
  48. package/dist/react/components/charts/line-bar/Chart.d.ts +166 -166
  49. package/dist/react/components/charts/line-bar/Chart.js +442 -442
  50. package/dist/react/components/charts/line-bar/HGridChart.d.ts +58 -58
  51. package/dist/react/components/charts/line-bar/HGridChart.js +285 -285
  52. package/dist/react/components/charts/pie/PieChart.d.ts +94 -94
  53. package/dist/react/components/charts/pie/PieChart.js +204 -204
  54. package/dist/react/components/charts/pie/SimplePieChart.d.ts +21 -21
  55. package/dist/react/components/charts/pie/SimplePieChart.js +55 -55
  56. package/dist/react/components/graphics/GraphicViewer.d.ts +10 -10
  57. package/dist/react/components/graphics/GraphicViewer.js +29 -29
  58. package/dist/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
  59. package/dist/react/components/graphics/GraphicsTabViewer.js +90 -90
  60. package/dist/react/components/makeCustomElement.d.ts +16 -16
  61. package/dist/react/components/makeCustomElement.js +150 -150
  62. package/dist/react/components/navigation/BasicLayout.d.ts +41 -41
  63. package/dist/react/components/navigation/BasicLayout.js +155 -155
  64. package/dist/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
  65. package/dist/react/components/navigation/HeaderSiderLayout.js +110 -110
  66. package/dist/react/components/navigation/MenuPage.d.ts +37 -37
  67. package/dist/react/components/navigation/MenuPage.js +36 -36
  68. package/dist/react/components/navigation/MenuTrigger.d.ts +9 -9
  69. package/dist/react/components/navigation/MenuTrigger.js +33 -33
  70. package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
  71. package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.js +25 -25
  72. package/dist/react/components/navigation/ReactRouterLayout.d.ts +46 -46
  73. package/dist/react/components/navigation/ReactRouterLayout.js +132 -132
  74. package/dist/react/components/navigation/customRouting/Router.d.ts +12 -12
  75. package/dist/react/components/navigation/customRouting/Router.js +45 -45
  76. package/dist/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
  77. package/dist/react/components/navigation/customRouting/RouterLayout.js +61 -61
  78. package/dist/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
  79. package/dist/react/components/resolvable/configurationForm/ConfigurationForm.js +95 -95
  80. package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
  81. package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +88 -88
  82. package/dist/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
  83. package/dist/react/components/resolvable/configurationForm/getSectionDefault.js +99 -99
  84. package/dist/react/hooks/useFin5BinUrl.d.ts +6 -6
  85. package/dist/react/hooks/useFin5BinUrl.js +15 -15
  86. package/dist/react/hooks/useFin5ColorScheme.d.ts +2 -2
  87. package/dist/react/hooks/useFin5ColorScheme.js +56 -56
  88. package/dist/react/hooks/useScreenSize.d.ts +7 -7
  89. package/dist/react/hooks/useScreenSize.js +31 -31
  90. package/dist_es/fantomProps/createFin5Props/index.d.ts +12 -12
  91. package/dist_es/fantomProps/createFin5Props/index.js +140 -140
  92. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
  93. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.js +15 -15
  94. package/dist_es/fantomProps/fantomPropsToObject.d.ts +8 -8
  95. package/dist_es/fantomProps/fantomPropsToObject.js +178 -178
  96. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
  97. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.js +12 -12
  98. package/dist_es/fantomProps/localePropsToJson.d.ts +1 -1
  99. package/dist_es/fantomProps/localePropsToJson.js +21 -21
  100. package/dist_es/fantomProps/readFantomPropsFile.d.ts +5 -5
  101. package/dist_es/fantomProps/readFantomPropsFile.js +39 -39
  102. package/dist_es/fin5Top/fin5FileUpload.d.ts +24 -24
  103. package/dist_es/fin5Top/fin5FileUpload.js +47 -47
  104. package/dist_es/fin5Top/fin5Top.d.ts +165 -165
  105. package/dist_es/fin5Top/fin5Top.js +57 -57
  106. package/dist_es/fin5Top/finEdge2Cloud.d.ts +6 -6
  107. package/dist_es/fin5Top/finEdge2Cloud.js +11 -11
  108. package/dist_es/fin5Top/getFin5BinUrl.d.ts +2 -2
  109. package/dist_es/fin5Top/getFin5BinUrl.js +5 -5
  110. package/dist_es/fin5Top/openFin5Alarm.d.ts +22 -22
  111. package/dist_es/fin5Top/openFin5Alarm.js +19 -19
  112. package/dist_es/fin5Top/openFin5Historian.d.ts +3 -3
  113. package/dist_es/fin5Top/openFin5Historian.js +15 -15
  114. package/dist_es/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
  115. package/dist_es/fin5Top/useFin5AppURLHashParameter.js +124 -124
  116. package/dist_es/index.d.ts +35 -35
  117. package/dist_es/index.js +53 -53
  118. package/dist_es/jobs/jobUtils.d.ts +14 -14
  119. package/dist_es/jobs/jobUtils.js +9 -9
  120. package/dist_es/react/app/Fin5AppContainer.d.ts +36 -36
  121. package/dist_es/react/app/Fin5AppContainer.js +116 -116
  122. package/dist_es/react/app/Fin5AppRootStore.d.ts +40 -40
  123. package/dist_es/react/app/Fin5AppRootStore.js +86 -86
  124. package/dist_es/react/components/ErrorBoundary.d.ts +57 -57
  125. package/dist_es/react/components/ErrorBoundary.js +123 -123
  126. package/dist_es/react/components/ErrorDisplayer.d.ts +19 -19
  127. package/dist_es/react/components/ErrorDisplayer.js +28 -28
  128. package/dist_es/react/components/Loader.d.ts +9 -9
  129. package/dist_es/react/components/Loader.js +12 -12
  130. package/dist_es/react/components/LoadingSpinner.d.ts +2 -2
  131. package/dist_es/react/components/LoadingSpinner.js +20 -20
  132. package/dist_es/react/components/RecordImage.d.ts +20 -20
  133. package/dist_es/react/components/RecordImage.js +24 -24
  134. package/dist_es/react/components/charts/QRCode.d.ts +25 -25
  135. package/dist_es/react/components/charts/QRCode.js +52 -52
  136. package/dist_es/react/components/charts/line-bar/Chart.d.ts +166 -166
  137. package/dist_es/react/components/charts/line-bar/Chart.js +415 -415
  138. package/dist_es/react/components/charts/line-bar/HGridChart.d.ts +58 -58
  139. package/dist_es/react/components/charts/line-bar/HGridChart.js +250 -250
  140. package/dist_es/react/components/charts/pie/PieChart.d.ts +94 -94
  141. package/dist_es/react/components/charts/pie/PieChart.js +177 -177
  142. package/dist_es/react/components/charts/pie/SimplePieChart.d.ts +21 -21
  143. package/dist_es/react/components/charts/pie/SimplePieChart.js +25 -25
  144. package/dist_es/react/components/graphics/GraphicViewer.d.ts +10 -10
  145. package/dist_es/react/components/graphics/GraphicViewer.js +22 -22
  146. package/dist_es/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
  147. package/dist_es/react/components/graphics/GraphicsTabViewer.js +60 -60
  148. package/dist_es/react/components/makeCustomElement.d.ts +16 -16
  149. package/dist_es/react/components/makeCustomElement.js +142 -142
  150. package/dist_es/react/components/navigation/BasicLayout.d.ts +41 -41
  151. package/dist_es/react/components/navigation/BasicLayout.js +124 -124
  152. package/dist_es/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
  153. package/dist_es/react/components/navigation/HeaderSiderLayout.js +80 -80
  154. package/dist_es/react/components/navigation/MenuPage.d.ts +37 -37
  155. package/dist_es/react/components/navigation/MenuPage.js +30 -30
  156. package/dist_es/react/components/navigation/MenuTrigger.d.ts +9 -9
  157. package/dist_es/react/components/navigation/MenuTrigger.js +28 -28
  158. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
  159. package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.js +18 -18
  160. package/dist_es/react/components/navigation/ReactRouterLayout.d.ts +46 -46
  161. package/dist_es/react/components/navigation/ReactRouterLayout.js +99 -99
  162. package/dist_es/react/components/navigation/customRouting/Router.d.ts +12 -12
  163. package/dist_es/react/components/navigation/customRouting/Router.js +18 -18
  164. package/dist_es/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
  165. package/dist_es/react/components/navigation/customRouting/RouterLayout.js +34 -34
  166. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
  167. package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.js +64 -64
  168. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
  169. package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +58 -58
  170. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
  171. package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.js +94 -94
  172. package/dist_es/react/hooks/useFin5BinUrl.d.ts +6 -6
  173. package/dist_es/react/hooks/useFin5BinUrl.js +11 -11
  174. package/dist_es/react/hooks/useFin5ColorScheme.d.ts +2 -2
  175. package/dist_es/react/hooks/useFin5ColorScheme.js +52 -52
  176. package/dist_es/react/hooks/useScreenSize.d.ts +7 -7
  177. package/dist_es/react/hooks/useScreenSize.js +27 -27
  178. package/package.json +1 -1
  179. package/dist_es/react/app/Fin5AppContainer.jsx +0 -82
  180. package/dist_es/react/app/Fin5AppContainer.jsx.map +0 -1
  181. package/dist_es/react/components/ErrorBoundary.jsx +0 -150
  182. package/dist_es/react/components/ErrorBoundary.jsx.map +0 -1
  183. package/dist_es/react/components/ErrorDisplayer.jsx +0 -36
  184. package/dist_es/react/components/ErrorDisplayer.jsx.map +0 -1
  185. package/dist_es/react/components/Loader.jsx +0 -13
  186. package/dist_es/react/components/Loader.jsx.map +0 -1
  187. package/dist_es/react/components/LoadingSpinner.jsx +0 -22
  188. package/dist_es/react/components/LoadingSpinner.jsx.map +0 -1
  189. package/dist_es/react/components/charts/line-bar/ZincGridChart.d.ts +0 -12
  190. package/dist_es/react/components/charts/line-bar/ZincGridChart.js +0 -17
  191. package/dist_es/react/components/charts/line-bar/ZincGridChart.js.map +0 -1
  192. package/dist_es/react/components/graphics/GraphicViewer.jsx +0 -23
  193. package/dist_es/react/components/graphics/GraphicViewer.jsx.map +0 -1
  194. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx +0 -63
  195. package/dist_es/react/components/graphics/GraphicsTabViewer.jsx.map +0 -1
  196. package/dist_es/react/components/navigation/BasicLayout.jsx +0 -133
  197. package/dist_es/react/components/navigation/BasicLayout.jsx.map +0 -1
  198. package/dist_es/react/components/navigation/MenuPage.jsx +0 -31
  199. package/dist_es/react/components/navigation/MenuPage.jsx.map +0 -1
  200. package/dist_es/react/components/navigation/Router.d.ts +0 -12
  201. package/dist_es/react/components/navigation/Router.js +0 -19
  202. package/dist_es/react/components/navigation/Router.js.map +0 -1
  203. package/dist_es/react/components/navigation/Router.jsx +0 -19
  204. package/dist_es/react/components/navigation/Router.jsx.map +0 -1
  205. package/dist_es/react/components/navigation/react-router/BasicLayout.d.ts +0 -23
  206. package/dist_es/react/components/navigation/react-router/BasicLayout.js +0 -82
  207. package/dist_es/react/components/navigation/react-router/BasicLayout.js.map +0 -1
  208. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.d.ts +0 -24
  209. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js +0 -82
  210. package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js.map +0 -1
@@ -1,184 +1,184 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.parseFantomProps = void 0;
7
- /**
8
- * Convert the given fantom props as string to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
9
- */
10
- function fantomPropsToObject(props) {
11
- let i = 0;
12
- const readChar = () => {
13
- if (i < props.length) {
14
- i++;
15
- return props.charCodeAt(i - 1);
16
- }
17
- else
18
- return -1;
19
- };
20
- const unreadChar = () => {
21
- if (i > 0) {
22
- i--;
23
- }
24
- };
25
- return parseFantomProps(readChar, unreadChar);
26
- }
27
- exports.default = fantomPropsToObject;
28
- var UTF_8;
29
- (function (UTF_8) {
30
- UTF_8[UTF_8["tab"] = 9] = "tab";
31
- UTF_8[UTF_8["lf"] = 10] = "lf";
32
- UTF_8[UTF_8["cr"] = 13] = "cr";
33
- UTF_8[UTF_8["space"] = 32] = "space";
34
- UTF_8[UTF_8["numberSign"] = 35] = "numberSign";
35
- UTF_8[UTF_8["asterisk"] = 42] = "asterisk";
36
- UTF_8[UTF_8["solidus"] = 47] = "solidus";
37
- UTF_8[UTF_8["equalSign"] = 61] = "equalSign";
38
- UTF_8[UTF_8["reverseSolidus"] = 92] = "reverseSolidus";
39
- UTF_8[UTF_8["n"] = 110] = "n";
40
- UTF_8[UTF_8["r"] = 114] = "r";
41
- UTF_8[UTF_8["t"] = 116] = "t";
42
- UTF_8[UTF_8["u"] = 117] = "u";
43
- })(UTF_8 || (UTF_8 = {}));
44
- const isSpace = (char) => char === UTF_8.space ||
45
- char === UTF_8.tab ||
46
- char === UTF_8.lf ||
47
- char === UTF_8.cr;
48
- const hex = function (c) {
49
- if (48 <= c && c <= 57)
50
- return c - 48;
51
- if (97 <= c && c <= 102)
52
- return c - 97 + 10;
53
- if (65 <= c && c <= 70)
54
- return c - 65 + 10;
55
- return -1;
56
- };
57
- /*
58
- * Parse the Fantom props file character by character.
59
- * Implementation based on https://github.com/fantom-lang/fantom/blob/master/src/sys/js/fan/InStream.js
60
- */
61
- function parseFantomProps(readChar, unreadChar) {
62
- const props = {};
63
- let name = '';
64
- let value = null;
65
- let inBlockComment = 0;
66
- let inEndOfLineComment = false;
67
- let char = UTF_8.space, lastChar = UTF_8.space;
68
- let lineNum = 1;
69
- while (true) {
70
- lastChar = char;
71
- char = readChar();
72
- if (char < 0)
73
- break;
74
- // end of line
75
- if (char == UTF_8.lf || char == UTF_8.cr) {
76
- inEndOfLineComment = false;
77
- if (lastChar == UTF_8.cr && char == UTF_8.lf)
78
- continue;
79
- const n = name.trim();
80
- if (value !== null) {
81
- props[n] = value.trim();
82
- name = '';
83
- value = null;
84
- }
85
- else if (n.length > 0)
86
- throw new Error('Invalid name/value pair [Line ' + lineNum + ']');
87
- lineNum++;
88
- continue;
89
- }
90
- // if in comment
91
- if (inEndOfLineComment)
92
- continue;
93
- // block comment
94
- if (inBlockComment > 0) {
95
- if (lastChar == UTF_8.solidus && char == UTF_8.asterisk)
96
- inBlockComment++;
97
- if (lastChar == UTF_8.asterisk && char == UTF_8.solidus)
98
- inBlockComment--;
99
- continue;
100
- }
101
- // equal
102
- if (char == UTF_8.equalSign && value === null) {
103
- value = '';
104
- continue;
105
- }
106
- // line comment
107
- if (char === UTF_8.numberSign &&
108
- (lastChar == UTF_8.lf || lastChar == UTF_8.cr)) {
109
- inEndOfLineComment = true;
110
- continue;
111
- }
112
- // end of line comment
113
- if (char == UTF_8.solidus && isSpace(lastChar)) {
114
- const peek = readChar();
115
- if (peek < 0)
116
- break;
117
- if (peek == UTF_8.solidus) {
118
- inEndOfLineComment = true;
119
- continue;
120
- }
121
- if (peek == UTF_8.asterisk) {
122
- inBlockComment++;
123
- continue;
124
- }
125
- unreadChar(peek);
126
- }
127
- // escape or line continuation
128
- if (char == UTF_8.reverseSolidus) {
129
- let peek = readChar();
130
- if (peek < 0)
131
- break;
132
- else if (peek == UTF_8.n)
133
- char = UTF_8.lf;
134
- else if (peek == UTF_8.r)
135
- char = UTF_8.cr;
136
- else if (peek == UTF_8.t)
137
- char = UTF_8.tab;
138
- else if (peek == UTF_8.reverseSolidus)
139
- char = UTF_8.reverseSolidus;
140
- else if (peek == UTF_8.cr || peek == UTF_8.lf) {
141
- // line continuation
142
- lineNum++;
143
- if (peek == UTF_8.cr) {
144
- peek = readChar();
145
- if (peek != UTF_8.lf)
146
- unreadChar(peek);
147
- }
148
- while (true) {
149
- peek = readChar();
150
- if (peek == UTF_8.space || peek == UTF_8.tab)
151
- continue;
152
- unreadChar(peek);
153
- break;
154
- }
155
- continue;
156
- }
157
- else if (peek == UTF_8.u) {
158
- const n3 = hex(readChar());
159
- const n2 = hex(readChar());
160
- const n1 = hex(readChar());
161
- const n0 = hex(readChar());
162
- if (n3 < 0 || n2 < 0 || n1 < 0 || n0 < 0)
163
- throw new Error('Invalid hex value for \\uxxxx [Line ' + lineNum + ']');
164
- char = (n3 << 12) | (n2 << 8) | (n1 << 4) | n0;
165
- }
166
- else
167
- throw new Error('Invalid escape sequence [Line ' + lineNum + ']');
168
- }
169
- // normal character
170
- if (value === null)
171
- name += String.fromCharCode(char);
172
- else
173
- value += String.fromCharCode(char);
174
- }
175
- const n = name.trim();
176
- if (value !== null) {
177
- props[n] = value.trim();
178
- }
179
- else if (n.length > 0)
180
- throw new Error('Invalid name/value pair [Line ' + lineNum + ']');
181
- return props;
182
- }
183
- exports.parseFantomProps = parseFantomProps;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseFantomProps = void 0;
7
+ /**
8
+ * Convert the given fantom props as string to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
9
+ */
10
+ function fantomPropsToObject(props) {
11
+ let i = 0;
12
+ const readChar = () => {
13
+ if (i < props.length) {
14
+ i++;
15
+ return props.charCodeAt(i - 1);
16
+ }
17
+ else
18
+ return -1;
19
+ };
20
+ const unreadChar = () => {
21
+ if (i > 0) {
22
+ i--;
23
+ }
24
+ };
25
+ return parseFantomProps(readChar, unreadChar);
26
+ }
27
+ exports.default = fantomPropsToObject;
28
+ var UTF_8;
29
+ (function (UTF_8) {
30
+ UTF_8[UTF_8["tab"] = 9] = "tab";
31
+ UTF_8[UTF_8["lf"] = 10] = "lf";
32
+ UTF_8[UTF_8["cr"] = 13] = "cr";
33
+ UTF_8[UTF_8["space"] = 32] = "space";
34
+ UTF_8[UTF_8["numberSign"] = 35] = "numberSign";
35
+ UTF_8[UTF_8["asterisk"] = 42] = "asterisk";
36
+ UTF_8[UTF_8["solidus"] = 47] = "solidus";
37
+ UTF_8[UTF_8["equalSign"] = 61] = "equalSign";
38
+ UTF_8[UTF_8["reverseSolidus"] = 92] = "reverseSolidus";
39
+ UTF_8[UTF_8["n"] = 110] = "n";
40
+ UTF_8[UTF_8["r"] = 114] = "r";
41
+ UTF_8[UTF_8["t"] = 116] = "t";
42
+ UTF_8[UTF_8["u"] = 117] = "u";
43
+ })(UTF_8 || (UTF_8 = {}));
44
+ const isSpace = (char) => char === UTF_8.space ||
45
+ char === UTF_8.tab ||
46
+ char === UTF_8.lf ||
47
+ char === UTF_8.cr;
48
+ const hex = function (c) {
49
+ if (48 <= c && c <= 57)
50
+ return c - 48;
51
+ if (97 <= c && c <= 102)
52
+ return c - 97 + 10;
53
+ if (65 <= c && c <= 70)
54
+ return c - 65 + 10;
55
+ return -1;
56
+ };
57
+ /*
58
+ * Parse the Fantom props file character by character.
59
+ * Implementation based on https://github.com/fantom-lang/fantom/blob/master/src/sys/js/fan/InStream.js
60
+ */
61
+ function parseFantomProps(readChar, unreadChar) {
62
+ const props = {};
63
+ let name = '';
64
+ let value = null;
65
+ let inBlockComment = 0;
66
+ let inEndOfLineComment = false;
67
+ let char = UTF_8.space, lastChar = UTF_8.space;
68
+ let lineNum = 1;
69
+ while (true) {
70
+ lastChar = char;
71
+ char = readChar();
72
+ if (char < 0)
73
+ break;
74
+ // end of line
75
+ if (char == UTF_8.lf || char == UTF_8.cr) {
76
+ inEndOfLineComment = false;
77
+ if (lastChar == UTF_8.cr && char == UTF_8.lf)
78
+ continue;
79
+ const n = name.trim();
80
+ if (value !== null) {
81
+ props[n] = value.trim();
82
+ name = '';
83
+ value = null;
84
+ }
85
+ else if (n.length > 0)
86
+ throw new Error('Invalid name/value pair [Line ' + lineNum + ']');
87
+ lineNum++;
88
+ continue;
89
+ }
90
+ // if in comment
91
+ if (inEndOfLineComment)
92
+ continue;
93
+ // block comment
94
+ if (inBlockComment > 0) {
95
+ if (lastChar == UTF_8.solidus && char == UTF_8.asterisk)
96
+ inBlockComment++;
97
+ if (lastChar == UTF_8.asterisk && char == UTF_8.solidus)
98
+ inBlockComment--;
99
+ continue;
100
+ }
101
+ // equal
102
+ if (char == UTF_8.equalSign && value === null) {
103
+ value = '';
104
+ continue;
105
+ }
106
+ // line comment
107
+ if (char === UTF_8.numberSign &&
108
+ (lastChar == UTF_8.lf || lastChar == UTF_8.cr)) {
109
+ inEndOfLineComment = true;
110
+ continue;
111
+ }
112
+ // end of line comment
113
+ if (char == UTF_8.solidus && isSpace(lastChar)) {
114
+ const peek = readChar();
115
+ if (peek < 0)
116
+ break;
117
+ if (peek == UTF_8.solidus) {
118
+ inEndOfLineComment = true;
119
+ continue;
120
+ }
121
+ if (peek == UTF_8.asterisk) {
122
+ inBlockComment++;
123
+ continue;
124
+ }
125
+ unreadChar(peek);
126
+ }
127
+ // escape or line continuation
128
+ if (char == UTF_8.reverseSolidus) {
129
+ let peek = readChar();
130
+ if (peek < 0)
131
+ break;
132
+ else if (peek == UTF_8.n)
133
+ char = UTF_8.lf;
134
+ else if (peek == UTF_8.r)
135
+ char = UTF_8.cr;
136
+ else if (peek == UTF_8.t)
137
+ char = UTF_8.tab;
138
+ else if (peek == UTF_8.reverseSolidus)
139
+ char = UTF_8.reverseSolidus;
140
+ else if (peek == UTF_8.cr || peek == UTF_8.lf) {
141
+ // line continuation
142
+ lineNum++;
143
+ if (peek == UTF_8.cr) {
144
+ peek = readChar();
145
+ if (peek != UTF_8.lf)
146
+ unreadChar(peek);
147
+ }
148
+ while (true) {
149
+ peek = readChar();
150
+ if (peek == UTF_8.space || peek == UTF_8.tab)
151
+ continue;
152
+ unreadChar(peek);
153
+ break;
154
+ }
155
+ continue;
156
+ }
157
+ else if (peek == UTF_8.u) {
158
+ const n3 = hex(readChar());
159
+ const n2 = hex(readChar());
160
+ const n1 = hex(readChar());
161
+ const n0 = hex(readChar());
162
+ if (n3 < 0 || n2 < 0 || n1 < 0 || n0 < 0)
163
+ throw new Error('Invalid hex value for \\uxxxx [Line ' + lineNum + ']');
164
+ char = (n3 << 12) | (n2 << 8) | (n1 << 4) | n0;
165
+ }
166
+ else
167
+ throw new Error('Invalid escape sequence [Line ' + lineNum + ']');
168
+ }
169
+ // normal character
170
+ if (value === null)
171
+ name += String.fromCharCode(char);
172
+ else
173
+ value += String.fromCharCode(char);
174
+ }
175
+ const n = name.trim();
176
+ if (value !== null) {
177
+ props[n] = value.trim();
178
+ }
179
+ else if (n.length > 0)
180
+ throw new Error('Invalid name/value pair [Line ' + lineNum + ']');
181
+ return props;
182
+ }
183
+ exports.parseFantomProps = parseFantomProps;
184
184
  //# sourceMappingURL=fantomPropsToObject.js.map
@@ -1,4 +1,4 @@
1
- /**
2
- * Converts props file to json file.
3
- */
4
- export default function generateJsonFromFantomPropsFile(inputPath?: string, outputPath?: string): Promise<void>;
1
+ /**
2
+ * Converts props file to json file.
3
+ */
4
+ export default function generateJsonFromFantomPropsFile(inputPath?: string, outputPath?: string): Promise<void>;
@@ -1,42 +1,42 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- var __importDefault = (this && this.__importDefault) || function (mod) {
29
- return (mod && mod.__esModule) ? mod : { "default": mod };
30
- };
31
- Object.defineProperty(exports, "__esModule", { value: true });
32
- const fs = __importStar(require("fs"));
33
- const readFantomPropsFile_1 = __importDefault(require("./readFantomPropsFile"));
34
- /**
35
- * Converts props file to json file.
36
- */
37
- async function generateJsonFromFantomPropsFile(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json') {
38
- const result = await (0, readFantomPropsFile_1.default)(inputPath);
39
- fs.writeFileSync(outputPath, JSON.stringify(result, null, '\t'));
40
- }
41
- exports.default = generateJsonFromFantomPropsFile;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ const fs = __importStar(require("fs"));
33
+ const readFantomPropsFile_1 = __importDefault(require("./readFantomPropsFile"));
34
+ /**
35
+ * Converts props file to json file.
36
+ */
37
+ async function generateJsonFromFantomPropsFile(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json') {
38
+ const result = await (0, readFantomPropsFile_1.default)(inputPath);
39
+ fs.writeFileSync(outputPath, JSON.stringify(result, null, '\t'));
40
+ }
41
+ exports.default = generateJsonFromFantomPropsFile;
42
42
  //# sourceMappingURL=generateJsonFromFantomPropsFile.js.map
@@ -1 +1 @@
1
- export default function localePropsToJson(inputPath?: string, outputPath?: string, includeOnlyPrefixedBy?: string): Promise<void>;
1
+ export default function localePropsToJson(inputPath?: string, outputPath?: string, includeOnlyPrefixedBy?: string): Promise<void>;
@@ -1,51 +1,51 @@
1
- "use strict";
2
- /*
3
- * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
- */
5
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- var desc = Object.getOwnPropertyDescriptor(m, k);
8
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
- desc = { enumerable: true, get: function() { return m[k]; } };
10
- }
11
- Object.defineProperty(o, k2, desc);
12
- }) : (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- o[k2] = m[k];
15
- }));
16
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
- Object.defineProperty(o, "default", { enumerable: true, value: v });
18
- }) : function(o, v) {
19
- o["default"] = v;
20
- });
21
- var __importStar = (this && this.__importStar) || function (mod) {
22
- if (mod && mod.__esModule) return mod;
23
- var result = {};
24
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
- __setModuleDefault(result, mod);
26
- return result;
27
- };
28
- var __importDefault = (this && this.__importDefault) || function (mod) {
29
- return (mod && mod.__esModule) ? mod : { "default": mod };
30
- };
31
- Object.defineProperty(exports, "__esModule", { value: true });
32
- const fs = __importStar(require("fs"));
33
- const readFantomPropsFile_1 = __importDefault(require("./readFantomPropsFile"));
34
- async function localePropsToJson(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json', includeOnlyPrefixedBy = '') {
35
- const props = await (0, readFantomPropsFile_1.default)(inputPath);
36
- let localeKeys;
37
- if (includeOnlyPrefixedBy) {
38
- localeKeys = Object.fromEntries(Object.keys(props)
39
- .filter((key) => key.startsWith(includeOnlyPrefixedBy))
40
- .map((key) => [
41
- key.replace(includeOnlyPrefixedBy, '').replaceAll('.', '_'),
42
- key,
43
- ]));
44
- }
45
- else {
46
- localeKeys = Object.fromEntries(Object.keys(props).map((key) => [key.replaceAll('.', '_'), key]));
47
- }
48
- fs.writeFileSync(outputPath, JSON.stringify(localeKeys, null, '\t'));
49
- }
50
- exports.default = localePropsToJson;
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
17
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
18
+ }) : function(o, v) {
19
+ o["default"] = v;
20
+ });
21
+ var __importStar = (this && this.__importStar) || function (mod) {
22
+ if (mod && mod.__esModule) return mod;
23
+ var result = {};
24
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
25
+ __setModuleDefault(result, mod);
26
+ return result;
27
+ };
28
+ var __importDefault = (this && this.__importDefault) || function (mod) {
29
+ return (mod && mod.__esModule) ? mod : { "default": mod };
30
+ };
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ const fs = __importStar(require("fs"));
33
+ const readFantomPropsFile_1 = __importDefault(require("./readFantomPropsFile"));
34
+ async function localePropsToJson(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json', includeOnlyPrefixedBy = '') {
35
+ const props = await (0, readFantomPropsFile_1.default)(inputPath);
36
+ let localeKeys;
37
+ if (includeOnlyPrefixedBy) {
38
+ localeKeys = Object.fromEntries(Object.keys(props)
39
+ .filter((key) => key.startsWith(includeOnlyPrefixedBy))
40
+ .map((key) => [
41
+ key.replace(includeOnlyPrefixedBy, '').replaceAll('.', '_'),
42
+ key,
43
+ ]));
44
+ }
45
+ else {
46
+ localeKeys = Object.fromEntries(Object.keys(props).map((key) => [key.replaceAll('.', '_'), key]));
47
+ }
48
+ fs.writeFileSync(outputPath, JSON.stringify(localeKeys, null, '\t'));
49
+ }
50
+ exports.default = localePropsToJson;
51
51
  //# sourceMappingURL=localePropsToJson.js.map
@@ -1,5 +1,5 @@
1
- import { Props } from './fantomPropsToObject';
2
- /**
3
- * Synchronously read the given Fantom props file to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
4
- */
5
- export default function readFantomPropsFile(path: string): Promise<Props>;
1
+ import { Props } from './fantomPropsToObject';
2
+ /**
3
+ * Synchronously read the given Fantom props file to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
4
+ */
5
+ export default function readFantomPropsFile(path: string): Promise<Props>;