@elice/material-shared-utils 1.230325.0 → 1.230418.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/cjs/_virtual/_rollupPluginBabelHelpers.js +424 -0
- package/cjs/components/MaterialIntlProvider.js +14 -10
- package/cjs/hooks/useCallbackProp.js +3 -3
- package/cjs/index.js +2 -2
- package/cjs/material-config/MaterialConfigContext.js +2 -2
- package/cjs/material-config/MaterialConfigProvider.js +32 -21
- package/cjs/material-config/useMaterialConfig.js +2 -4
- package/cjs/material-config/useMaterialConfigApiClientUpdate.js +8 -7
- package/cjs/material-config/utils.js +0 -1
- package/cjs/material-fetch/useMaterialFetch.d.ts +2 -0
- package/cjs/material-fetch/useMaterialFetch.js +3 -4
- package/cjs/material-fetch/useMaterialFetchRaw.d.ts +2 -1
- package/cjs/material-fetch/useMaterialFetchRaw.js +79 -64
- package/cjs/material-hoc/withMaterial.js +13 -17
- package/es/_virtual/_rollupPluginBabelHelpers.js +410 -0
- package/es/components/MaterialIntlProvider.js +11 -9
- package/es/hooks/useCallbackProp.js +3 -3
- package/es/material-config/MaterialConfigContext.js +2 -2
- package/es/material-config/MaterialConfigProvider.js +29 -20
- package/es/material-config/useMaterialConfig.js +2 -4
- package/es/material-config/useMaterialConfigApiClientUpdate.js +8 -7
- package/es/material-config/utils.js +0 -1
- package/es/material-fetch/useMaterialFetch.d.ts +2 -0
- package/es/material-fetch/useMaterialFetch.js +3 -4
- package/es/material-fetch/useMaterialFetchRaw.d.ts +2 -1
- package/es/material-fetch/useMaterialFetchRaw.js +79 -64
- package/es/material-hoc/withMaterial.js +11 -15
- package/package.json +7 -7
|
@@ -1,18 +1,20 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { IntlProvider } from 'react-intl';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var INTL_DEFAULT_LOCALE = 'ko';
|
|
5
|
+
var INTL_DEFAULT_PHRASES = {};
|
|
6
6
|
/**
|
|
7
7
|
* IntlProvider for material components.
|
|
8
8
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
9
|
+
var MaterialIntlProvider = function MaterialIntlProvider(_ref) {
|
|
10
|
+
var children = _ref.children,
|
|
11
|
+
_ref$locale = _ref.locale,
|
|
12
|
+
locale = _ref$locale === void 0 ? INTL_DEFAULT_LOCALE : _ref$locale,
|
|
13
|
+
_ref$phrases = _ref.phrases,
|
|
14
|
+
phrases = _ref$phrases === void 0 ? INTL_DEFAULT_PHRASES : _ref$phrases;
|
|
15
|
+
var messages = React.useMemo(function () {
|
|
16
|
+
return locale in phrases ? phrases[locale] : phrases[INTL_DEFAULT_LOCALE];
|
|
17
|
+
}, [locale, phrases]);
|
|
16
18
|
return React.createElement(IntlProvider, {
|
|
17
19
|
children: children,
|
|
18
20
|
locale: locale,
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
React.useEffect(()
|
|
3
|
+
var useCallbackProp = function useCallbackProp(cb) {
|
|
4
|
+
var cbRef = React.useRef(cb);
|
|
5
|
+
React.useEffect(function () {
|
|
6
6
|
cbRef.current = cb;
|
|
7
7
|
}, [cb]);
|
|
8
8
|
return cbRef;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createContext } from 'react';
|
|
2
2
|
import { BehaviorSubject } from 'rxjs';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
4
|
+
var MaterialConfigContext = createContext(null);
|
|
5
|
+
var sessionKeySubject$ = new BehaviorSubject(null);
|
|
6
6
|
|
|
7
7
|
export { MaterialConfigContext, sessionKeySubject$ };
|
|
@@ -1,37 +1,46 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
1
2
|
import React from 'react';
|
|
2
3
|
import { sessionKeySubject$, MaterialConfigContext } from './MaterialConfigContext.js';
|
|
3
4
|
|
|
4
|
-
|
|
5
|
-
children,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
var MaterialConfigProvider = function MaterialConfigProvider(_ref) {
|
|
6
|
+
var children = _ref.children,
|
|
7
|
+
apiOriginUrl = _ref.apiOriginUrl,
|
|
8
|
+
apiWsOriginUrl = _ref.apiWsOriginUrl,
|
|
9
|
+
_ref$orgNameShort = _ref.orgNameShort,
|
|
10
|
+
orgNameShortProp = _ref$orgNameShort === void 0 ? 'academy' : _ref$orgNameShort;
|
|
11
|
+
var _React$useState = React.useState(orgNameShortProp),
|
|
12
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
13
|
+
orgNameShort = _React$useState2[0],
|
|
14
|
+
setOrgNameShort = _React$useState2[1];
|
|
15
|
+
var _React$useState3 = React.useState(null),
|
|
16
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
17
|
+
sessionKey = _React$useState4[0],
|
|
18
|
+
setSessionKey = _React$useState4[1];
|
|
19
|
+
//
|
|
12
20
|
// Update org name short.
|
|
13
21
|
//
|
|
14
|
-
|
|
15
|
-
|
|
22
|
+
React.useEffect(function () {
|
|
23
|
+
return setOrgNameShort(orgNameShortProp);
|
|
24
|
+
}, [orgNameShortProp]);
|
|
25
|
+
//
|
|
16
26
|
// Update session key when session key subject emits.
|
|
17
27
|
//
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
return () => {
|
|
28
|
+
React.useEffect(function () {
|
|
29
|
+
var sub = sessionKeySubject$.subscribe(setSessionKey);
|
|
30
|
+
return function () {
|
|
22
31
|
sub.unsubscribe();
|
|
23
32
|
};
|
|
24
|
-
}, []);
|
|
33
|
+
}, []);
|
|
34
|
+
//
|
|
25
35
|
//
|
|
26
36
|
//
|
|
27
|
-
|
|
28
37
|
return React.createElement(MaterialConfigContext.Provider, {
|
|
29
38
|
children: children,
|
|
30
39
|
value: {
|
|
31
|
-
apiOriginUrl,
|
|
32
|
-
apiWsOriginUrl,
|
|
33
|
-
orgNameShort,
|
|
34
|
-
sessionKey
|
|
40
|
+
apiOriginUrl: apiOriginUrl,
|
|
41
|
+
apiWsOriginUrl: apiWsOriginUrl,
|
|
42
|
+
orgNameShort: orgNameShort,
|
|
43
|
+
sessionKey: sessionKey
|
|
35
44
|
}
|
|
36
45
|
});
|
|
37
46
|
};
|
|
@@ -1,13 +1,11 @@
|
|
|
1
1
|
import { useContext } from 'react';
|
|
2
2
|
import { MaterialConfigContext } from './MaterialConfigContext.js';
|
|
3
3
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
var useMaterialConfig = function useMaterialConfig() {
|
|
5
|
+
var context = useContext(MaterialConfigContext);
|
|
7
6
|
if (context === undefined) {
|
|
8
7
|
throw new Error('Oops, `useMaterialConfig` must be used within a `MaterialConfigProvider`');
|
|
9
8
|
}
|
|
10
|
-
|
|
11
9
|
return context;
|
|
12
10
|
};
|
|
13
11
|
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
+
import { slicedToArray as _slicedToArray } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
1
2
|
import { useContext, useState } from 'react';
|
|
2
3
|
import { useDeepCompareEffect } from 'react-use';
|
|
3
4
|
import { MaterialConfigContext } from './MaterialConfigContext.js';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
var useMaterialConfigApiClientUpdate = function useMaterialConfigApiClientUpdate(callback) {
|
|
7
|
+
var context = useContext(MaterialConfigContext);
|
|
8
8
|
if (!context) {
|
|
9
9
|
throw new Error('Oops, Elice material component must be used within a `MaterialConfigProvider`');
|
|
10
10
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
11
|
+
var _useState = useState(false),
|
|
12
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
13
|
+
isReady = _useState2[0],
|
|
14
|
+
setReady = _useState2[1];
|
|
15
|
+
useDeepCompareEffect(function () {
|
|
14
16
|
var _a;
|
|
15
|
-
|
|
16
17
|
callback({
|
|
17
18
|
apiBaseUrl: context.apiOriginUrl,
|
|
18
19
|
orgNameShort: context.orgNameShort,
|
|
@@ -40,10 +40,12 @@ export declare const useMaterialFetch: <MT extends enums.LectureMaterialType, R
|
|
|
40
40
|
isResponded: boolean;
|
|
41
41
|
lectureGroupType: enums.LectureGroupType | null;
|
|
42
42
|
lectureId: number;
|
|
43
|
+
libraryInfo: any;
|
|
43
44
|
mainOrderNo: number;
|
|
44
45
|
materialId: number;
|
|
45
46
|
materialKey: string;
|
|
46
47
|
materialType: enums.LectureMaterialType;
|
|
48
|
+
materialErn: string;
|
|
47
49
|
modifiedDatetime: number;
|
|
48
50
|
openScheduleDatetime: number | null;
|
|
49
51
|
originCourse: {
|
|
@@ -5,7 +5,7 @@ import { useMaterialFetchRaw } from './useMaterialFetchRaw.js';
|
|
|
5
5
|
|
|
6
6
|
//
|
|
7
7
|
//
|
|
8
|
-
|
|
8
|
+
//
|
|
9
9
|
/**
|
|
10
10
|
* Init api client and fetch material for contaner.
|
|
11
11
|
*
|
|
@@ -24,9 +24,8 @@ import { useMaterialFetchRaw } from './useMaterialFetchRaw.js';
|
|
|
24
24
|
* eliceApiClientConfigs.init
|
|
25
25
|
* );
|
|
26
26
|
*/
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
const isReady = useMaterialConfigApiClientUpdate(init);
|
|
27
|
+
var useMaterialFetch = function useMaterialFetch(materialType, materialFetchFn, init) {
|
|
28
|
+
var isReady = useMaterialConfigApiClientUpdate(init);
|
|
30
29
|
return useMaterialFetchRaw(materialType, materialFetchFn, isReady);
|
|
31
30
|
};
|
|
32
31
|
|
|
@@ -9,13 +9,14 @@ export interface FetchKeyMap {
|
|
|
9
9
|
[enums.LectureMaterialType.PDF]: 'materialPdf';
|
|
10
10
|
[enums.LectureMaterialType.Exercise]: 'materialExercise';
|
|
11
11
|
[enums.LectureMaterialType.Quiz]: 'materialQuiz';
|
|
12
|
-
[enums.LectureMaterialType.
|
|
12
|
+
[enums.LectureMaterialType.LegacyRunbox]: 'materialLegacyRunbox';
|
|
13
13
|
[enums.LectureMaterialType.VideoFile]: 'materialVideoFile';
|
|
14
14
|
[enums.LectureMaterialType.Live]: 'materialLive';
|
|
15
15
|
[enums.LectureMaterialType.Assignment]: 'materialAssignment';
|
|
16
16
|
[enums.LectureMaterialType.LMSPublicContent]: 'materialLmsPublicContent';
|
|
17
17
|
[enums.LectureMaterialType.External]: 'materialExternal';
|
|
18
18
|
[enums.LectureMaterialType.Survey]: 'materialSurvey';
|
|
19
|
+
[enums.LectureMaterialType.Runbox]: 'materialRunbox';
|
|
19
20
|
}
|
|
20
21
|
/**
|
|
21
22
|
* Init api client and fetch material for contaner.
|
|
@@ -1,25 +1,13 @@
|
|
|
1
|
+
import { defineProperty as _defineProperty, slicedToArray as _slicedToArray, asyncToGenerator as _asyncToGenerator, regeneratorRuntime as _regeneratorRuntime } from '../_virtual/_rollupPluginBabelHelpers.js';
|
|
1
2
|
import { useRef, useState, useCallback, useEffect } from 'react';
|
|
2
3
|
import { getOrgLecturePageResolve, getOrgLecturePageGet } from '@elice/api-client';
|
|
3
4
|
import { enums } from '@elice/types';
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
[enums.LectureMaterialType.Video]: 'materialVideo',
|
|
9
|
-
[enums.LectureMaterialType.PDF]: 'materialPdf',
|
|
10
|
-
[enums.LectureMaterialType.Exercise]: 'materialExercise',
|
|
11
|
-
[enums.LectureMaterialType.Quiz]: 'materialQuiz',
|
|
12
|
-
[enums.LectureMaterialType.Runbox]: 'materialRunbox',
|
|
13
|
-
[enums.LectureMaterialType.VideoFile]: 'materialVideoFile',
|
|
14
|
-
[enums.LectureMaterialType.Live]: 'materialLive',
|
|
15
|
-
[enums.LectureMaterialType.Assignment]: 'materialAssignment',
|
|
16
|
-
[enums.LectureMaterialType.LMSPublicContent]: 'materialLmsPublicContent',
|
|
17
|
-
[enums.LectureMaterialType.External]: 'materialExternal',
|
|
18
|
-
[enums.LectureMaterialType.Survey]: 'materialSurvey'
|
|
19
|
-
}); //
|
|
6
|
+
var _Object$freeze;
|
|
7
|
+
var MATERIAL_FETCH_KEY_MAP = Object.freeze((_Object$freeze = {}, _defineProperty(_Object$freeze, enums.LectureMaterialType.Nothing, 'materialNothing'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Note, 'materialNote'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Video, 'materialVideo'), _defineProperty(_Object$freeze, enums.LectureMaterialType.PDF, 'materialPdf'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Exercise, 'materialExercise'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Quiz, 'materialQuiz'), _defineProperty(_Object$freeze, enums.LectureMaterialType.LegacyRunbox, 'materialLegacyRunbox'), _defineProperty(_Object$freeze, enums.LectureMaterialType.VideoFile, 'materialVideoFile'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Live, 'materialLive'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Assignment, 'materialAssignment'), _defineProperty(_Object$freeze, enums.LectureMaterialType.LMSPublicContent, 'materialLmsPublicContent'), _defineProperty(_Object$freeze, enums.LectureMaterialType.External, 'materialExternal'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Survey, 'materialSurvey'), _defineProperty(_Object$freeze, enums.LectureMaterialType.Runbox, 'materialRunbox'), _Object$freeze));
|
|
8
|
+
//
|
|
20
9
|
//
|
|
21
10
|
//
|
|
22
|
-
|
|
23
11
|
/**
|
|
24
12
|
* Init api client and fetch material for contaner.
|
|
25
13
|
*
|
|
@@ -38,66 +26,93 @@ const MATERIAL_FETCH_KEY_MAP = Object.freeze({
|
|
|
38
26
|
* isReady // boolean
|
|
39
27
|
* );
|
|
40
28
|
*/
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
29
|
+
var useMaterialFetchRaw = function useMaterialFetchRaw(materialType, materialFetchFn) {
|
|
30
|
+
var isReady = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
31
|
+
var _return = useRef({});
|
|
32
|
+
var materialKey = MATERIAL_FETCH_KEY_MAP[materialType];
|
|
33
|
+
var _createEmptyFetchRes = function _createEmptyFetchRes() {
|
|
34
|
+
var _ref;
|
|
35
|
+
return _ref = {}, _defineProperty(_ref, materialKey, null), _defineProperty(_ref, "materialLecturePage", null), _ref;
|
|
36
|
+
};
|
|
37
|
+
var _useState = useState(_createEmptyFetchRes),
|
|
38
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
39
|
+
matFetchRes = _useState2[0],
|
|
40
|
+
setMatFetchRes = _useState2[1];
|
|
41
|
+
var _useState3 = useState('idle'),
|
|
42
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
43
|
+
matFetchStatus = _useState4[0],
|
|
44
|
+
setMatFetchStatus = _useState4[1];
|
|
54
45
|
/**
|
|
55
46
|
* fetch material and lecture page
|
|
56
47
|
*/
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
48
|
+
var fetch = useCallback( /*#__PURE__*/function () {
|
|
49
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(signal) {
|
|
50
|
+
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
51
|
+
while (1) switch (_context.prev = _context.next) {
|
|
52
|
+
case 0:
|
|
53
|
+
setMatFetchStatus('pending');
|
|
54
|
+
return _context.abrupt("return", materialFetchFn(signal).then(function (resMaterialGet) {
|
|
55
|
+
return resMaterialGet[materialKey];
|
|
56
|
+
}).then(function (material) {
|
|
57
|
+
return Promise.all([material, getOrgLecturePageResolve({
|
|
58
|
+
materialId: material.id,
|
|
59
|
+
materialType: materialType
|
|
60
|
+
}, {
|
|
61
|
+
signal: signal
|
|
62
|
+
}).then(function (resLecturePageResolve) {
|
|
63
|
+
return getOrgLecturePageGet({
|
|
64
|
+
lecturePageId: resLecturePageResolve.lecturePageId
|
|
65
|
+
}, {
|
|
66
|
+
signal: signal
|
|
67
|
+
});
|
|
68
|
+
}).then(function (resLecturePageGet) {
|
|
69
|
+
return resLecturePageGet.lecturePage;
|
|
70
|
+
})]);
|
|
71
|
+
}).then(function (_ref3) {
|
|
72
|
+
var _setMatFetchRes;
|
|
73
|
+
var _ref4 = _slicedToArray(_ref3, 2),
|
|
74
|
+
material = _ref4[0],
|
|
75
|
+
materialLecturePage = _ref4[1];
|
|
76
|
+
setMatFetchRes((_setMatFetchRes = {}, _defineProperty(_setMatFetchRes, materialKey, material), _defineProperty(_setMatFetchRes, "materialLecturePage", materialLecturePage), _setMatFetchRes));
|
|
77
|
+
setMatFetchStatus('resolved');
|
|
78
|
+
}).catch(function (err) {
|
|
79
|
+
if (err.name !== 'AbortError') {
|
|
80
|
+
setMatFetchRes(_createEmptyFetchRes);
|
|
81
|
+
setMatFetchStatus('rejected');
|
|
82
|
+
}
|
|
83
|
+
}));
|
|
84
|
+
case 2:
|
|
85
|
+
case "end":
|
|
86
|
+
return _context.stop();
|
|
87
|
+
}
|
|
88
|
+
}, _callee);
|
|
89
|
+
}));
|
|
90
|
+
return function (_x) {
|
|
91
|
+
return _ref2.apply(this, arguments);
|
|
92
|
+
};
|
|
93
|
+
}(),
|
|
94
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
95
|
+
[materialKey, materialFetchFn]);
|
|
96
|
+
//
|
|
83
97
|
// emit `fetch` when `isReady` is changed
|
|
84
98
|
//
|
|
85
|
-
|
|
86
|
-
useEffect(() => {
|
|
99
|
+
useEffect(function () {
|
|
87
100
|
if (!isReady) {
|
|
88
101
|
return;
|
|
89
102
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
103
|
+
var abortCtrl = new AbortController();
|
|
104
|
+
fetch(abortCtrl.signal).catch(function () {
|
|
105
|
+
return void 0;
|
|
106
|
+
});
|
|
107
|
+
return function () {
|
|
94
108
|
abortCtrl.abort();
|
|
95
109
|
};
|
|
96
|
-
},
|
|
97
|
-
|
|
110
|
+
},
|
|
111
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
112
|
+
[isReady, fetch]);
|
|
113
|
+
//
|
|
98
114
|
//
|
|
99
115
|
//
|
|
100
|
-
|
|
101
116
|
_return.current[materialKey] = matFetchRes[materialKey];
|
|
102
117
|
_return.current.materialLecturePage = matFetchRes.materialLecturePage;
|
|
103
118
|
_return.current.status = matFetchStatus;
|
|
@@ -7,7 +7,7 @@ import { useMaterialConfigApiClientUpdate } from '../material-config/useMaterial
|
|
|
7
7
|
|
|
8
8
|
//
|
|
9
9
|
//
|
|
10
|
-
|
|
10
|
+
//
|
|
11
11
|
/**
|
|
12
12
|
* HOC for material components.
|
|
13
13
|
*
|
|
@@ -15,13 +15,12 @@ import { useMaterialConfigApiClientUpdate } from '../material-config/useMaterial
|
|
|
15
15
|
* - `<RecoilRoot />`
|
|
16
16
|
* - `<IntlProvider />`
|
|
17
17
|
*/
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
return props
|
|
18
|
+
var withMaterial = function withMaterial(Component, eliceApiClientConfigInit) {
|
|
19
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
20
|
+
return function (props) {
|
|
21
21
|
var _a;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
var isReady = useMaterialConfigApiClientUpdate(eliceApiClientConfigInit);
|
|
23
|
+
// do not render component, if material config is not ready
|
|
25
24
|
if (!isReady) {
|
|
26
25
|
return React.createElement(Flex, {
|
|
27
26
|
justify: "center",
|
|
@@ -32,7 +31,6 @@ const withMaterial = (Component, eliceApiClientConfigInit, options = {}) => {
|
|
|
32
31
|
size: "small"
|
|
33
32
|
}));
|
|
34
33
|
}
|
|
35
|
-
|
|
36
34
|
return React.createElement(RecoilRoot, {
|
|
37
35
|
override: (_a = options.overrideRecoilScope) !== null && _a !== void 0 ? _a : false
|
|
38
36
|
}, React.createElement(MaterialIntlProvider, {
|
|
@@ -48,13 +46,12 @@ const withMaterial = (Component, eliceApiClientConfigInit, options = {}) => {
|
|
|
48
46
|
* - `<RecoilRoot />`
|
|
49
47
|
* - `<IntlProvider />`
|
|
50
48
|
*/
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
return forwardRef((props, ref)
|
|
49
|
+
var withForwardRefMaterial = function withForwardRefMaterial(Component, eliceApiClientConfigInit) {
|
|
50
|
+
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
|
|
51
|
+
return forwardRef(function (props, ref) {
|
|
54
52
|
var _a;
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
53
|
+
var isReady = useMaterialConfigApiClientUpdate(eliceApiClientConfigInit);
|
|
54
|
+
// do not render component, if material config is not ready
|
|
58
55
|
if (!isReady) {
|
|
59
56
|
return React.createElement(Flex, {
|
|
60
57
|
justify: "center",
|
|
@@ -65,7 +62,6 @@ const withForwardRefMaterial = (Component, eliceApiClientConfigInit, options = {
|
|
|
65
62
|
size: "small"
|
|
66
63
|
}));
|
|
67
64
|
}
|
|
68
|
-
|
|
69
65
|
return React.createElement(RecoilRoot, {
|
|
70
66
|
override: (_a = options.overrideRecoilScope) !== null && _a !== void 0 ? _a : false
|
|
71
67
|
}, React.createElement(MaterialIntlProvider, {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elice/material-shared-utils",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.230418.0",
|
|
4
4
|
"description": "Shared typings for elice material projects",
|
|
5
5
|
"repository": "https://git.elicer.io/elice/frontend/library/elice-material",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -29,8 +29,8 @@
|
|
|
29
29
|
"clean": "del-cli \"es/*\" \"cjs/*\" \"dist/*\""
|
|
30
30
|
},
|
|
31
31
|
"peerDependencies": {
|
|
32
|
-
"@elice/api-client": "1.
|
|
33
|
-
"@elice/material-shared-types": "
|
|
32
|
+
"@elice/api-client": "^1.230413.0",
|
|
33
|
+
"@elice/material-shared-types": "*",
|
|
34
34
|
"react": "^16.8.0 || ^17.0.0 || ^18.0.0",
|
|
35
35
|
"react-use": "^17.0.0",
|
|
36
36
|
"recoil": "~0.7.3"
|
|
@@ -39,11 +39,11 @@
|
|
|
39
39
|
"tslib": "^2.3.1"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
|
-
"@elice/api-client": "1.
|
|
43
|
-
"@elice/material-shared-types": "1.
|
|
44
|
-
"@elice/types": "^1.
|
|
42
|
+
"@elice/api-client": "^1.230413.0",
|
|
43
|
+
"@elice/material-shared-types": "1.230418.0",
|
|
44
|
+
"@elice/types": "^1.230417.0",
|
|
45
45
|
"@types/react": "~17.0.9",
|
|
46
46
|
"react-use": "^17.2.4"
|
|
47
47
|
},
|
|
48
|
-
"gitHead": "
|
|
48
|
+
"gitHead": "06d5f856939bdbb6bffa9eba30f2fab56d66129b"
|
|
49
49
|
}
|