@openmrs/esm-openconceptlab-app 3.0.1-pre.7 → 3.0.1-pre.72

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 (78) hide show
  1. package/.turbo/turbo-build.log +33 -36
  2. package/dist/130.js +2 -0
  3. package/dist/130.js.LICENSE.txt +5 -0
  4. package/dist/130.js.map +1 -0
  5. package/dist/316.js +1 -1
  6. package/dist/316.js.map +1 -0
  7. package/dist/392.js +1 -0
  8. package/dist/392.js.map +1 -0
  9. package/dist/553.js +1 -0
  10. package/dist/553.js.map +1 -0
  11. package/dist/574.js +1 -1
  12. package/dist/608.js +2 -0
  13. package/dist/608.js.LICENSE.txt +15 -0
  14. package/dist/608.js.map +1 -0
  15. package/dist/784.js +1 -1
  16. package/dist/784.js.map +1 -0
  17. package/dist/842.js +1 -0
  18. package/dist/842.js.map +1 -0
  19. package/dist/853.js +1 -0
  20. package/dist/853.js.map +1 -0
  21. package/dist/912.js +2 -0
  22. package/dist/912.js.LICENSE.txt +9 -0
  23. package/dist/912.js.map +1 -0
  24. package/dist/main.js +1 -1
  25. package/dist/main.js.map +1 -0
  26. package/dist/openmrs-esm-openconceptlab-app.js +1 -1
  27. package/dist/openmrs-esm-openconceptlab-app.js.buildmanifest.json +143 -54
  28. package/dist/openmrs-esm-openconceptlab-app.js.map +1 -0
  29. package/dist/routes.json +1 -0
  30. package/jest.config.js +3 -0
  31. package/package.json +7 -5
  32. package/src/admin-ocl-card-link.component.tsx +23 -0
  33. package/src/declarations.d.tsx +2 -0
  34. package/src/import/import.component.tsx +38 -21
  35. package/src/import/import.resource.ts +1 -1
  36. package/src/import/import.scss +26 -0
  37. package/src/import/import.test.tsx +13 -15
  38. package/src/index.ts +9 -51
  39. package/src/previous-imports/import-overview/import-items.component.tsx +23 -20
  40. package/src/previous-imports/import-overview/import-items.resource.ts +1 -1
  41. package/src/previous-imports/import-overview/import-items.scss +23 -0
  42. package/src/previous-imports/import-overview/import-items.test.tsx +7 -14
  43. package/src/previous-imports/import-overview/import-overview.component.tsx +2 -2
  44. package/src/previous-imports/import-overview/import-overview.scss +10 -0
  45. package/src/previous-imports/import-overview/import-overview.test.tsx +1 -2
  46. package/src/previous-imports/previous-imports.component.tsx +4 -4
  47. package/src/previous-imports/previous-imports.resource.ts +1 -1
  48. package/src/previous-imports/previous-imports.scss +39 -0
  49. package/src/previous-imports/previous-imports.test.tsx +1 -2
  50. package/src/root.component.tsx +8 -8
  51. package/src/root.scss +23 -0
  52. package/src/root.test.tsx +4 -4
  53. package/src/routes.json +20 -0
  54. package/src/subscription/subscription.component.tsx +58 -24
  55. package/src/subscription/subscription.resource.ts +1 -1
  56. package/src/subscription/subscription.scss +26 -0
  57. package/src/subscription/subscription.test.tsx +22 -20
  58. package/src/utils.ts +27 -0
  59. package/translations/en.json +42 -40
  60. package/tsconfig.json +1 -19
  61. package/webpack.config.js +1 -1
  62. package/dist/452.js +0 -1
  63. package/dist/645.js +0 -2
  64. package/dist/645.js.LICENSE.txt +0 -20
  65. package/dist/709.js +0 -1
  66. package/dist/858.js +0 -2
  67. package/dist/858.js.LICENSE.txt +0 -1
  68. package/dist/862.js +0 -1
  69. package/dist/openmrs-esm-openconceptlab-app.old +0 -1
  70. package/locales/en/translation.json +0 -35
  71. package/locales/fr/translation.json +0 -35
  72. package/src/import/import.component.scss +0 -27
  73. package/src/previous-imports/import-overview/import-items.component.scss +0 -24
  74. package/src/previous-imports/import-overview/import-overview.component.scss +0 -11
  75. package/src/previous-imports/previous-imports.component.scss +0 -39
  76. package/src/root.component.scss +0 -23
  77. package/src/setup-tests.ts +0 -1
  78. package/src/subscription/subscription.component.scss +0 -27
