@j2inn/fin5-ui-utils 0.0.4 → 0.0.5-beta.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 (97) hide show
  1. package/dist/fantomProps/createFin5Props/index.d.ts +12 -0
  2. package/dist/fantomProps/createFin5Props/index.js +147 -0
  3. package/dist/fantomProps/createFin5Props/index.js.map +1 -0
  4. package/dist/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -0
  5. package/dist/fantomProps/createFin5Props/runCreateFin5Props.js +17 -0
  6. package/dist/fantomProps/createFin5Props/runCreateFin5Props.js.map +1 -0
  7. package/dist/fantomProps/fantomPropsToObject.js +3 -0
  8. package/dist/fantomProps/fantomPropsToObject.js.map +1 -1
  9. package/dist/fantomProps/generateJsonFromFantomPropsFile.js +3 -0
  10. package/dist/fantomProps/generateJsonFromFantomPropsFile.js.map +1 -1
  11. package/dist/fantomProps/localePropsToJson.js +3 -0
  12. package/dist/fantomProps/localePropsToJson.js.map +1 -1
  13. package/dist/fantomProps/readFantomPropsFile.js +3 -0
  14. package/dist/fantomProps/readFantomPropsFile.js.map +1 -1
  15. package/dist/fin5Top/fin5Top.js +3 -0
  16. package/dist/fin5Top/fin5Top.js.map +1 -1
  17. package/dist/fin5Top/getFin5BinUrl.js +3 -0
  18. package/dist/fin5Top/getFin5BinUrl.js.map +1 -1
  19. package/dist/fin5Top/openFin5Alarm.js +5 -2
  20. package/dist/fin5Top/openFin5Alarm.js.map +1 -1
  21. package/dist/fin5Top/openFin5Historian.js +5 -2
  22. package/dist/fin5Top/openFin5Historian.js.map +1 -1
  23. package/dist/fin5Top/useFin5AppURLHashParameter.d.ts +7 -0
  24. package/dist/fin5Top/useFin5AppURLHashParameter.js +72 -0
  25. package/dist/fin5Top/useFin5AppURLHashParameter.js.map +1 -0
  26. package/dist/index.d.ts +6 -0
  27. package/dist/index.js +12 -0
  28. package/dist/index.js.map +1 -1
  29. package/dist/react/app/Fin5AppContainer.d.ts +36 -0
  30. package/dist/react/app/Fin5AppContainer.jsx +102 -0
  31. package/dist/react/app/Fin5AppContainer.jsx.map +1 -0
  32. package/dist/react/app/Fin5AppRootStore.d.ts +38 -0
  33. package/dist/react/app/Fin5AppRootStore.js +66 -0
  34. package/dist/react/app/Fin5AppRootStore.js.map +1 -0
  35. package/dist/react/components/ErrorBoundary.d.ts +57 -0
  36. package/dist/react/components/ErrorBoundary.jsx +177 -0
  37. package/dist/react/components/ErrorBoundary.jsx.map +1 -0
  38. package/dist/react/components/Loader.d.ts +9 -0
  39. package/dist/react/components/Loader.jsx +18 -0
  40. package/dist/react/components/Loader.jsx.map +1 -0
  41. package/dist/react/components/LoadingSpinner.jsx +3 -0
  42. package/dist/react/components/LoadingSpinner.jsx.map +1 -1
  43. package/dist/react/components/navigation/BasicLayout.jsx +3 -0
  44. package/dist/react/components/navigation/BasicLayout.jsx.map +1 -1
  45. package/dist/react/components/navigation/MenuPage.jsx +3 -0
  46. package/dist/react/components/navigation/MenuPage.jsx.map +1 -1
  47. package/dist/react/components/navigation/Router.jsx +3 -0
  48. package/dist/react/components/navigation/Router.jsx.map +1 -1
  49. package/dist_es/fantomProps/createFin5Props/index.d.ts +12 -0
  50. package/dist_es/fantomProps/createFin5Props/index.js +141 -0
  51. package/dist_es/fantomProps/createFin5Props/index.js.map +1 -0
  52. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.d.ts +2 -0
  53. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.js +12 -0
  54. package/dist_es/fantomProps/createFin5Props/runCreateFin5Props.js.map +1 -0
  55. package/dist_es/fantomProps/fantomPropsToObject.js +3 -0
  56. package/dist_es/fantomProps/fantomPropsToObject.js.map +1 -1
  57. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.js +3 -0
  58. package/dist_es/fantomProps/generateJsonFromFantomPropsFile.js.map +1 -1
  59. package/dist_es/fantomProps/localePropsToJson.js +3 -0
  60. package/dist_es/fantomProps/localePropsToJson.js.map +1 -1
  61. package/dist_es/fantomProps/readFantomPropsFile.js +3 -0
  62. package/dist_es/fantomProps/readFantomPropsFile.js.map +1 -1
  63. package/dist_es/fin5Top/fin5Top.js +3 -0
  64. package/dist_es/fin5Top/fin5Top.js.map +1 -1
  65. package/dist_es/fin5Top/getFin5BinUrl.js +3 -0
  66. package/dist_es/fin5Top/getFin5BinUrl.js.map +1 -1
  67. package/dist_es/fin5Top/openFin5Alarm.js +3 -0
  68. package/dist_es/fin5Top/openFin5Alarm.js.map +1 -1
  69. package/dist_es/fin5Top/openFin5Historian.js +3 -0
  70. package/dist_es/fin5Top/openFin5Historian.js.map +1 -1
  71. package/dist_es/fin5Top/useFin5AppURLHashParameter.d.ts +7 -0
  72. package/dist_es/fin5Top/useFin5AppURLHashParameter.js +68 -0
  73. package/dist_es/fin5Top/useFin5AppURLHashParameter.js.map +1 -0
  74. package/dist_es/index.d.ts +6 -0
  75. package/dist_es/index.js +12 -0
  76. package/dist_es/index.js.map +1 -1
  77. package/dist_es/react/app/Fin5AppContainer.d.ts +36 -0
  78. package/dist_es/react/app/Fin5AppContainer.jsx +73 -0
  79. package/dist_es/react/app/Fin5AppContainer.jsx.map +1 -0
  80. package/dist_es/react/app/Fin5AppRootStore.d.ts +38 -0
  81. package/dist_es/react/app/Fin5AppRootStore.js +62 -0
  82. package/dist_es/react/app/Fin5AppRootStore.js.map +1 -0
  83. package/dist_es/react/components/ErrorBoundary.d.ts +57 -0
  84. package/dist_es/react/components/ErrorBoundary.jsx +150 -0
  85. package/dist_es/react/components/ErrorBoundary.jsx.map +1 -0
  86. package/dist_es/react/components/Loader.d.ts +9 -0
  87. package/dist_es/react/components/Loader.jsx +13 -0
  88. package/dist_es/react/components/Loader.jsx.map +1 -0
  89. package/dist_es/react/components/LoadingSpinner.jsx +3 -0
  90. package/dist_es/react/components/LoadingSpinner.jsx.map +1 -1
  91. package/dist_es/react/components/navigation/BasicLayout.jsx +3 -0
  92. package/dist_es/react/components/navigation/BasicLayout.jsx.map +1 -1
  93. package/dist_es/react/components/navigation/MenuPage.jsx +3 -0
  94. package/dist_es/react/components/navigation/MenuPage.jsx.map +1 -1
  95. package/dist_es/react/components/navigation/Router.jsx +3 -0
  96. package/dist_es/react/components/navigation/Router.jsx.map +1 -1
  97. package/package.json +20 -10
