@elice/material-pdf 1.240718.3 → 1.240719.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.
- package/cjs/components/material-pdf/MaterialPdf.js +21 -16
- package/cjs/components/material-pdf/MaterialPdf.styled.js +5 -1
- package/cjs/components/material-pdf/MaterialPdfContent.js +30 -24
- package/cjs/components/material-pdf/index.js +7 -0
- package/cjs/components/material-pdf/locales/index.js +13 -0
- package/es/components/material-pdf/MaterialPdf.js +17 -16
- package/es/components/material-pdf/MaterialPdf.styled.js +1 -1
- package/es/components/material-pdf/MaterialPdfContent.js +26 -24
- package/es/components/material-pdf/index.js +1 -0
- package/es/components/material-pdf/locales/index.js +4 -0
- package/package.json +9 -12
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
6
6
|
var intl = require('@elice/intl');
|
|
7
7
|
var classnames = require('classnames');
|
|
8
8
|
var en = require('./locales/en.json.js');
|
|
@@ -10,24 +10,29 @@ var ko = require('./locales/ko.json.js');
|
|
|
10
10
|
var MaterialPdfContent = require('./MaterialPdfContent.js');
|
|
11
11
|
var MaterialPdf_styled = require('./MaterialPdf.styled.js');
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
13
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
14
|
+
|
|
15
|
+
var classnames__default = /*#__PURE__*/_interopDefaultCompat(classnames);
|
|
16
|
+
|
|
17
|
+
var MaterialPdf = function MaterialPdf(_ref) {
|
|
18
|
+
var className = _ref.className,
|
|
19
|
+
materialPdfId = _ref.materialPdfId,
|
|
20
|
+
cMapUrl = _ref.cMapUrl,
|
|
21
|
+
__intl = _ref.__intl;
|
|
22
|
+
var prefixCls = 'em-material-pdf';
|
|
20
23
|
//
|
|
21
24
|
//
|
|
22
25
|
//
|
|
23
|
-
return
|
|
24
|
-
value: __intl
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
return jsxRuntime.jsx(intl.RawEliceIntlProvider, {
|
|
27
|
+
value: __intl,
|
|
28
|
+
children: jsxRuntime.jsx(MaterialPdf_styled.StyledMaterialPdfWrapper, {
|
|
29
|
+
className: classnames__default.default(prefixCls, className),
|
|
30
|
+
children: jsxRuntime.jsx(MaterialPdfContent.default, {
|
|
31
|
+
materialPdfId: materialPdfId,
|
|
32
|
+
cMapUrl: cMapUrl
|
|
33
|
+
})
|
|
34
|
+
})
|
|
35
|
+
});
|
|
31
36
|
};
|
|
32
37
|
var MaterialPdf$1 = new intl.IntlComponentBuilder(MaterialPdf).add('en', en.default).add('ko', ko.default).addAsync('th', Promise.resolve().then(function () { return require('./locales/th.json.js'); })).addAsync('ja', Promise.resolve().then(function () { return require('./locales/ja.json.js'); })).build();
|
|
33
38
|
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
var styled = require('styled-components');
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
6
|
+
|
|
7
|
+
var styled__default = /*#__PURE__*/_interopDefaultCompat(styled);
|
|
8
|
+
|
|
9
|
+
var StyledMaterialPdfWrapper = styled__default.default.div.withConfig({
|
|
6
10
|
componentId: "sc-hovq54-0"
|
|
7
11
|
})(["margin:0;flex:2 1;height:100%;background-color:#22222c;"]);
|
|
8
12
|
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
5
6
|
var React = require('react');
|
|
6
7
|
var apiClient = require('@elice/api-client');
|
|
7
8
|
var blocks = require('@elice/blocks');
|
|
@@ -9,34 +10,39 @@ var intl = require('@elice/intl');
|
|
|
9
10
|
var materialSharedUtils = require('@elice/material-shared-utils');
|
|
10
11
|
var types = require('@elice/types');
|
|
11
12
|
|
|
13
|
+
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
14
|
+
|
|
15
|
+
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
16
|
+
|
|
12
17
|
//
|
|
13
18
|
//
|
|
14
19
|
//
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
materialPdfId,
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
20
|
+
var POWERPOINT_EXTENSIONS = ['ppt', 'pptx', 'pps', 'ppsx'];
|
|
21
|
+
var MaterialPdfContent = function MaterialPdfContent(_ref) {
|
|
22
|
+
var materialPdfId = _ref.materialPdfId,
|
|
23
|
+
cMapUrl = _ref.cMapUrl;
|
|
24
|
+
var intl$1 = intl.useRawEliceIntl();
|
|
25
|
+
var _useMaterialFetch = materialSharedUtils.useMaterialFetch(types.enums.LectureMaterialType.PDF, React__default.default.useCallback(function (signal) {
|
|
26
|
+
return apiClient.getOrgMaterialPdfGet({
|
|
27
|
+
materialPdfId: materialPdfId
|
|
28
|
+
}, {
|
|
29
|
+
signal: signal
|
|
30
|
+
});
|
|
31
|
+
}, [materialPdfId]), apiClient.config.init),
|
|
32
|
+
materialPdf = _useMaterialFetch.materialPdf,
|
|
33
|
+
materialPdfStatus = _useMaterialFetch.status;
|
|
34
|
+
var isPowerPointFile = React.useMemo(function () {
|
|
30
35
|
var _a, _b;
|
|
31
36
|
if (!(materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url)) return false;
|
|
32
|
-
|
|
33
|
-
pathname
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
37
|
+
var _URL = new URL(materialPdf.attachment.url),
|
|
38
|
+
pathname = _URL.pathname;
|
|
39
|
+
var currentFileName = (_a = pathname.split('/').pop()) !== null && _a !== void 0 ? _a : '';
|
|
40
|
+
var currentFileExtension = (_b = currentFileName.split('.').pop()) !== null && _b !== void 0 ? _b : '';
|
|
41
|
+
return POWERPOINT_EXTENSIONS.some(function (extension) {
|
|
42
|
+
return currentFileExtension.toLowerCase().includes(extension);
|
|
43
|
+
});
|
|
38
44
|
}, [materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url]);
|
|
39
|
-
|
|
45
|
+
var componentProps = React.useMemo(function () {
|
|
40
46
|
var _a;
|
|
41
47
|
return isPowerPointFile ? {
|
|
42
48
|
type: 'powerpoint',
|
|
@@ -70,9 +76,9 @@ const MaterialPdfContent = ({
|
|
|
70
76
|
};
|
|
71
77
|
}, [cMapUrl, intl$1, isPowerPointFile, materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url, materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.title, materialPdfStatus]);
|
|
72
78
|
if (materialPdfStatus === 'pending') {
|
|
73
|
-
return
|
|
79
|
+
return jsxRuntime.jsx(blocks.Spinner, {});
|
|
74
80
|
}
|
|
75
|
-
return
|
|
81
|
+
return jsxRuntime.jsx(blocks.DocumentRenderer, Object.assign({}, componentProps));
|
|
76
82
|
};
|
|
77
83
|
|
|
78
84
|
exports.default = MaterialPdfContent;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var en = require('./en.json.js');
|
|
4
|
+
var ko = require('./ko.json.js');
|
|
5
|
+
var th = require('./th.json.js');
|
|
6
|
+
var ja = require('./ja.json.js');
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
exports.messageEn = en.default;
|
|
11
|
+
exports.messageKo = ko.default;
|
|
12
|
+
exports.messageTh = th.default;
|
|
13
|
+
exports.messageJa = ja.default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { IntlComponentBuilder, RawEliceIntlProvider } from '@elice/intl';
|
|
3
3
|
import classnames from 'classnames';
|
|
4
4
|
import messageEn from './locales/en.json.js';
|
|
@@ -6,24 +6,25 @@ import messageKo from './locales/ko.json.js';
|
|
|
6
6
|
import MaterialPdfContent from './MaterialPdfContent.js';
|
|
7
7
|
import { StyledMaterialPdfWrapper } from './MaterialPdf.styled.js';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
className,
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const prefixCls = 'em-material-pdf';
|
|
9
|
+
var MaterialPdf = function MaterialPdf(_ref) {
|
|
10
|
+
var className = _ref.className,
|
|
11
|
+
materialPdfId = _ref.materialPdfId,
|
|
12
|
+
cMapUrl = _ref.cMapUrl,
|
|
13
|
+
__intl = _ref.__intl;
|
|
14
|
+
var prefixCls = 'em-material-pdf';
|
|
16
15
|
//
|
|
17
16
|
//
|
|
18
17
|
//
|
|
19
|
-
return
|
|
20
|
-
value: __intl
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
18
|
+
return jsx(RawEliceIntlProvider, {
|
|
19
|
+
value: __intl,
|
|
20
|
+
children: jsx(StyledMaterialPdfWrapper, {
|
|
21
|
+
className: classnames(prefixCls, className),
|
|
22
|
+
children: jsx(MaterialPdfContent, {
|
|
23
|
+
materialPdfId: materialPdfId,
|
|
24
|
+
cMapUrl: cMapUrl
|
|
25
|
+
})
|
|
26
|
+
})
|
|
27
|
+
});
|
|
27
28
|
};
|
|
28
29
|
var MaterialPdf$1 = new IntlComponentBuilder(MaterialPdf).add('en', messageEn).add('ko', messageKo).addAsync('th', import('./locales/th.json.js')).addAsync('ja', import('./locales/ja.json.js')).build();
|
|
29
30
|
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
1
2
|
import React, { useMemo } from 'react';
|
|
2
3
|
import { getOrgMaterialPdfGet, config } from '@elice/api-client';
|
|
3
4
|
import { Spinner, DocumentRenderer } from '@elice/blocks';
|
|
@@ -8,31 +9,32 @@ import { enums } from '@elice/types';
|
|
|
8
9
|
//
|
|
9
10
|
//
|
|
10
11
|
//
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
materialPdfId,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
var POWERPOINT_EXTENSIONS = ['ppt', 'pptx', 'pps', 'ppsx'];
|
|
13
|
+
var MaterialPdfContent = function MaterialPdfContent(_ref) {
|
|
14
|
+
var materialPdfId = _ref.materialPdfId,
|
|
15
|
+
cMapUrl = _ref.cMapUrl;
|
|
16
|
+
var intl = useRawEliceIntl();
|
|
17
|
+
var _useMaterialFetch = useMaterialFetch(enums.LectureMaterialType.PDF, React.useCallback(function (signal) {
|
|
18
|
+
return getOrgMaterialPdfGet({
|
|
19
|
+
materialPdfId: materialPdfId
|
|
20
|
+
}, {
|
|
21
|
+
signal: signal
|
|
22
|
+
});
|
|
23
|
+
}, [materialPdfId]), config.init),
|
|
24
|
+
materialPdf = _useMaterialFetch.materialPdf,
|
|
25
|
+
materialPdfStatus = _useMaterialFetch.status;
|
|
26
|
+
var isPowerPointFile = useMemo(function () {
|
|
26
27
|
var _a, _b;
|
|
27
28
|
if (!(materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url)) return false;
|
|
28
|
-
|
|
29
|
-
pathname
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
var _URL = new URL(materialPdf.attachment.url),
|
|
30
|
+
pathname = _URL.pathname;
|
|
31
|
+
var currentFileName = (_a = pathname.split('/').pop()) !== null && _a !== void 0 ? _a : '';
|
|
32
|
+
var currentFileExtension = (_b = currentFileName.split('.').pop()) !== null && _b !== void 0 ? _b : '';
|
|
33
|
+
return POWERPOINT_EXTENSIONS.some(function (extension) {
|
|
34
|
+
return currentFileExtension.toLowerCase().includes(extension);
|
|
35
|
+
});
|
|
34
36
|
}, [materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url]);
|
|
35
|
-
|
|
37
|
+
var componentProps = useMemo(function () {
|
|
36
38
|
var _a;
|
|
37
39
|
return isPowerPointFile ? {
|
|
38
40
|
type: 'powerpoint',
|
|
@@ -66,9 +68,9 @@ const MaterialPdfContent = ({
|
|
|
66
68
|
};
|
|
67
69
|
}, [cMapUrl, intl, isPowerPointFile, materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.attachment.url, materialPdf === null || materialPdf === void 0 ? void 0 : materialPdf.title, materialPdfStatus]);
|
|
68
70
|
if (materialPdfStatus === 'pending') {
|
|
69
|
-
return
|
|
71
|
+
return jsx(Spinner, {});
|
|
70
72
|
}
|
|
71
|
-
return
|
|
73
|
+
return jsx(DocumentRenderer, Object.assign({}, componentProps));
|
|
72
74
|
};
|
|
73
75
|
|
|
74
76
|
export { MaterialPdfContent as default };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as MaterialPdf } from './MaterialPdf.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elice/material-pdf",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.240719.1",
|
|
4
4
|
"description": "User view and editing components of Elice material PDF",
|
|
5
5
|
"repository": "https://git.elicer.io/elice/frontend/library/elice-material",
|
|
6
6
|
"license": "UNLICENSED",
|
|
@@ -17,10 +17,8 @@
|
|
|
17
17
|
"scripts": {
|
|
18
18
|
"start": "run-s watch",
|
|
19
19
|
"prebuild": "run-s clean",
|
|
20
|
-
"build": "
|
|
21
|
-
"
|
|
22
|
-
"build:cjs": "rollup -c ../../rollup.config.ts --configPlugin typescript -f cjs",
|
|
23
|
-
"watch": "rollup -c ../../rollup.config.ts --configPlugin typescript -f es -w",
|
|
20
|
+
"build": "cross-env NODE_ENV=production rollup -c ../../rollup.config.ts --configPlugin typescript -f es -f cjs",
|
|
21
|
+
"watch": "rollup -c ../../rollup.config.ts --configPlugin typescript -f es -f cjs -w",
|
|
24
22
|
"lint": "eslint --ext .ts,.tsx ./src --max-warnings=0",
|
|
25
23
|
"clean": "del-cli \"es/*\" \"cjs/*\" \"dist/*\""
|
|
26
24
|
},
|
|
@@ -44,21 +42,20 @@
|
|
|
44
42
|
},
|
|
45
43
|
"devDependencies": {
|
|
46
44
|
"@elice/api-client": "^1.240619.0",
|
|
47
|
-
"@elice/blocks": "1.240529.0",
|
|
45
|
+
"@elice/blocks": "^1.240529.0",
|
|
48
46
|
"@elice/design-tokens": "^1.220803.0",
|
|
49
47
|
"@elice/icons": "^1.230814.0",
|
|
50
48
|
"@elice/icons-legacy": "npm:@elice/icons@0.230814.0",
|
|
51
49
|
"@elice/intl": "0.240425.0-rc.2",
|
|
52
|
-
"@elice/markdown": "^1.
|
|
53
|
-
"@elice/material-shared-types": "1.
|
|
54
|
-
"@elice/material-shared-utils": "1.
|
|
55
|
-
"@elice/types": "
|
|
50
|
+
"@elice/markdown": "^1.240124.0",
|
|
51
|
+
"@elice/material-shared-types": "1.240719.1",
|
|
52
|
+
"@elice/material-shared-utils": "1.240719.1",
|
|
53
|
+
"@elice/types": "1.240709.0",
|
|
56
54
|
"@types/classnames": "^2.3.1",
|
|
57
55
|
"@types/react": "~17.0.9",
|
|
58
56
|
"@types/styled-components": "^5.1.21",
|
|
59
57
|
"react": "^17.0.2",
|
|
60
58
|
"react-use": "^17.2.4",
|
|
61
59
|
"styled-components": "^5.3.0"
|
|
62
|
-
}
|
|
63
|
-
"gitHead": "5479962bf1206df7c1f6f4f24b5f2547b90be799"
|
|
60
|
+
}
|
|
64
61
|
}
|