@@ -1,15 +1,42 @@
1
1
  {
2
2
  "chunks": [
3
+ {
4
+ "rendered": true,
5
+ "initial": false,
6
+ "entry": false,
7
+ "recorded": false,
8
+ "reason": "split chunk (cache group: defaultVendors)",
9
+ "size": 1480202,
10
+ "sizes": {
11
+ "javascript": 1480202
12
+ },
13
+ "names": [],
14
+ "idHints": [
15
+ "vendors"
16
+ ],
17
+ "runtime": [
18
+ "@openmrs/esm-openconceptlab-app",
19
+ "main"
20
+ ],
21
+ "files": [
22
+ "130.js"
23
+ ],
24
+ "auxiliaryFiles": [
25
+ "130.js.map"
26
+ ],
27
+ "hash": "10fa63197d8e1236",
28
+ "childrenByOrder": {}
29
+ },
3
30
  {
4
31
  "rendered": true,
5
32
  "initial": true,
6
33
  "entry": true,
7
34
  "recorded": false,
8
- "size": 19453,
35
+ "size": 19514,
9
36
  "sizes": {
10
37
  "javascript": 42,
11
38
  "share-init": 168,
12
- "runtime": 19243
39
+ "runtime": 19304
13
40
  },
14
41
  "names": [
15
42
  "@openmrs/esm-openconceptlab-app"
@@ -21,8 +48,10 @@
21
48
  "files": [
22
49
  "openmrs-esm-openconceptlab-app.js"
23
50
  ],
24
- "auxiliaryFiles": [],
25
- "hash": "b82fac69008cb7fc131f",
51
+ "auxiliaryFiles": [
52
+ "openmrs-esm-openconceptlab-app.js.map"
53
+ ],
54
+ "hash": "ac64faa315862a47",
26
55
  "childrenByOrder": {}
27
56
  },
28
57
  {
@@ -30,12 +59,12 @@
30
59
  "initial": true,
31
60
  "entry": true,
32
61
  "recorded": false,
33
- "size": 22076,
62
+ "size": 20736,
34
63
  "sizes": {
35
64
  "consume-shared": 42,
36
- "javascript": 2256,
65
+ "javascript": 855,
37
66
  "share-init": 168,
38
- "runtime": 19610
67
+ "runtime": 19671
39
68
  },
40
69
  "names": [
41
70
  "main"
@@ -47,8 +76,10 @@
47
76
  "files": [
48
77
  "main.js"
49
78
  ],
50
- "auxiliaryFiles": [],
51
- "hash": "e486536a16a19209edec",
79
+ "auxiliaryFiles": [
80
+ "main.js.map"
81
+ ],
82
+ "hash": "328ed424ecd65e77",
52
83
  "childrenByOrder": {}
53
84
  },
54
85
  {
@@ -69,7 +100,7 @@
69
100
  ],
70
101
  "files": [],
71
102
  "auxiliaryFiles": [],
72
- "hash": "db8ef61fa9ed16831608",
103
+ "hash": "736c8da501c2a721",
73
104
  "childrenByOrder": {}
74
105
  },
75
106
  {
@@ -93,8 +124,10 @@
93
124
  "files": [
94
125
  "316.js"
95
126
  ],
96
- "auxiliaryFiles": [],
97
- "hash": "03f0939e0125623d49c2",
127
+ "auxiliaryFiles": [
128
+ "316.js.map"
129
+ ],
130
+ "hash": "f12dc71636991ef6",
98
131
  "childrenByOrder": {}
99
132
  },
100
133
  {
@@ -102,10 +135,9 @@
102
135
  "initial": false,
103
136
  "entry": false,
104
137
  "recorded": false,
105
- "size": 75047,
138
+ "size": 960,
106
139
  "sizes": {
107
- "javascript": 74963,
108
- "consume-shared": 84
140
+ "javascript": 960
109
141
  },
110
142
  "names": [],
111
143
  "idHints": [],
@@ -114,10 +146,12 @@
114
146
  "main"
115
147
  ],
116
148
  "files": [
117
- "452.js"
149
+ "392.js"
118
150
  ],
119
- "auxiliaryFiles": [],
120
- "hash": "91a5ed86659b996b77f7",
151
+ "auxiliaryFiles": [
152
+ "392.js.map"
153
+ ],
154
+ "hash": "4c6334893889006e",
121
155
  "childrenByOrder": {}
122
156
  },
123
157
  {
@@ -125,21 +159,26 @@
125
159
  "initial": false,
126
160
  "entry": false,
127
161
  "recorded": false,
128
- "size": 2496,
162
+ "reason": "reused as split chunk (cache group: defaultVendors)",
163
+ "size": 40221,
129
164
  "sizes": {
130
- "javascript": 2496
165
+ "javascript": 40221
131
166
  },
132
167
  "names": [],
133
- "idHints": [],
168
+ "idHints": [
169
+ "vendors"
170
+ ],
134
171
  "runtime": [
135
172
  "@openmrs/esm-openconceptlab-app",
136
173
  "main"
137
174
  ],
138
175
  "files": [
139
- "574.js"
176
+ "553.js"
140
177
  ],
141
- "auxiliaryFiles": [],
142
- "hash": "10121f188fd0202f1b1e",
178
+ "auxiliaryFiles": [
179
+ "553.js.map"
180
+ ],
181
+ "hash": "1a0b49fc551d08c5",
143
182
  "childrenByOrder": {}
144
183
  },
145
184
  {
@@ -147,24 +186,21 @@
147
186
  "initial": false,
148
187
  "entry": false,
149
188
  "recorded": false,
150
- "reason": "split chunk (cache group: defaultVendors)",
151
- "size": 1799596,
189
+ "size": 2581,
152
190
  "sizes": {
153
- "javascript": 1799596
191
+ "javascript": 2581
154
192
  },
155
193
  "names": [],
156
- "idHints": [
157
- "vendors"
158
- ],
194
+ "idHints": [],
159
195
  "runtime": [
160
196
  "@openmrs/esm-openconceptlab-app",
161
197
  "main"
162
198
  ],
163
199
  "files": [
164
- "645.js"
200
+ "574.js"
165
201
  ],
166
202
  "auxiliaryFiles": [],
167
- "hash": "ebc70c52b01ddb991d59",
203
+ "hash": "d540dc0bfcdcc889",
168
204
  "childrenByOrder": {}
169
205
  },
170
206
  {
@@ -172,10 +208,10 @@
172
208
  "initial": false,
173
209
  "entry": false,
174
210
  "recorded": false,
175
- "reason": "reused as split chunk (cache group: defaultVendors)",
176
- "size": 39248,
211
+ "reason": "split chunk (cache group: defaultVendors)",
212
+ "size": 1671397,
177
213
  "sizes": {
178
- "javascript": 39248
214
+ "javascript": 1671397
179
215
  },
180
216
  "names": [],
181
217
  "idHints": [
@@ -186,10 +222,12 @@
186
222
  "main"
187
223
  ],
188
224
  "files": [
189
- "709.js"
225
+ "608.js"
190
226
  ],
191
- "auxiliaryFiles": [],
192
- "hash": "665a46c67c2239f85400",
227
+ "auxiliaryFiles": [
228
+ "608.js.map"
229
+ ],
230
+ "hash": "10a88ab5896cc925",
193
231
  "childrenByOrder": {}
194
232
  },
195
233
  {
@@ -210,8 +248,58 @@
210
248
  "files": [
211
249
  "784.js"
212
250
  ],
213
- "auxiliaryFiles": [],
214
- "hash": "f3db8e4641ee765cf0b5",
251
+ "auxiliaryFiles": [
252
+ "784.js.map"
253
+ ],
254
+ "hash": "122a19e5152ac6f7",
255
+ "childrenByOrder": {}
256
+ },
257
+ {
258
+ "rendered": true,
259
+ "initial": false,
260
+ "entry": false,
261
+ "recorded": false,
262
+ "size": 897,
263
+ "sizes": {
264
+ "consume-shared": 42,
265
+ "javascript": 855
266
+ },
267
+ "names": [],
268
+ "idHints": [],
269
+ "runtime": [
270
+ "@openmrs/esm-openconceptlab-app"
271
+ ],
272
+ "files": [
273
+ "842.js"
274
+ ],
275
+ "auxiliaryFiles": [
276
+ "842.js.map"
277
+ ],
278
+ "hash": "386e31f297f4acba",
279
+ "childrenByOrder": {}
280
+ },
281
+ {
282
+ "rendered": true,
283
+ "initial": false,
284
+ "entry": false,
285
+ "recorded": false,
286
+ "size": 100039,
287
+ "sizes": {
288
+ "javascript": 100039
289
+ },
290
+ "names": [],
291
+ "idHints": [],
292
+ "runtime": [
293
+ "@openmrs/esm-openconceptlab-app",
294
+ "main"
295
+ ],
296
+ "files": [
297
+ "853.js"
298
+ ],
299
+ "auxiliaryFiles": [
300
+ "853.js.map"
301
+ ],
302
+ "hash": "3bf5f48e37f30555",
215
303
  "childrenByOrder": {}
216
304
  },
217
305
  {
@@ -220,9 +308,9 @@
220
308
  "entry": false,
221
309
  "recorded": false,
222
310
  "reason": "split chunk (cache group: defaultVendors)",
223
- "size": 417361,
311
+ "size": 60079,
224
312
  "sizes": {
225
- "javascript": 417361
313
+ "javascript": 60079
226
314
  },
227
315
  "names": [],
228
316
  "idHints": [
@@ -233,32 +321,33 @@
233
321
  "main"
234
322
  ],
235
323
  "files": [
236
- "858.js"
324
+ "912.js"
237
325
  ],
238
- "auxiliaryFiles": [],
239
- "hash": "e271e0f647458d8cfe84",
326
+ "auxiliaryFiles": [
327
+ "912.js.map"
328
+ ],
329
+ "hash": "e510641881be81a6",
240
330
  "childrenByOrder": {}
241
331
  },
242
332
  {
243
- "rendered": true,
333
+ "rendered": false,
244
334
  "initial": false,
245
335
  "entry": false,
246
336
  "recorded": false,
247
- "size": 2298,
337
+ "reason": "split chunk (cache group: default)",
338
+ "size": 84,
248
339
  "sizes": {
249
- "consume-shared": 42,
250
- "javascript": 2256
340
+ "consume-shared": 84
251
341
  },
252
342
  "names": [],
253
343
  "idHints": [],
254
344
  "runtime": [
255
- "@openmrs/esm-openconceptlab-app"
256
- ],
257
- "files": [
258
- "862.js"
345
+ "@openmrs/esm-openconceptlab-app",
346
+ "main"
259
347
  ],
348
+ "files": [],
260
349
  "auxiliaryFiles": [],
261
- "hash": "a37c927806e40e4e89a1",
350
+ "hash": "f72aa64dd51f569c",
262
351
  "childrenByOrder": {}
263
352
  }
264
353
  ]
@@ -0,0 +1 @@
1
+ {"version":3,"file":"openmrs-esm-openconceptlab-app.js","mappings":"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","sources":["webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/load script","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/consumes","webpack://@openmrs/esm-openconceptlab-app/webpack/container-entry","webpack://@openmrs/esm-openconceptlab-app/webpack/bootstrap","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/compat get default export","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/define property getters","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/ensure chunk","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/get javascript chunk filename","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/global","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/hasOwnProperty shorthand","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/make namespace object","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/node module decorator","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/sharing","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/publicPath","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/jsonp chunk loading","webpack://@openmrs/esm-openconceptlab-app/webpack/runtime/nonce","webpack://@openmrs/esm-openconceptlab-app/webpack/startup"],"names":["inProgress","dataWebpackPrefix","parseVersion","versionLt","rangeToString","satisfy","findSingletonVersionKey","getInvalidSingletonVersionMessage","getSingletonVersion","warn","get","loadSingletonVersionCheckFallback","installedModules","moduleToHandlerMapping","chunkMapping","moduleMap","__webpack_require__","e","then","module","getScope","R","o","Promise","resolve","Error","undefined","init","shareScope","initScope","S","name","oldScope","I","d","exports","__webpack_module_cache__","moduleId","cachedModule","id","loaded","__webpack_modules__","call","m","c","n","getter","__esModule","a","definition","key","Object","defineProperty","enumerable","f","chunkId","all","keys","reduce","promises","u","g","globalThis","this","Function","window","obj","prop","prototype","hasOwnProperty","l","url","done","push","script","needAttach","scripts","document","getElementsByTagName","i","length","s","getAttribute","createElement","charset","timeout","nc","setAttribute","src","onScriptComplete","prev","event","onerror","onload","clearTimeout","doneFns","parentNode","removeChild","forEach","fn","setTimeout","bind","type","target","head","appendChild","r","Symbol","toStringTag","value","nmd","paths","children","initPromises","initTokens","initToken","indexOf","scope","uniqueName","register","version","factory","eager","versions","activeVersion","from","scriptUrl","importScripts","location","currentScript","replace","p","str","split","map","exec","apply","b","t","range","pop","requiredVersion","scopeName","msg","console","entry","promise","fallback","consumes","onFactory","onError","error","installedChunks","j","installedChunkData","test","reject","errorType","realSrc","message","request","webpackJsonpCallback","parentChunkLoadingFunction","data","chunkIds","moreModules","runtime","some","chunkLoadingGlobal","__webpack_exports__"],"sourceRoot":""}
@@ -0,0 +1 @@
1
+ {"$schema":"https://json.openmrs.org/routes.schema.json","backendDependencies":{"openconceptlab":">=1.2.0","webservices.rest":"^2.2.0"},"extensions":[{"name":"admin-ocl-card-link","slot":"system-admin-page-card-link-slot","component":"adminOclCardLink"}],"pages":[{"component":"root","route":"ocl"}],"version":"3.0.1-pre.72"}
package/jest.config.js ADDED
@@ -0,0 +1,3 @@
1
+ const rootConfig = require('../../jest.config.js');
2
+
3
+ module.exports = rootConfig;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openmrs/esm-openconceptlab-app",
3
- "version": "3.0.1-pre.7",
3
+ "version": "3.0.1-pre.72",
4
4
  "license": "MPL-2.0",
5
5
  "description": "An app to manage the openconceptlab module",
6
6
  "browser": "dist/openmrs-esm-openconceptlab-app.js",
@@ -12,6 +12,8 @@
12
12
  "build": "webpack --mode production",
13
13
  "analyze": "webpack --mode=production --env.analyze=true",
14
14
  "lint": "eslint src --ext js,jsx,ts,tsx",
15
+ "test": "cross-env TZ=UTC jest --config jest.config.js --verbose false --passWithNoTests --color",
16
+ "test:watch": "cross-env TZ=UTC jest --watch --config jest.config.js --color",
15
17
  "typescript": "tsc",
16
18
  "extract-translations": "i18next 'src/**/*.component.tsx' --config ../../tools/i18next-parser.config.js"
17
19
  },
