@j2inn/fin5-ui-utils 6.0.4 → 6.0.5-beta.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.
- package/README.md +5 -5
- package/dist/fantomProps/createFin5Props/index.d.ts +12 -12
- package/dist/fantomProps/createFin5Props/index.js +146 -146
- package/dist/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
- package/dist/fantomProps/createFin5Props/runCreateFin5Props.js +16 -16
- package/dist/fantomProps/fantomPropsToObject.d.ts +8 -8
- package/dist/fantomProps/fantomPropsToObject.js +183 -183
- package/dist/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
- package/dist/fantomProps/generateJsonFromFantomPropsFile.js +41 -41
- package/dist/fantomProps/localePropsToJson.d.ts +1 -1
- package/dist/fantomProps/localePropsToJson.js +50 -50
- package/dist/fantomProps/readFantomPropsFile.d.ts +5 -5
- package/dist/fantomProps/readFantomPropsFile.js +66 -61
- package/dist/fantomProps/readFantomPropsFile.js.map +1 -1
- package/dist/fin5Top/fin5FileUpload.d.ts +24 -24
- package/dist/fin5Top/fin5FileUpload.js +51 -51
- package/dist/fin5Top/fin5Top.d.ts +124 -124
- package/dist/fin5Top/fin5Top.js +53 -53
- package/dist/fin5Top/finEdge2Cloud.d.ts +6 -6
- package/dist/fin5Top/finEdge2Cloud.js +15 -15
- package/dist/fin5Top/getFin5BinUrl.d.ts +2 -2
- package/dist/fin5Top/getFin5BinUrl.js +9 -9
- package/dist/fin5Top/openFin5Alarm.d.ts +22 -22
- package/dist/fin5Top/openFin5Alarm.js +23 -23
- package/dist/fin5Top/openFin5Historian.d.ts +3 -3
- package/dist/fin5Top/openFin5Historian.js +19 -19
- package/dist/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
- package/dist/fin5Top/useFin5AppURLHashParameter.js +133 -133
- package/dist/index.d.ts +35 -35
- package/dist/index.js +69 -69
- package/dist/jobs/jobUtils.d.ts +14 -14
- package/dist/jobs/jobUtils.js +15 -15
- package/dist/react/app/Fin5AppContainer.d.ts +36 -36
- package/dist/react/app/Fin5AppContainer.js +102 -102
- package/dist/react/app/Fin5AppRootStore.d.ts +40 -40
- package/dist/react/app/Fin5AppRootStore.js +69 -69
- package/dist/react/components/ErrorBoundary.d.ts +57 -57
- package/dist/react/components/ErrorBoundary.js +150 -150
- package/dist/react/components/ErrorDisplayer.d.ts +19 -19
- package/dist/react/components/ErrorDisplayer.js +36 -36
- package/dist/react/components/Loader.d.ts +9 -9
- package/dist/react/components/Loader.js +17 -17
- package/dist/react/components/LoadingSpinner.d.ts +2 -2
- package/dist/react/components/LoadingSpinner.js +27 -27
- package/dist/react/components/RecordImage.d.ts +20 -20
- package/dist/react/components/RecordImage.js +51 -51
- package/dist/react/components/charts/QRCode.d.ts +25 -25
- package/dist/react/components/charts/QRCode.js +82 -82
- package/dist/react/components/charts/line-bar/Chart.d.ts +166 -166
- package/dist/react/components/charts/line-bar/Chart.js +442 -442
- package/dist/react/components/charts/line-bar/HGridChart.d.ts +58 -58
- package/dist/react/components/charts/line-bar/HGridChart.js +285 -285
- package/dist/react/components/charts/pie/PieChart.d.ts +94 -94
- package/dist/react/components/charts/pie/PieChart.js +204 -204
- package/dist/react/components/charts/pie/SimplePieChart.d.ts +21 -21
- package/dist/react/components/charts/pie/SimplePieChart.js +55 -55
- package/dist/react/components/graphics/GraphicViewer.d.ts +10 -10
- package/dist/react/components/graphics/GraphicViewer.js +29 -29
- package/dist/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
- package/dist/react/components/graphics/GraphicsTabViewer.js +90 -90
- package/dist/react/components/makeCustomElement.d.ts +16 -16
- package/dist/react/components/makeCustomElement.js +150 -150
- package/dist/react/components/navigation/BasicLayout.d.ts +41 -41
- package/dist/react/components/navigation/BasicLayout.js +155 -155
- package/dist/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
- package/dist/react/components/navigation/HeaderSiderLayout.js +110 -110
- package/dist/react/components/navigation/MenuPage.d.ts +37 -37
- package/dist/react/components/navigation/MenuPage.js +36 -36
- package/dist/react/components/navigation/MenuTrigger.d.ts +9 -9
- package/dist/react/components/navigation/MenuTrigger.js +33 -33
- package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
- package/dist/react/components/navigation/ReactRouterHeaderSiderLayout.js +25 -25
- package/dist/react/components/navigation/ReactRouterLayout.d.ts +46 -46
- package/dist/react/components/navigation/ReactRouterLayout.js +132 -132
- package/dist/react/components/navigation/customRouting/Router.d.ts +12 -12
- package/dist/react/components/navigation/customRouting/Router.js +45 -45
- package/dist/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
- package/dist/react/components/navigation/customRouting/RouterLayout.js +61 -61
- package/dist/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
- package/dist/react/components/resolvable/configurationForm/ConfigurationForm.js +95 -95
- package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
- package/dist/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +88 -88
- package/dist/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
- package/dist/react/components/resolvable/configurationForm/getSectionDefault.js +99 -99
- package/dist/react/hooks/useFin5BinUrl.d.ts +6 -6
- package/dist/react/hooks/useFin5BinUrl.js +15 -15
- package/dist/react/hooks/useFin5ColorScheme.d.ts +2 -2
- package/dist/react/hooks/useFin5ColorScheme.js +49 -49
- package/dist/react/hooks/useScreenSize.d.ts +7 -7
- package/dist/react/hooks/useScreenSize.js +31 -31
- package/dist_es/fantomProps/createFin5Props/index.d.ts +12 -12
- package/dist_es/fantomProps/createFin5Props/index.js +140 -140
- package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -2
- package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.js +11 -11
- package/dist_es/fantomProps/fantomPropsToObject.d.ts +8 -8
- package/dist_es/fantomProps/fantomPropsToObject.js +178 -178
- package/dist_es/fantomProps/generateJsonFromFantomPropsFile.d.ts +4 -4
- package/dist_es/fantomProps/generateJsonFromFantomPropsFile.js +12 -12
- package/dist_es/fantomProps/localePropsToJson.d.ts +1 -1
- package/dist_es/fantomProps/localePropsToJson.js +21 -21
- package/dist_es/fantomProps/readFantomPropsFile.d.ts +5 -5
- package/dist_es/fantomProps/readFantomPropsFile.js +40 -35
- package/dist_es/fantomProps/readFantomPropsFile.js.map +1 -1
- package/dist_es/fin5Top/fin5FileUpload.d.ts +24 -24
- package/dist_es/fin5Top/fin5FileUpload.js +47 -47
- package/dist_es/fin5Top/fin5Top.d.ts +124 -124
- package/dist_es/fin5Top/fin5Top.js +49 -49
- package/dist_es/fin5Top/finEdge2Cloud.d.ts +6 -6
- package/dist_es/fin5Top/finEdge2Cloud.js +11 -11
- package/dist_es/fin5Top/getFin5BinUrl.d.ts +2 -2
- package/dist_es/fin5Top/getFin5BinUrl.js +5 -5
- package/dist_es/fin5Top/openFin5Alarm.d.ts +22 -22
- package/dist_es/fin5Top/openFin5Alarm.js +19 -19
- package/dist_es/fin5Top/openFin5Historian.d.ts +3 -3
- package/dist_es/fin5Top/openFin5Historian.js +15 -15
- package/dist_es/fin5Top/useFin5AppURLHashParameter.d.ts +18 -18
- package/dist_es/fin5Top/useFin5AppURLHashParameter.js +124 -124
- package/dist_es/index.d.ts +35 -35
- package/dist_es/index.js +53 -53
- package/dist_es/jobs/jobUtils.d.ts +14 -14
- package/dist_es/jobs/jobUtils.js +9 -9
- package/dist_es/react/app/Fin5AppContainer.d.ts +36 -36
- package/dist_es/react/app/Fin5AppContainer.js +73 -73
- package/dist_es/react/app/Fin5AppContainer.jsx +82 -0
- package/dist_es/react/app/Fin5AppContainer.jsx.map +1 -0
- package/dist_es/react/app/Fin5AppRootStore.d.ts +40 -40
- package/dist_es/react/app/Fin5AppRootStore.js +65 -65
- package/dist_es/react/components/ErrorBoundary.d.ts +57 -57
- package/dist_es/react/components/ErrorBoundary.js +123 -123
- package/dist_es/react/components/ErrorBoundary.jsx +150 -0
- package/dist_es/react/components/ErrorBoundary.jsx.map +1 -0
- package/dist_es/react/components/ErrorDisplayer.d.ts +19 -19
- package/dist_es/react/components/ErrorDisplayer.js +28 -28
- package/dist_es/react/components/ErrorDisplayer.jsx +36 -0
- package/dist_es/react/components/ErrorDisplayer.jsx.map +1 -0
- package/dist_es/react/components/Loader.d.ts +9 -9
- package/dist_es/react/components/Loader.js +12 -12
- package/dist_es/react/components/Loader.jsx +13 -0
- package/dist_es/react/components/Loader.jsx.map +1 -0
- package/dist_es/react/components/LoadingSpinner.d.ts +2 -2
- package/dist_es/react/components/LoadingSpinner.js +20 -20
- package/dist_es/react/components/LoadingSpinner.jsx +22 -0
- package/dist_es/react/components/LoadingSpinner.jsx.map +1 -0
- package/dist_es/react/components/RecordImage.d.ts +20 -20
- package/dist_es/react/components/RecordImage.js +24 -24
- package/dist_es/react/components/charts/QRCode.d.ts +25 -25
- package/dist_es/react/components/charts/QRCode.js +52 -52
- package/dist_es/react/components/charts/line-bar/Chart.d.ts +166 -166
- package/dist_es/react/components/charts/line-bar/Chart.js +415 -415
- package/dist_es/react/components/charts/line-bar/HGridChart.d.ts +58 -58
- package/dist_es/react/components/charts/line-bar/HGridChart.js +250 -250
- package/dist_es/react/components/charts/line-bar/ZincGridChart.d.ts +12 -0
- package/dist_es/react/components/charts/line-bar/ZincGridChart.js +17 -0
- package/dist_es/react/components/charts/line-bar/ZincGridChart.js.map +1 -0
- package/dist_es/react/components/charts/pie/PieChart.d.ts +94 -94
- package/dist_es/react/components/charts/pie/PieChart.js +177 -177
- package/dist_es/react/components/charts/pie/SimplePieChart.d.ts +21 -21
- package/dist_es/react/components/charts/pie/SimplePieChart.js +25 -25
- package/dist_es/react/components/graphics/GraphicViewer.d.ts +10 -10
- package/dist_es/react/components/graphics/GraphicViewer.js +22 -22
- package/dist_es/react/components/graphics/GraphicViewer.jsx +23 -0
- package/dist_es/react/components/graphics/GraphicViewer.jsx.map +1 -0
- package/dist_es/react/components/graphics/GraphicsTabViewer.d.ts +17 -17
- package/dist_es/react/components/graphics/GraphicsTabViewer.js +60 -60
- package/dist_es/react/components/graphics/GraphicsTabViewer.jsx +63 -0
- package/dist_es/react/components/graphics/GraphicsTabViewer.jsx.map +1 -0
- package/dist_es/react/components/makeCustomElement.d.ts +16 -16
- package/dist_es/react/components/makeCustomElement.js +142 -142
- package/dist_es/react/components/navigation/BasicLayout.d.ts +41 -41
- package/dist_es/react/components/navigation/BasicLayout.js +124 -124
- package/dist_es/react/components/navigation/BasicLayout.jsx +133 -0
- package/dist_es/react/components/navigation/BasicLayout.jsx.map +1 -0
- package/dist_es/react/components/navigation/HeaderSiderLayout.d.ts +13 -13
- package/dist_es/react/components/navigation/HeaderSiderLayout.js +80 -80
- package/dist_es/react/components/navigation/MenuPage.d.ts +37 -37
- package/dist_es/react/components/navigation/MenuPage.js +30 -30
- package/dist_es/react/components/navigation/MenuPage.jsx +31 -0
- package/dist_es/react/components/navigation/MenuPage.jsx.map +1 -0
- package/dist_es/react/components/navigation/MenuTrigger.d.ts +9 -9
- package/dist_es/react/components/navigation/MenuTrigger.js +28 -28
- package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.d.ts +11 -11
- package/dist_es/react/components/navigation/ReactRouterHeaderSiderLayout.js +18 -18
- package/dist_es/react/components/navigation/ReactRouterLayout.d.ts +46 -46
- package/dist_es/react/components/navigation/ReactRouterLayout.js +99 -99
- package/dist_es/react/components/navigation/Router.d.ts +12 -0
- package/dist_es/react/components/navigation/Router.js +19 -0
- package/dist_es/react/components/navigation/Router.js.map +1 -0
- package/dist_es/react/components/navigation/Router.jsx +19 -0
- package/dist_es/react/components/navigation/Router.jsx.map +1 -0
- package/dist_es/react/components/navigation/customRouting/Router.d.ts +12 -12
- package/dist_es/react/components/navigation/customRouting/Router.js +18 -18
- package/dist_es/react/components/navigation/customRouting/RouterLayout.d.ts +11 -11
- package/dist_es/react/components/navigation/customRouting/RouterLayout.js +34 -34
- package/dist_es/react/components/navigation/react-router/BasicLayout.d.ts +23 -0
- package/dist_es/react/components/navigation/react-router/BasicLayout.js +82 -0
- package/dist_es/react/components/navigation/react-router/BasicLayout.js.map +1 -0
- package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.d.ts +24 -0
- package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js +82 -0
- package/dist_es/react/components/navigation/react-router/ReactRouterBasicLayout.js.map +1 -0
- package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.d.ts +27 -27
- package/dist_es/react/components/resolvable/configurationForm/ConfigurationForm.js +64 -64
- package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.d.ts +16 -16
- package/dist_es/react/components/resolvable/configurationForm/ConfigurationFormEntry.js +58 -58
- package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.d.ts +16 -16
- package/dist_es/react/components/resolvable/configurationForm/getSectionDefault.js +94 -94
- package/dist_es/react/hooks/useFin5BinUrl.d.ts +6 -6
- package/dist_es/react/hooks/useFin5BinUrl.js +11 -11
- package/dist_es/react/hooks/useFin5ColorScheme.d.ts +2 -2
- package/dist_es/react/hooks/useFin5ColorScheme.js +45 -45
- package/dist_es/react/hooks/useScreenSize.d.ts +7 -7
- package/dist_es/react/hooks/useScreenSize.js +27 -27
- package/package.json +1 -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
|
-
* Asynchronously 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
|
+
* Asynchronously 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>;
|