@@ -0,0 +1,141 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import fs from 'fs';
5
+ import path from 'path';
6
+ import yaml from 'js-yaml';
7
+ import { promisify } from 'util';
8
+ import { makeValue, HNamespace } from 'haystack-core';
9
+ const readFile = promisify(fs.readFile);
10
+ const writeFile = promisify(fs.writeFile);
11
+ const exists = promisify(fs.exists);
12
+ const mkdir = promisify(fs.mkdir);
13
+ const readdir = promisify(fs.readdir);
14
+ const unlink = promisify(fs.unlink);
15
+ /**
16
+ * The FIN locale path where all the JSON files reside.
17
+ */
18
+ const LOCALE_PATH = 'locale';
19
+ /**
20
+ * The application defs YAML file path.
21
+ */
22
+ const APP_DEF_YAML = 'lib/app.hayson.yaml';
23
+ /**
24
+ * Return the app name.
25
+ *
26
+ * @param baseDir The base directory to run from.
27
+ * @returns The name of the app.
28
+ */
29
+ async function getAppName(baseDir) {
30
+ const buffer = await readFile(path.join(baseDir, APP_DEF_YAML));
31
+ // Find the name of the app to prefix all the keys with.
32
+ const appHayson = yaml.loadAll(buffer.toString('utf8'))?.[0];
33
+ const value = makeValue(appHayson);
34
+ return HNamespace.getFeatureName(value.get('def')?.value ?? '');
35
+ }
36
+ /**
37
+ * Return the language from the file path.
38
+ *
39
+ * @param path The file path.
40
+ * @return The language.
41
+ */
42
+ function getLanguageFromFile(path) {
43
+ return /^([^.]+)/.exec(path)?.[1] ?? '';
44
+ }
45
+ /**
46
+ * Build a tree of nodes.
47
+ *
48
+ * @param parent The parent to add the nodes too.
49
+ * @param obj The object to example.
50
+ * @param leads An array of leaf nodes to build up.
51
+ */
52
+ function buildNode(parent, obj, leafs) {
53
+ for (const key of Object.keys(obj)) {
54
+ const child = { name: key, parent };
55
+ const value = obj[key];
56
+ if (typeof value === 'string') {
57
+ child.value = value;
58
+ leafs.push(child);
59
+ }
60
+ else {
61
+ buildNode(child, value, leafs);
62
+ }
63
+ }
64
+ }
65
+ /**
66
+ * Create properties from the object.
67
+ *
68
+ * @param appName The application name.
69
+ * @param obj The object.
70
+ * @returns The properties.
71
+ */
72
+ function createProps(appName, obj) {
73
+ // Build a tree node of nodes for the JSON object. Record all the leafs.
74
+ const leafs = [];
75
+ buildNode({ name: appName }, obj, leafs);
76
+ let props = '';
77
+ // For each leaf, walk all the parents to build up a list of names.
78
+ // Reverse the list of names to create the entry.
79
+ for (const node of leafs) {
80
+ const pathNames = [];
81
+ let n = node;
82
+ while (n) {
83
+ if (n.name) {
84
+ pathNames.push(n.name);
85
+ }
86
+ n = n.parent;
87
+ }
88
+ if (pathNames.length) {
89
+ props += `${pathNames.reverse().join('.')}=${node.value}\n`;
90
+ }
91
+ }
92
+ return props;
93
+ }
94
+ /**
95
+ * Clean the properties directory of any properties files.
96
+ *
97
+ * @param dir The directory to check.
98
+ */
99
+ async function cleanPropsDir(dir) {
100
+ for (const file of await readdir(dir)) {
101
+ if (file.toLowerCase().endsWith('.props')) {
102
+ await unlink(path.join(dir, file));
103
+ }
104
+ }
105
+ }
106
+ /**
107
+ * Create the directory.
108
+ *
109
+ * @param dir The directory to create.
110
+ */
111
+ async function createDir(dir) {
112
+ if (!(await exists(dir))) {
113
+ await mkdir(dir, { recursive: true });
114
+ }
115
+ }
116
+ /**
117
+ * Create the FIN5 language prop files from the locale JSON files.
118
+ *
119
+ * This function assumes the app directory has a sub-directory named `locale` that contains
120
+ * the language files in a JSON format (i.e. `en.json`). It also assumes there's a `lib` directory
121
+ * containing the defs for the app. This is used to look up the app name that's used to prefix the
122
+ * entries in the properties file.
123
+ *
124
+ * @param appDir The directory that contains the application.
125
+ * @param propsDir The directory the properties file will output too.
126
+ */
127
+ export default async function createFin5Props(appDir, propsDir) {
128
+ const appName = await getAppName(appDir);
129
+ await createDir(propsDir);
130
+ await cleanPropsDir(propsDir);
131
+ // For each language file, create a properties file.
132
+ for (const file of await readdir(path.join(appDir, LOCALE_PATH))) {
133
+ const filePath = path.join(appDir, LOCALE_PATH, file);
134
+ const obj = JSON.parse((await readFile(filePath)).toString('utf8'));
135
+ const props = createProps(appName, obj);
136
+ const language = getLanguageFromFile(file);
137
+ const propFilePath = path.join(propsDir, `${language}.props`);
138
+ await writeFile(propFilePath, props);
139
+ }
140
+ }
141
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fantomProps/createFin5Props/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ #!/usr/bin/env node
2
+ export {};
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env node
2
+ import createFin5Props from '.';
3
+ import path from 'path';
4
+ /*
5
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
6
+ */
7
+ /**
8
+ * Run the creation of the FIN5 properties as a script.
9
+ */
10
+ console.log('Creating FIN5 property language files...');
11
+ createFin5Props(path.resolve(), path.resolve('locale')).then(() => console.log('Successfully completed property file creation'), (error) => console.error('Failed to create property file', error));
12
+ //# sourceMappingURL=runCreateFin5Props.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runCreateFin5Props.js","sourceRoot":"","sources":["../../../src/fantomProps/createFin5Props/runCreateFin5Props.ts"],"names":[],"mappings":";AAEA,OAAO,eAAe,MAAM,GAAG,CAAA;AAC/B,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB;;GAEG;AAEH;;GAEG;AAEH,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAA;AACvD,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAC3D,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,EAClE,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CACjE,CAAA"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  /**
2
5
  * Convert the given fantom props as string to JS object (@see https://fantom.org/doc/sys/InStream#readProps)
3
6
  */
@@ -1 +1 @@
1
- {"version":3,"file":"fantomPropsToObject.js","sourceRoot":"","sources":["../../src/fantomProps/fantomPropsToObject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fantomPropsToObject.js","sourceRoot":"","sources":["../../src/fantomProps/fantomPropsToObject.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  import * as fs from 'fs';
2
5
  import readFantomPropsFile from './readFantomPropsFile';
3
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"generateJsonFromFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/generateJsonFromFantomPropsFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,+BAA+B,CAC5D,SAAS,GAAG,oBAAoB,EAChC,UAAU,GAAG,uBAAuB;IAEpC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAEnD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AACjE,CAAC"}
1
+ {"version":3,"file":"generateJsonFromFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/generateJsonFromFantomPropsFile.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD;;GAEG;AACH,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,+BAA+B,CAC5D,SAAS,GAAG,oBAAoB,EAChC,UAAU,GAAG,uBAAuB;IAEpC,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAEnD,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AACjE,CAAC"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  import * as fs from 'fs';
2
5
  import readFantomPropsFile from './readFantomPropsFile';
3
6
  export default async function localePropsToJson(inputPath = '../locale/en.props', outputPath = './src/localeKeys.json', includeOnlyPrefixedBy = '') {
@@ -1 +1 @@
1
- {"version":3,"file":"localePropsToJson.js","sourceRoot":"","sources":["../../src/fantomProps/localePropsToJson.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAC9C,SAAS,GAAG,oBAAoB,EAChC,UAAU,GAAG,uBAAuB,EACpC,qBAAqB,GAAG,EAAE;IAE1B,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAElD,IAAI,UAAU,CAAA;IACd,IAAI,qBAAqB,EAAE;QAC1B,UAAU,GAAG,MAAM,CAAC,WAAW,CAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aAChB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;aACtD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YACb,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;YAC3D,GAAG;SACH,CAAC,CACH,CAAA;KACD;SAAM;QACN,UAAU,GAAG,MAAM,CAAC,WAAW,CAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAChE,CAAA;KACD;IAED,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AACrE,CAAC"}
1
+ {"version":3,"file":"localePropsToJson.js","sourceRoot":"","sources":["../../src/fantomProps/localePropsToJson.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,mBAAmB,MAAM,uBAAuB,CAAA;AAEvD,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,iBAAiB,CAC9C,SAAS,GAAG,oBAAoB,EAChC,UAAU,GAAG,uBAAuB,EACpC,qBAAqB,GAAG,EAAE;IAE1B,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,CAAA;IAElD,IAAI,UAAU,CAAA;IACd,IAAI,qBAAqB,EAAE;QAC1B,UAAU,GAAG,MAAM,CAAC,WAAW,CAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;aAChB,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,qBAAqB,CAAC,CAAC;aACtD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YACb,GAAG,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC;YAC3D,GAAG;SACH,CAAC,CACH,CAAA;KACD;SAAM;QACN,UAAU,GAAG,MAAM,CAAC,WAAW,CAC9B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,CAChE,CAAA;KACD;IAED,EAAE,CAAC,aAAa,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;AACrE,CAAC"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  import * as fs from 'fs';
2
5
  import { parseFantomProps } from './fantomPropsToObject';
3
6
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"readFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/readFantomPropsFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAE,gBAAgB,EAAS,MAAM,uBAAuB,CAAA;AAE/D;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,IAAY;IACvD,OAAO,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE5C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE;YAC3B,MAAM,QAAQ,GAAG,GAAW,EAAE;gBAC7B,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACrC,CAAC,CAAA;YAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;gBACnC,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAClD,CAAC,CAAA;YAED,IAAI;gBACH,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,KAAK,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAA;aACb;oBAAS;gBACT,IAAI;oBACH,UAAU,CAAC,KAAK,EAAE,CAAA;iBAClB;gBAAC,OAAO,GAAG,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;iBAClB;aACD;QACF,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"readFantomPropsFile.js","sourceRoot":"","sources":["../../src/fantomProps/readFantomPropsFile.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAA;AACxB,OAAO,EAAE,gBAAgB,EAAS,MAAM,uBAAuB,CAAA;AAE/D;;GAEG;AACH,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,IAAY;IACvD,OAAO,IAAI,OAAO,CAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QAC7C,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAA;QAE5C,UAAU,CAAC,IAAI,CAAC,UAAU,EAAE;YAC3B,MAAM,QAAQ,GAAG,GAAW,EAAE;gBAC7B,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;YACrC,CAAC,CAAA;YAED,MAAM,UAAU,GAAG,CAAC,IAAY,EAAE,EAAE;gBACnC,OAAO,UAAU,CAAC,OAAO,CAAC,IAAI,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAClD,CAAC,CAAA;YAED,IAAI;gBACH,OAAO,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAA;aAC/C;YAAC,OAAO,KAAK,EAAE;gBACf,MAAM,CAAC,KAAK,CAAC,CAAA;aACb;oBAAS;gBACT,IAAI;oBACH,UAAU,CAAC,KAAK,EAAE,CAAA;iBAClB;gBAAC,OAAO,GAAG,EAAE;oBACb,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;iBAClB;aACD;QACF,CAAC,CAAC,CAAA;IACH,CAAC,CAAC,CAAA;AACH,CAAC"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  class Fin5TopRetriever {
2
5
  static _fin5Top;
3
6
  static get fin5Top() {
@@ -1 +1 @@
1
- {"version":3,"file":"fin5Top.js","sourceRoot":"","sources":["../../src/fin5Top/fin5Top.ts"],"names":[],"mappings":"AAGA,MAAM,gBAAgB;IACb,MAAM,CAAC,QAAQ,CAAgB;IAEvC,MAAM,KAAK,OAAO;QACjB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;IACzB,CAAC;IACD,MAAM,CAAC,UAAU,GAAG,CAAC,aAA0B,EAAkB,EAAE;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YAChC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC;gBAC7C,CAAC,CAAE,MAAM,CAAC,GAA0B,CAAC,uEAAuE;gBAC5G,CAAC,CAAC,IAAI,CAAA;SACP;QACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC,CAAA;;AAGF,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAA;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAA;AAE/C,MAAM,UAAU,eAAe,CAAC,aAA0B;IACzD,IAAI;QACH,MAAM,EAAE,GAAG,EAAE,MAAM,CAAA;QACnB,IAAK,MAAM,CAAC,GAA0B,CAAC,QAAQ,EAAE;YAChD,OAAO,IAAI,CAAA;SACX;aAAM;YACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC1C;KACD;IAAC,OAAO,GAAG,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjB,aAAa,EAAE,EAAE,CAAA;QACjB,OAAO,KAAK,CAAA;KACZ;AACF,CAAC;AA8GD,MAAM,CAAN,IAAY,YAiBX;AAjBD,WAAY,YAAY;IACvB,+BAAe,CAAA;IACf,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,8CAA8B,CAAA;IAC9B,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,8CAA8B,CAAA;IAC9B,oCAAoB,CAAA;IACpB,wCAAwB,CAAA;IACxB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACpB,CAAC,EAjBW,YAAY,KAAZ,YAAY,QAiBvB"}
1
+ {"version":3,"file":"fin5Top.js","sourceRoot":"","sources":["../../src/fin5Top/fin5Top.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,MAAM,gBAAgB;IACb,MAAM,CAAC,QAAQ,CAAgB;IAEvC,MAAM,KAAK,OAAO;QACjB,OAAO,IAAI,CAAC,UAAU,EAAE,CAAA;IACzB,CAAC;IACD,MAAM,CAAC,UAAU,GAAG,CAAC,aAA0B,EAAkB,EAAE;QAClE,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE;YAChC,IAAI,CAAC,QAAQ,GAAG,eAAe,CAAC,aAAa,CAAC;gBAC7C,CAAC,CAAE,MAAM,CAAC,GAA0B,CAAC,uEAAuE;gBAC5G,CAAC,CAAC,IAAI,CAAA;SACP;QACD,OAAO,IAAI,CAAC,QAAQ,CAAA;IACrB,CAAC,CAAA;;AAGF,MAAM,CAAC,MAAM,UAAU,GAAG,gBAAgB,CAAC,UAAU,CAAA;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAA;AAE/C,MAAM,UAAU,eAAe,CAAC,aAA0B;IACzD,IAAI;QACH,MAAM,EAAE,GAAG,EAAE,MAAM,CAAA;QACnB,IAAK,MAAM,CAAC,GAA0B,CAAC,QAAQ,EAAE;YAChD,OAAO,IAAI,CAAA;SACX;aAAM;YACN,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC1C;KACD;IAAC,OAAO,GAAG,EAAE;QACb,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACjB,aAAa,EAAE,EAAE,CAAA;QACjB,OAAO,KAAK,CAAA;KACZ;AACF,CAAC;AA8GD,MAAM,CAAN,IAAY,YAiBX;AAjBD,WAAY,YAAY;IACvB,+BAAe,CAAA;IACf,qCAAqB,CAAA;IACrB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,+BAAe,CAAA;IACf,mCAAmB,CAAA;IACnB,8CAA8B,CAAA;IAC9B,+BAAe,CAAA;IACf,uCAAuB,CAAA;IACvB,8CAA8B,CAAA;IAC9B,oCAAoB,CAAA;IACpB,wCAAwB,CAAA;IACxB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,mCAAmB,CAAA;AACpB,CAAC,EAjBW,YAAY,KAAZ,YAAY,QAiBvB"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  import { fin5Top } from './fin5Top';
2
5
  export const getFin5BinUrl = (id) => `/finGetFile/${fin5Top?.finstack?.projectName}?fileRef=${id?.toString()}`;
3
6
  //# sourceMappingURL=getFin5BinUrl.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getFin5BinUrl.js","sourceRoot":"","sources":["../../src/fin5Top/getFin5BinUrl.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAQ,EAAU,EAAE,CACjD,eAAe,OAAO,EAAE,QAAQ,EAAE,WAAW,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAA"}
1
+ {"version":3,"file":"getFin5BinUrl.js","sourceRoot":"","sources":["../../src/fin5Top/getFin5BinUrl.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAQ,EAAU,EAAE,CACjD,eAAe,OAAO,EAAE,QAAQ,EAAE,WAAW,YAAY,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAA"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  //////////////////////////////////////////////////////////////////////////
2
5
  // Alarms
3
6
  //////////////////////////////////////////////////////////////////////////
@@ -1 +1 @@
1
- {"version":3,"file":"openFin5Alarm.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Alarm.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,SAAS;AACT,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAa,MAAM,WAAW,CAAA;AAyB9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACvC,SAAS,EACT,MAAM,EACN,UAAU,GAAG,KAAK,GACJ,EAAiB,EAAE;IACjC,MAAM,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAC5E,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAElC,IAAI,YAAY,GAAG,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,CAAA;IACxD,IAAI,MAAM,EAAE;QACX,YAAY,GAAG;YACd,GAAG,YAAY;YACf,GAAG,MAAM;SACT,CAAA;KACD;IAED,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;AACxD,CAAC,CAAA"}
1
+ {"version":3,"file":"openFin5Alarm.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Alarm.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,0EAA0E;AAC1E,SAAS;AACT,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAa,MAAM,WAAW,CAAA;AAyB9C,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,EACvC,SAAS,EACT,MAAM,EACN,UAAU,GAAG,KAAK,GACJ,EAAiB,EAAE;IACjC,MAAM,OAAO,EAAE,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAA;IAC5E,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;IAElC,IAAI,YAAY,GAAG,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,IAAI,EAAE,CAAA;IACxD,IAAI,MAAM,EAAE;QACX,YAAY,GAAG;YACd,GAAG,YAAY;YACf,GAAG,MAAM;SACT,CAAA;KACD;IAED,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,YAAY,EAAE,UAAU,CAAC,CAAA;AACxD,CAAC,CAAA"}
@@ -1,3 +1,6 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  //////////////////////////////////////////////////////////////////////////
2
5
  // Historian
3
6
  //////////////////////////////////////////////////////////////////////////
@@ -1 +1 @@
1
- {"version":3,"file":"openFin5Historian.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Historian.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,YAAY;AACZ,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACxC,SAAyB,EACzB,IAAoB,EACJ,EAAE;IAClB,IAAI,OAAO,EAAE;QACZ,SAAS,IAAI,IAAI;YAChB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC;YACvD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC9D,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;KAClC;AACF,CAAC,CAAA"}
1
+ {"version":3,"file":"openFin5Historian.js","sourceRoot":"","sources":["../../src/fin5Top/openFin5Historian.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,0EAA0E;AAC1E,YAAY;AACZ,0EAA0E;AAE1E,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAMnC,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EACxC,SAAyB,EACzB,IAAoB,EACJ,EAAE;IAClB,IAAI,OAAO,EAAE;QACZ,SAAS,IAAI,IAAI;YAChB,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,SAAS,EAAE,IAAI,CAAC;YACvD,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAC9D,OAAO,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,CAAC,CAAA;KAClC;AACF,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Use a parameter in the hash of a custom app running in FIN 5 as state.
3
+ * @param name parameter name.
4
+ * @param initialState initial state used if the parameter is not defined.
5
+ * @returns the parameter value and a function to update it.
6
+ */
7
+ export declare const useFin5AppURLHashParameter: (name: string, initialState?: string) => [string | undefined, (newValue: string) => void];
@@ -0,0 +1,68 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import { useEffect, useState } from 'react';
5
+ const IN_IFRAME = window !== top;
6
+ const getTop = () => window.top ?? window;
7
+ const getApp = () => getTop()?.app;
8
+ const getTopLocation = () => getTop().location;
9
+ const getFin5HashFrameParameters = () => new URLSearchParams(getTopLocation().hash.slice(1).split('?')[1]);
10
+ const getFin5FrameURL = () => getFin5HashFrameParameters().get('url');
11
+ const getPartialURLHashFragment = (url) => `#${url?.split('#')[1] ?? ''}`;
12
+ const getHash = () => {
13
+ return IN_IFRAME
14
+ ? getPartialURLHashFragment(getFin5FrameURL())
15
+ : window.location.hash;
16
+ };
17
+ const fin5SkipHashUpdate = () => getApp()?.set('skipHashUpdate', true);
18
+ const setHash = (hash) => {
19
+ if (IN_IFRAME) {
20
+ fin5SkipHashUpdate()?.then(() => {
21
+ const frameParameters = getFin5HashFrameParameters();
22
+ frameParameters.set('url', frameParameters.get('url')?.split('#')[0] + '#' + hash);
23
+ getTopLocation().hash = `#${getTopLocation().hash.slice(1).split('?')[0]}?${frameParameters.toString()}`;
24
+ });
25
+ }
26
+ else {
27
+ window.location.hash = hash;
28
+ }
29
+ };
30
+ const getHashParameters = () => new URLSearchParams(getHash().slice(1));
31
+ /**
32
+ * Use a parameter in the hash of a custom app running in FIN 5 as state.
33
+ * @param name parameter name.
34
+ * @param initialState initial state used if the parameter is not defined.
35
+ * @returns the parameter value and a function to update it.
36
+ */
37
+ export const useFin5AppURLHashParameter = (name, initialState) => {
38
+ const [paramValue, setParamValue] = useState(getHashParameters()?.get(name) ?? undefined);
39
+ const setHashParameter = (value) => {
40
+ const params = getHashParameters();
41
+ if (params.get(name) !== value) {
42
+ if (value === '' || value == null) {
43
+ params.delete(name);
44
+ }
45
+ else {
46
+ params?.set(name, value);
47
+ }
48
+ setHash(params?.toString());
49
+ setParamValue(value);
50
+ }
51
+ };
52
+ useEffect(() => {
53
+ if (!getHashParameters()?.has(name) && initialState) {
54
+ setHashParameter(initialState);
55
+ }
56
+ }, []);
57
+ useEffect(() => {
58
+ const onHashChange = () => {
59
+ setParamValue(getHashParameters()?.get(name) ?? undefined);
60
+ };
61
+ getTop().addEventListener('hashchange', onHashChange);
62
+ return () => {
63
+ getTop().removeEventListener('hashchange', onHashChange);
64
+ };
65
+ }, []);
66
+ return [paramValue, setHashParameter];
67
+ };
68
+ //# sourceMappingURL=useFin5AppURLHashParameter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useFin5AppURLHashParameter.js","sourceRoot":"","sources":["../../src/fin5Top/useFin5AppURLHashParameter.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,18 @@
1
1
  export * from './fantomProps/fantomPropsToObject';
2
2
  export * from './fantomProps/generateJsonFromFantomPropsFile';
3
3
  export * from './fantomProps/readFantomPropsFile';
4
+ export * from './fantomProps/createFin5Props';
4
5
  export * from './fin5Top/fin5Top';
5
6
  export * from './fin5Top/getFin5BinUrl';
6
7
  export * from './fin5Top/openFin5Alarm';
7
8
  export * from './fin5Top/openFin5Historian';
9
+ export * from './fin5Top/useFin5AppURLHashParameter';
8
10
  export * from './react/components/ErrorDisplayer';
11
+ export * from './react/components/ErrorBoundary';
12
+ export * from './react/components/Loader';
9
13
  export * from './react/components/LoadingSpinner';
10
14
  export * from './react/components/navigation/BasicLayout';
11
15
  export * from './react/components/navigation/MenuPage';
12
16
  export * from './react/components/navigation/Router';
17
+ export * from './react/app/Fin5AppContainer';
18
+ export * from './react/app/Fin5AppRootStore';
package/dist_es/index.js CHANGED
@@ -1,9 +1,13 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
1
4
  //////////////////////////////////////////////////////////////////////////
2
5
  // Fantom Props
3
6
  //////////////////////////////////////////////////////////////////////////
4
7
  export * from './fantomProps/fantomPropsToObject';
5
8
  export * from './fantomProps/generateJsonFromFantomPropsFile';
6
9
  export * from './fantomProps/readFantomPropsFile';
10
+ export * from './fantomProps/createFin5Props';
7
11
  //////////////////////////////////////////////////////////////////////////
8
12
  // Fin5 APIs related modules
9
13
  //////////////////////////////////////////////////////////////////////////
@@ -11,12 +15,20 @@ export * from './fin5Top/fin5Top';
11
15
  export * from './fin5Top/getFin5BinUrl';
12
16
  export * from './fin5Top/openFin5Alarm';
13
17
  export * from './fin5Top/openFin5Historian';
18
+ export * from './fin5Top/useFin5AppURLHashParameter';
14
19
  //////////////////////////////////////////////////////////////////////////
15
20
  // React components
16
21
  //////////////////////////////////////////////////////////////////////////
17
22
  export * from './react/components/ErrorDisplayer';
23
+ export * from './react/components/ErrorBoundary';
24
+ export * from './react/components/Loader';
18
25
  export * from './react/components/LoadingSpinner';
19
26
  export * from './react/components/navigation/BasicLayout';
20
27
  export * from './react/components/navigation/MenuPage';
21
28
  export * from './react/components/navigation/Router';
29
+ //////////////////////////////////////////////////////////////////////////
30
+ // j2inn/app support for FIN5
31
+ //////////////////////////////////////////////////////////////////////////
32
+ export * from './react/app/Fin5AppContainer';
33
+ export * from './react/app/Fin5AppRootStore';
22
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,eAAe;AACf,0EAA0E;AAC1E,cAAc,mCAAmC,CAAA;AACjD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,mCAAmC,CAAA;AACjD,0EAA0E;AAC1E,4BAA4B;AAC5B,0EAA0E;AAC1E,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,0EAA0E;AAC1E,mBAAmB;AACnB,0EAA0E;AAC1E,cAAc,mCAAmC,CAAA;AACjD,cAAc,mCAAmC,CAAA;AACjD,cAAc,2CAA2C,CAAA;AACzD,cAAc,wCAAwC,CAAA;AACtD,cAAc,sCAAsC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,0EAA0E;AAC1E,eAAe;AACf,0EAA0E;AAE1E,cAAc,mCAAmC,CAAA;AACjD,cAAc,+CAA+C,CAAA;AAC7D,cAAc,mCAAmC,CAAA;AACjD,cAAc,+BAA+B,CAAA;AAE7C,0EAA0E;AAC1E,4BAA4B;AAC5B,0EAA0E;AAE1E,cAAc,mBAAmB,CAAA;AACjC,cAAc,yBAAyB,CAAA;AACvC,cAAc,yBAAyB,CAAA;AACvC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,sCAAsC,CAAA;AAEpD,0EAA0E;AAC1E,mBAAmB;AACnB,0EAA0E;AAE1E,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,2BAA2B,CAAA;AACzC,cAAc,mCAAmC,CAAA;AACjD,cAAc,2CAA2C,CAAA;AACzD,cAAc,wCAAwC,CAAA;AACtD,cAAc,sCAAsC,CAAA;AAEpD,0EAA0E;AAC1E,6BAA6B;AAC7B,0EAA0E;AAE1E,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA"}
@@ -0,0 +1,36 @@
1
+ import React from 'react';
2
+ import { AppStore } from '@j2inn/app';
3
+ import { Client } from 'haystack-nclient';
4
+ import { ThemeDef } from '@j2inn/ui';
5
+ /**
6
+ * Properties for the dev application container component.
7
+ */
8
+ export interface Fin5AppContainerProps {
9
+ /**
10
+ * The children to render.
11
+ */
12
+ children?: React.ReactNode;
13
+ /**
14
+ * The app store.
15
+ */
16
+ appStore?: AppStore;
17
+ /**
18
+ * The network client object.
19
+ */
20
+ client?: Client;
21
+ /**
22
+ * Optional project name. Typically this is only specified
23
+ * in development mode. It's typically picked up from the URL.
24
+ */
25
+ project?: string;
26
+ /**
27
+ * The optional theme to use.
28
+ */
29
+ theme?: ThemeDef;
30
+ }
31
+ /**
32
+ * Creates a basic application container environment to run a view in FIN5.
33
+ */
34
+ export declare const Fin5AppContainer: (({ children, appStore, client, project, theme, }: Fin5AppContainerProps) => JSX.Element) & {
35
+ displayName: string;
36
+ };
@@ -0,0 +1,73 @@
1
+ /*
2
+ * Copyright (c) 2022, J2 Innovations. All Rights Reserved
3
+ */
4
+ import React, { useEffect, useRef, useState } from 'react';
5
+ import { AppRootStoreContext, AppStoreContext } from '@j2inn/app';
6
+ import { observer } from 'mobx-react-lite';
7
+ import { Fin5AppRootStore } from './Fin5AppRootStore';
8
+ import { Client } from 'haystack-nclient';
9
+ import { ClientContext } from 'haystack-react';
10
+ import { I18NProvider } from '@j2inn/utils';
11
+ import { ThemeProvider } from 'react-jss';
12
+ import { DEFAULT_THEME, GenerateTheme } from '@j2inn/ui';
13
+ import { fin5Top } from '../../fin5Top/fin5Top';
14
+ import { useFin5AppURLHashParameter } from '../../fin5Top/useFin5AppURLHashParameter';
15
+ import { HRef } from 'haystack-core';
16
+ import { ErrorBoundary } from '../components/ErrorBoundary';
17
+ import Loader from '../components/Loader';
18
+ /**
19
+ * Creates a basic application container environment to run a view in FIN5.
20
+ */
21
+ export const Fin5AppContainer = observer(({ children, appStore, client, project, theme = GenerateTheme(DEFAULT_THEME).light, }) => {
22
+ const [loading, setLoading] = useState(true);
23
+ const [loadingi18n, setLoadingi18n] = useState(true);
24
+ const rootStoreRef = useRef(null);
25
+ const rootStore = rootStoreRef.current ??
26
+ (rootStoreRef.current = new Fin5AppRootStore());
27
+ const [hashProjName] = useFin5AppURLHashParameter('projectName');
28
+ const containerProject = project || hashProjName || fin5Top?.finstack?.projectName || '';
29
+ const locale = fin5Top?.languageManager?.currentLang ?? navigator?.language;
30
+ rootStore.locale = locale;
31
+ if (!rootStore.allLocales.includes(locale)) {
32
+ rootStore.allLocales.push(locale);
33
+ }
34
+ const target = fin5Top?.app?.TargetRef?.() || '';
35
+ rootStore.target = target ? HRef.make(target).value : '';
36
+ const getClient = () => client ??
37
+ new Client({
38
+ base: new URL(window.location.href),
39
+ project: containerProject,
40
+ options: { headers: { accept: 'text/zinc' } },
41
+ });
42
+ const [containerClient, setContainerClient] = useState(getClient);
43
+ useEffect(() => {
44
+ setLoading(true);
45
+ const newClient = getClient();
46
+ setContainerClient(newClient);
47
+ // Load everything network wise before we load
48
+ // the application.
49
+ Promise.all([
50
+ newClient.ext.eval('finGetCurrentUser()'),
51
+ newClient.ext.loadDefs(),
52
+ ]).then(([userGrid]) => {
53
+ rootStore.currentUser = userGrid.first;
54
+ setLoading(false);
55
+ });
56
+ }, [client, containerProject]);
57
+ return (<AppRootStoreContext.Provider value={rootStore}>
58
+ <AppStoreContext.Provider value={appStore}>
59
+ <ClientContext.Provider value={containerClient}>
60
+ <I18NProvider locale={locale} setLoading={setLoadingi18n}>
61
+ <ThemeProvider theme={theme}>
62
+ <Loader loading={loading || loadingi18n}>
63
+ <ErrorBoundary mode={"global" /* ErrorBoundaryMode.global */}>
64
+ {children}
65
+ </ErrorBoundary>
66
+ </Loader>
67
+ </ThemeProvider>
68
+ </I18NProvider>
69
+ </ClientContext.Provider>
70
+ </AppStoreContext.Provider>
71
+ </AppRootStoreContext.Provider>);
72
+ });
73
+ //# sourceMappingURL=Fin5AppContainer.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Fin5AppContainer.jsx","sourceRoot":"","sources":["../../../src/react/app/Fin5AppContainer.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AAC1D,OAAO,EAAE,mBAAmB,EAAY,eAAe,EAAE,MAAM,YAAY,CAAA;AAC3E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AACrD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAA;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAY,MAAM,WAAW,CAAA;AAClE,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAA;AACrF,OAAO,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACpC,OAAO,EAAE,aAAa,EAAqB,MAAM,6BAA6B,CAAA;AAC9E,OAAO,MAAM,MAAM,sBAAsB,CAAA;AAiCzC;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,QAAQ,CACvC,CAAC,EACA,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,GAAG,aAAa,CAAC,aAAa,CAAC,CAAC,KAAK,GACnB,EAAe,EAAE;IACxC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAEpD,MAAM,YAAY,GAAG,MAAM,CAA0B,IAAI,CAAC,CAAA;IAC1D,MAAM,SAAS,GACd,YAAY,CAAC,OAAO;QACpB,CAAC,YAAY,CAAC,OAAO,GAAG,IAAI,gBAAgB,EAAE,CAAC,CAAA;IAEhD,MAAM,CAAC,YAAY,CAAC,GAAG,0BAA0B,CAAC,aAAa,CAAC,CAAA;IAEhE,MAAM,gBAAgB,GACrB,OAAO,IAAI,YAAY,IAAI,OAAO,EAAE,QAAQ,EAAE,WAAW,IAAI,EAAE,CAAA;IAEhE,MAAM,MAAM,GACX,OAAO,EAAE,eAAe,EAAE,WAAW,IAAI,SAAS,EAAE,QAAQ,CAAA;IAE7D,SAAS,CAAC,MAAM,GAAG,MAAM,CAAA;IACzB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;QAC3C,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;KACjC;IAED,MAAM,MAAM,GAAG,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,CAAA;IAChD,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;IAExD,MAAM,SAAS,GAAG,GAAG,EAAE,CACtB,MAAM;QACN,IAAI,MAAM,CAAC;YACV,IAAI,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC;YACnC,OAAO,EAAE,gBAAgB;YACzB,OAAO,EAAE,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE;SAC7C,CAAC,CAAA;IAEH,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAC1C,QAAQ,CAAS,SAAS,CAAC,CAAA;IAE5B,SAAS,CAAC,GAAG,EAAE;QACd,UAAU,CAAC,IAAI,CAAC,CAAA;QAEhB,MAAM,SAAS,GAAG,SAAS,EAAE,CAAA;QAC7B,kBAAkB,CAAC,SAAS,CAAC,CAAA;QAE7B,8CAA8C;QAC9C,mBAAmB;QACnB,OAAO,CAAC,GAAG,CAAC;YACX,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC;YACzC,SAAS,CAAC,GAAG,CAAC,QAAQ,EAAE;SACxB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;YACtB,SAAS,CAAC,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAA;YACtC,UAAU,CAAC,KAAK,CAAC,CAAA;QAClB,CAAC,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAA;IAE9B,OAAO,CACN,CAAC,mBAAmB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAC9C;IAAA,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CACzC;KAAA,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,CAC9C;MAAA,CAAC,YAAY,CACZ,MAAM,CAAC,CAAC,MAAM,CAAC,CACf,UAAU,CAAC,CAAC,cAAc,CAAC,CAC3B;OAAA,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAC3B;QAAA,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,IAAI,WAAW,CAAC,CACvC;SAAA,CAAC,aAAa,CACb,IAAI,CAAC,yCAA0B,CAC/B;UAAA,CAAC,QAAQ,CACV;SAAA,EAAE,aAAa,CAChB;QAAA,EAAE,MAAM,CACT;OAAA,EAAE,aAAa,CAChB;MAAA,EAAE,YAAY,CACf;KAAA,EAAE,aAAa,CAAC,QAAQ,CACzB;IAAA,EAAE,eAAe,CAAC,QAAQ,CAC3B;GAAA,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAC/B,CAAA;AACF,CAAC,CACD,CAAA"}
@@ -0,0 +1,38 @@
1
+ import { AppRootStore, App, AppView, CustomHistory, AppAccessLevel } from '@j2inn/app';
2
+ import { HDict } from 'haystack-core';
3
+ /**
4
+ * An application root store for use with FIN5.
5
+ */
6
+ export declare class Fin5AppRootStore implements AppRootStore {
7
+ constructor();
8
+ get app(): {
9
+ id: string;
10
+ name: string;
11
+ app: App;
12
+ view: AppView;
13
+ } | undefined;
14
+ get sidebar(): {
15
+ id: string;
16
+ name: string;
17
+ app: App;
18
+ view: AppView;
19
+ } | undefined;
20
+ readonly apps: App[];
21
+ project: string;
22
+ sidebarOpen: boolean;
23
+ open(): void;
24
+ openSidebar(): void;
25
+ locale: string;
26
+ allLocales: string[];
27
+ target: string;
28
+ targetSidebar: string;
29
+ readonly history: CustomHistory;
30
+ readonly historySidebar: CustomHistory;
31
+ currentUser: HDict | undefined;
32
+ postAppMessage(): void;
33
+ registerQuicklinks(): void;
34
+ unregisterQuicklinks(): void;
35
+ registerSidebars(): void;
36
+ unregisterSidebars(): void;
37
+ hasAppAccess: (_: string, access: AppAccessLevel) => boolean;
38
+ }