@@ -36,9 +38,9 @@
36
38
  "url": "https://github.com/openmrs/openmrs-esm-admin-tools/issues"
37
39
  },
38
40
  "dependencies": {
39
- "@carbon/react": "^1.8.0",
40
- "lodash-es": "^4.17.15",
41
- "swr": "^1.3.0"
41
+ "@carbon/react": "^1.37.0",
42
+ "lodash-es": "^4.17.21",
43
+ "swr": "^2.2.2"
42
44
  },
43
45
  "peerDependencies": {
44
46
  "@openmrs/esm-framework": "4.x",
@@ -49,5 +51,5 @@
49
51
  "react-router-dom": "6.x",
50
52
  "rxjs": "6.x"
51
53
  },
52
- "gitHead": "c397cb0d5e583104cf32a050295aeb1795f1b781"
54
+ "gitHead": "368e2cb0304f9b1edf60801a5cacc3bd609f0012"
53
55
  }
@@ -0,0 +1,23 @@
1
+ import React from 'react';
2
+ import { useTranslation } from 'react-i18next';
3
+ import { Layer, ClickableTile } from '@carbon/react';
4
+ import { ArrowRight } from '@carbon/react/icons';
5
+
6
+ const OpenConceptLabCardLink: React.FC = () => {
7
+ const { t } = useTranslation();
8
+ return (
9
+ <Layer>
10
+ <ClickableTile href={`${window.spaBase}/ocl`} target="_blank" rel="norefferer">
11
+ <div>
12
+ <div className="heading">{t('manageConcepts', 'Manage Concepts')}</div>
13
+ <div className="content">{t('openConceptLab', 'Open Concept Lab')}</div>
14
+ </div>
15
+ <div className="iconWrapper">
16
+ <ArrowRight size={16} />
17
+ </div>
18
+ </ClickableTile>
19
+ </Layer>
20
+ );
21
+ };
22
+
23
+ export default OpenConceptLabCardLink;
@@ -1,2 +1,4 @@
1
1
  declare module '*.css';
2
2
  declare module '*.scss';
3
+ declare module '@carbon/react';
4
+ declare type SideNavProps = {};
@@ -1,4 +1,4 @@
1
- import { showNotification } from '@openmrs/esm-framework';
1
+ import React, { useCallback, useEffect, useState } from 'react';
2
2
  import {
3
3
  Button,
4
4
  ButtonSkeleton,
@@ -8,17 +8,20 @@ import {
8
8
  FileUploaderSkeleton,
9
9
  Form,
10
10
  Grid,
11
+ InlineLoading,
12
+ Stack,
11
13
  SkeletonText,
12
14
  } from '@carbon/react';
13
- import React, { useCallback, useEffect, useState } from 'react';
14
15
  import { useTranslation } from 'react-i18next';
15
- import styles from './import.component.scss';
16
+ import { showNotification } from '@openmrs/esm-framework';
16
17
  import { startImportWithFile, startImportWithSubscription, useSubscription } from './import.resource';
18
+ import styles from './import.scss';
17
19
 
18
20
  const Import: React.FC = () => {
19
21
  const { t } = useTranslation();
20
22
  const [isSubscriptionAvailable, setIsSubscriptionAvailable] = useState(false);
21
23
  const [file, setFile] = useState<File>();
24
+ const [isFileUploading, setIsFileUploading] = useState(false);
22
25
 
23
26
  const { data: subscription, isLoading, isError } = useSubscription();
24
27
 
@@ -34,7 +37,7 @@ const Import: React.FC = () => {
34
37
  if (fileToUpload.type !== 'application/zip') {
35
38
  showNotification({
36
39
  kind: 'error',
37
- description: t('fileFormatError'),
40
+ description: t('fileFormatError', 'Only .zip files are allowed'),
38
41
  });
39
42
  } else {
40
43
  setFile(fileToUpload);
@@ -55,7 +58,7 @@ const Import: React.FC = () => {
55
58
  if (!isSubscriptionAvailable) {
56
59
  showNotification({
57
60
  kind: 'error',
58
- description: t('noSubscriptionError'),
61
+ description: t('noSubscriptionError', 'No saved subscription'),
59
62
  });
60
63
  return;
61
64
  }
@@ -66,12 +69,12 @@ const Import: React.FC = () => {
66
69
  if (response.status === 201) {
67
70
  showNotification({
68
71
  kind: 'success',
69
- description: t('importSuccess'),
72
+ description: t('importSuccess', 'Import started successfully'),
70
73
  });
71
74
  } else {
72
75
  showNotification({
73
76
  kind: 'error',
74
- description: t('importFailed'),
77
+ description: t('importFailed', 'Import failed'),
75
78
  });
76
79
  }
77
80
  },
@@ -80,13 +83,15 @@ const Import: React.FC = () => {
80
83
 
81
84
  const handleImportWithFile = useCallback(
82
85
  async (evt: React.FormEvent<HTMLFormElement>) => {
86
+ setIsFileUploading(true);
83
87
  evt.preventDefault();
84
88
  evt.stopPropagation();
85
89
 
86
90
  if (!file) {
91
+ setIsFileUploading(false);
87
92
  showNotification({
88
93
  kind: 'error',
89
- description: t('noFileSelected'),
94
+ description: t('noFileSelected', 'No file selected'),
90
95
  });
91
96
  return;
92
97
  }
@@ -96,14 +101,16 @@ const Import: React.FC = () => {
96
101
 
97
102
  if (response.status === 201) {
98
103
  setFile(null);
104
+ setIsFileUploading(false);
99
105
  showNotification({
100
106
  kind: 'success',
101
- description: t('importSuccess'),
107
+ description: t('importSuccess', 'Import started successfully'),
102
108
  });
103
109
  } else {
110
+ setIsFileUploading(false);
104
111
  showNotification({
105
112
  kind: 'error',
106
- description: t('importFailed'),
113
+ description: t('importFailed', 'Import failed'),
107
114
  });
108
115
  }
109
116
  },
@@ -134,7 +141,7 @@ const Import: React.FC = () => {
134
141
  if (isError) {
135
142
  showNotification({
136
143
  kind: 'error',
137
- description: t('subscriptionError'),
144
+ description: t('subscriptionError', 'Error occured while fetching the subscription'),
138
145
  });
139
146
  }
140
147
 
@@ -142,23 +149,30 @@ const Import: React.FC = () => {
142
149
  <Grid className={styles.grid}>
143
150
  <Column sm={4} md={8} lg={10}>
144
151
  <Form onSubmit={handleImportWithSubscription}>
145
- <h3 className={styles.productiveHeading03}>{t('importConcepts')}</h3>
146
- <p className={styles.formText}>{t('importInstructions')}</p>
152
+ <h3 className={styles.productiveHeading03}>{t('importConcepts', 'Import Concepts')}</h3>
153
+ <p className={styles.formText}>
154
+ {t(
155
+ 'importInstructions',
156
+ 'Avoid importing during data entry hours, because the operation may significantly slow down the system. You can either use the subscription or a zip file to import concepts.',
157
+ )}
158
+ </p>
147
159
  <Button kind="primary" type="submit" disabled={!isSubscriptionAvailable}>
148
- {t('importFromSubscription')}
160
+ {t('importFromSubscription', 'Import from Subscription')}
149
161
  </Button>
150
162
  </Form>
151
163
 
152
164
  <Form className={styles.form} onSubmit={handleImportWithFile}>
153
- <h3 className={styles.productiveHeading03}>{t('importFromFileHeading')}</h3>
154
- <p className={styles.formText}>{t('importFromFileInfo')}</p>
165
+ <h3 className={styles.productiveHeading03}>{t('importFromFileHeading', 'Import from file (Offline)')}</h3>
166
+ <p className={styles.formText}>
167
+ {t('importFromFileInfo', 'You can import data without setting up a subscription by using this option.')}
168
+ </p>
155
169
  {file ? (
156
170
  <FileUploaderItem
157
171
  key={file.name}
158
172
  name={file.name}
159
173
  size="default"
160
174
  status="edit"
161
- iconDescription={t('fileAdded')}
175
+ iconDescription={t('fileAdded', 'File Added')}
162
176
  onDelete={handleFileUploaderItemClick}
163
177
  style={{ backgroundColor: '#e0e0e0' }}
164
178
  />
@@ -166,14 +180,17 @@ const Import: React.FC = () => {
166
180
  <FileUploaderDropContainer
167
181
  accept={['application/zip']}
168
182
  multiple
169
- labelText={t('importFromFileDragInfo')}
183
+ labelText={t('importFromFileDragInfo', 'Drag and drop file here or click to upload')}
170
184
  onAddFiles={onAddFiles}
171
185
  style={{ marginBottom: '1.5rem' }}
172
186
  />
173
187
  )}
174
- <Button kind="primary" type="submit">
175
- {t('importFromFile')}
176
- </Button>
188
+ <Stack gap={6} orientation="horizontal">
189
+ <Button kind="primary" type="submit">
190
+ {t('importFromFile', 'Import from file')}
191
+ </Button>
192
+ {isFileUploading && <InlineLoading description={t('uploading', 'Uploading...')} />}
193
+ </Stack>
177
194
  </Form>
178
195
  </Column>
179
196
  </Grid>
@@ -1,6 +1,6 @@
1
1
  import { openmrsFetch } from '@openmrs/esm-framework';
2
2
  import useSWR from 'swr';
3
- import { Import, Subscription } from '../types';
3
+ import type { Import, Subscription } from '../types';
4
4
 
5
5
  export function useSubscription() {
6
6
  const { data, error, isValidating } = useSWR<{ data: { results: Subscription[] } }, Error>(
@@ -0,0 +1,26 @@
1
+ @use "@carbon/layout";
2
+ @use "@carbon/type";
3
+
4
+ .grid {
5
+ margin-left: 0;
6
+ margin-right: 0;
7
+ padding-left: 0;
8
+ padding-right: 0;
9
+ }
10
+
11
+ .productiveHeading03 {
12
+ @include type.type-style('heading-03');
13
+ margin-bottom: layout.$spacing-03;
14
+ }
15
+
16
+ .form {
17
+ margin-top: layout.$spacing-07;
18
+ }
19
+
20
+ .formText {
21
+ padding-bottom: layout.$spacing-05;
22
+ }
23
+
24
+ .fileUploaderDropContainer {
25
+ margin-bottom: layout.$spacing-06;
26
+ }