dtable-ui-component 0.1.75-beta1 → 0.1.75-beta5
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/lib/AutoNumberFormatter/index.css +1 -0
- package/{es/components/cell-formatter/auto-number-formatter.js → lib/AutoNumberFormatter/index.js} +1 -0
- package/lib/ButtonFormatter/index.css +13 -0
- package/{es/components/cell-formatter/button-formatter.js → lib/ButtonFormatter/index.js} +1 -0
- package/lib/CTimeFormatter/index.css +1 -0
- package/{es/components/cell-formatter/ctime-formatter.js → lib/CTimeFormatter/index.js} +1 -0
- package/lib/CheckboxFormatter/index.css +1 -0
- package/{es/components/cell-formatter/checkbox-formatter.js → lib/CheckboxFormatter/index.js} +1 -0
- package/lib/CollaboratorFormatter/index.css +1 -0
- package/{es/components/cell-formatter/collaborator-formatter.js → lib/CollaboratorFormatter/index.js} +3 -2
- package/lib/CollaboratorItem/index.css +49 -0
- package/{es/components/common/collaborator-item.js → lib/CollaboratorItem/index.js} +1 -0
- package/lib/CreatorFormatter/index.css +1 -0
- package/{es/components/cell-formatter/creator-formatter.js → lib/CreatorFormatter/index.js} +3 -2
- package/lib/DateFormatter/index.css +1 -0
- package/{es/components/cell-formatter/date-formatter.js → lib/DateFormatter/index.js} +2 -1
- package/lib/DurationFormatter/index.css +1 -0
- package/{es/components/cell-formatter/duration-formatter.js → lib/DurationFormatter/index.js} +2 -1
- package/lib/EmailFormatter/index.css +5 -0
- package/{es/components/cell-formatter/email-formatter.js → lib/EmailFormatter/index.js} +1 -0
- package/lib/FileFormatter/index.css +29 -0
- package/{es/components/cell-formatter/file-formatter.js → lib/FileFormatter/index.js} +2 -1
- package/{es/components/cell-formatter/widgets/file-item-formatter.js → lib/FileItemFormatter/index.js} +3 -2
- package/{es/components/file-uploader → lib/FileUploader}/index.js +0 -0
- package/lib/FormulaFormatter/index.css +19 -0
- package/{es/components/cell-formatter/formula-formatter.js → lib/FormulaFormatter/index.js} +8 -8
- package/lib/GeolocationFormatter/index.css +1 -0
- package/{es/components/cell-formatter/geolocation-formatter.js → lib/GeolocationFormatter/index.js} +2 -1
- package/{es/components/common → lib/ImageFormatter}/images-lazy-load.js +2 -2
- package/lib/ImageFormatter/index.css +34 -0
- package/{es/components/cell-formatter/image-formatter.js → lib/ImageFormatter/index.js} +4 -3
- package/{es/css/image-previewer-ligntbox.css → lib/ImagePreviewerLightbox/index.css} +0 -0
- package/{es/components/cell-formatter/widgets/image-previewer-lightbox.js → lib/ImagePreviewerLightbox/index.js} +3 -3
- package/lib/LastModifierFormatter/index.css +1 -0
- package/{es/components/cell-formatter/last-modifier-formatter.js → lib/LastModifierFormatter/index.js} +5 -4
- package/lib/LinkFormatter/index.css +27 -0
- package/{es/components/cell-formatter/link-formatter.js → lib/LinkFormatter/index.js} +2 -2
- package/{es/css/loading.css → lib/Loading/index.css} +0 -0
- package/{es/components/loading.js → lib/Loading/index.js} +1 -1
- package/{es/components/cell-formatter/widgets/long-text-formatter → lib/LongTextFormatter}/html-long-text-formatter.js +1 -1
- package/lib/LongTextFormatter/index.css +63 -0
- package/{es/components/cell-formatter/long-text-formatter.js → lib/LongTextFormatter/index.js} +3 -2
- package/{es/components/cell-formatter/widgets/long-text-formatter → lib/LongTextFormatter}/simple-long-text-formatter.js +1 -1
- package/lib/MTimeFormatter/index.css +1 -0
- package/{es/components/cell-formatter/mtime-formatter.js → lib/MTimeFormatter/index.js} +1 -0
- package/{es/components/common/modal-portal.js → lib/ModalPortal/index.js} +0 -0
- package/lib/MultipleSelectFormatter/index.css +1 -0
- package/{es/components/cell-formatter/multiple-select-formatter.js → lib/MultipleSelectFormatter/index.js} +2 -1
- package/lib/NumberFormatter/index.css +1 -0
- package/{es/components/cell-formatter/number-formatter.js → lib/NumberFormatter/index.js} +2 -1
- package/lib/RateFormatter/index.css +1 -0
- package/{es/components/cell-formatter/rate-formatter.js → lib/RateFormatter/index.js} +1 -0
- package/{es/components/common/select-item.js → lib/SelectItem/index.js} +0 -0
- package/lib/SingleSelectFormatter/index.css +1 -0
- package/{es/components/cell-formatter/single-select-formatter.js → lib/SingleSelectFormatter/index.js} +2 -1
- package/lib/TextFormatter/index.css +1 -0
- package/{es/components/cell-formatter/text-formatter.js → lib/TextFormatter/index.js} +1 -0
- package/lib/UrlFormatter/index.css +5 -0
- package/{es/components/cell-formatter/url-formatter.js → lib/UrlFormatter/index.js} +1 -0
- package/lib/app.js +75 -80
- package/{es/components/cell-factory/cell-formatter-factory.js → lib/cellFormatterFactory/index.js} +3 -3
- package/lib/components/cell-editor/checkbox-editor.js +59 -66
- package/lib/components/cell-editor/collaborator-editor.js +113 -126
- package/lib/components/cell-editor/date-editor.js +99 -119
- package/lib/components/cell-editor/index.js +9 -40
- package/lib/components/cell-editor/link-editor.js +122 -140
- package/lib/components/cell-editor/multiple-select-editor.js +114 -127
- package/lib/components/cell-editor/number-editor.js +78 -86
- package/lib/components/cell-editor/single-select-editor.js +106 -120
- package/lib/components/cell-editor/text-editor.js +65 -72
- package/lib/components/cell-editor-dialog/pc-file-editor-dialog.js +31 -51
- package/lib/components/cell-editor-dialog/pc-files-addition/index.js +0 -1
- package/lib/components/cell-editor-dialog/pc-files-addition/pc-file-uploaded-item.js +0 -1
- package/lib/components/cell-editor-dialog/pc-files-preview/index.js +0 -1
- package/lib/components/cell-editor-dialog/pc-files-preview/pc-file-item-preview.js +0 -1
- package/lib/components/cell-editor-popover/mb-collaborator-editor-popover.js +105 -111
- package/lib/components/cell-editor-popover/mb-date-editor-popover.js +140 -157
- package/lib/components/cell-editor-popover/mb-link-editor-popover.js +103 -109
- package/lib/components/cell-editor-popover/mb-select-editor-popover.js +142 -155
- package/lib/components/cell-editor-popover/pc-collaborator-editor-popover.js +74 -89
- package/lib/components/cell-editor-popover/pc-date-editor-popover.js +88 -102
- package/lib/components/cell-editor-popover/pc-link-editor-popover.js +77 -91
- package/lib/components/cell-editor-popover/pc-select-editor-popover.js +91 -105
- package/lib/components/common/collaborator-item.js +43 -59
- package/lib/components/common/edit-editor-button.js +28 -39
- package/lib/components/common/link-editor-option.js +63 -71
- package/lib/components/common/mobile/mb-editor-header.js +39 -52
- package/lib/components/common/select-editor-option.js +58 -74
- package/lib/constants/cell-types.js +25 -54
- package/lib/constants/index.js +5 -26
- package/lib/css/cell-formatter.css +0 -243
- package/lib/formatterConfig/index.js +31 -0
- package/lib/index.js +31 -64
- package/lib/lang/index.js +11 -27
- package/lib/locals/de.js +1 -6
- package/lib/locals/en.js +1 -6
- package/lib/locals/fr.js +1 -6
- package/lib/locals/zh-CN.js +1 -6
- package/{es/components/toast → lib/toaster}/alert.js +0 -0
- package/{es/components/toast → lib/toaster}/index.js +0 -0
- package/{es/components/toast → lib/toaster}/toast.js +0 -0
- package/{es/components/toast → lib/toaster}/toastManager.js +0 -0
- package/{es/components/toast → lib/toaster}/toaster.js +0 -0
- package/lib/utils/cell-value-validator.js +4 -14
- package/lib/utils/column-utils.js +5 -13
- package/lib/utils/editor-utils.js +3 -13
- package/lib/utils/markdown2html.js +1 -7
- package/lib/utils/normalize-long-text-value.js +1 -6
- package/lib/utils/number-precision.js +14 -31
- package/lib/utils/utils.js +8 -33
- package/lib/utils/value-format-utils.js +60 -108
- package/package.json +5 -5
- package/es/app.css +0 -20
- package/es/app.js +0 -91
- package/es/assets/images/avatar/default_avatar.png +0 -0
- package/es/assets/images/file/192/excel.png +0 -0
- package/es/assets/images/file/192/file.png +0 -0
- package/es/assets/images/file/192/music.png +0 -0
- package/es/assets/images/file/192/pdf.png +0 -0
- package/es/assets/images/file/192/pic.png +0 -0
- package/es/assets/images/file/192/ppt.png +0 -0
- package/es/assets/images/file/192/txt.png +0 -0
- package/es/assets/images/file/192/video.png +0 -0
- package/es/assets/images/file/192/word.png +0 -0
- package/es/assets/images/file/24/excel.png +0 -0
- package/es/assets/images/file/24/file.png +0 -0
- package/es/assets/images/file/24/music.png +0 -0
- package/es/assets/images/file/24/pdf.png +0 -0
- package/es/assets/images/file/24/pic.png +0 -0
- package/es/assets/images/file/24/ppt.png +0 -0
- package/es/assets/images/file/24/txt.png +0 -0
- package/es/assets/images/file/24/video.png +0 -0
- package/es/assets/images/file/24/word.png +0 -0
- package/es/assets/images/folder/folder-192.png +0 -0
- package/es/assets/images/folder/folder-24.png +0 -0
- package/es/components/cell-editor/checkbox-editor.js +0 -104
- package/es/components/cell-editor/collaborator-editor.js +0 -236
- package/es/components/cell-editor/date-editor.js +0 -151
- package/es/components/cell-editor/index.js +0 -9
- package/es/components/cell-editor/link-editor.js +0 -303
- package/es/components/cell-editor/multiple-select-editor.js +0 -237
- package/es/components/cell-editor/number-editor.js +0 -154
- package/es/components/cell-editor/single-select-editor.js +0 -202
- package/es/components/cell-editor/text-editor.js +0 -122
- package/es/components/cell-editor-dialog/pc-file-editor-dialog.js +0 -46
- package/es/components/cell-editor-dialog/pc-files-addition/index.js +0 -0
- package/es/components/cell-editor-dialog/pc-files-addition/pc-file-uploaded-item.js +0 -0
- package/es/components/cell-editor-dialog/pc-files-preview/index.js +0 -0
- package/es/components/cell-editor-dialog/pc-files-preview/pc-file-item-preview.js +0 -0
- package/es/components/cell-editor-popover/mb-collaborator-editor-popover.js +0 -177
- package/es/components/cell-editor-popover/mb-date-editor-popover.js +0 -245
- package/es/components/cell-editor-popover/mb-link-editor-popover.js +0 -170
- package/es/components/cell-editor-popover/mb-select-editor-popover.js +0 -230
- package/es/components/cell-editor-popover/pc-collaborator-editor-popover.js +0 -109
- package/es/components/cell-editor-popover/pc-date-editor-popover.js +0 -142
- package/es/components/cell-editor-popover/pc-link-editor-popover.js +0 -114
- package/es/components/cell-editor-popover/pc-select-editor-popover.js +0 -143
- package/es/components/cell-formatter/formatter-config.js +0 -31
- package/es/components/cell-formatter/index.js +0 -27
- package/es/components/common/edit-editor-button.js +0 -56
- package/es/components/common/link-editor-option.js +0 -113
- package/es/components/common/mobile/mb-editor-header.js +0 -48
- package/es/components/common/select-editor-option.js +0 -106
- package/es/constants/cell-types.js +0 -25
- package/es/constants/index.js +0 -48
- package/es/css/cell-editor.css +0 -614
- package/es/css/cell-formatter.css +0 -247
- package/es/css/custom-rc-calendar.css +0 -118
- package/es/index.js +0 -6
- package/es/lang/index.js +0 -50
- package/es/locals/de.js +0 -2
- package/es/locals/en.js +0 -17
- package/es/locals/fr.js +0 -2
- package/es/locals/zh-CN.js +0 -17
- package/es/utils/cell-value-validator.js +0 -32
- package/es/utils/column-utils.js +0 -7
- package/es/utils/editor-utils.js +0 -71
- package/es/utils/markdown2html.js +0 -62
- package/es/utils/normalize-long-text-value.js +0 -69
- package/es/utils/number-precision.js +0 -163
- package/es/utils/unified/index.js +0 -470
- package/es/utils/utils.js +0 -116
- package/es/utils/value-format-utils.js +0 -495
- package/es/utils/vfile/core.js +0 -172
- package/es/utils/vfile/index.js +0 -48
- package/lib/components/cell-factory/cell-formatter-factory.js +0 -28
- package/lib/components/cell-formatter/auto-number-formatter.js +0 -45
- package/lib/components/cell-formatter/button-formatter.js +0 -66
- package/lib/components/cell-formatter/checkbox-formatter.js +0 -56
- package/lib/components/cell-formatter/collaborator-formatter.js +0 -111
- package/lib/components/cell-formatter/creator-formatter.js +0 -105
- package/lib/components/cell-formatter/ctime-formatter.js +0 -70
- package/lib/components/cell-formatter/date-formatter.js +0 -73
- package/lib/components/cell-formatter/duration-formatter.js +0 -49
- package/lib/components/cell-formatter/email-formatter.js +0 -45
- package/lib/components/cell-formatter/file-formatter.js +0 -77
- package/lib/components/cell-formatter/formatter-config.js +0 -66
- package/lib/components/cell-formatter/formula-formatter.js +0 -189
- package/lib/components/cell-formatter/geolocation-formatter.js +0 -66
- package/lib/components/cell-formatter/image-formatter.js +0 -171
- package/lib/components/cell-formatter/index.js +0 -112
- package/lib/components/cell-formatter/last-modifier-formatter.js +0 -105
- package/lib/components/cell-formatter/link-formatter.js +0 -165
- package/lib/components/cell-formatter/long-text-formatter.js +0 -46
- package/lib/components/cell-formatter/mtime-formatter.js +0 -70
- package/lib/components/cell-formatter/multiple-select-formatter.js +0 -84
- package/lib/components/cell-formatter/number-formatter.js +0 -60
- package/lib/components/cell-formatter/rate-formatter.js +0 -93
- package/lib/components/cell-formatter/single-select-formatter.js +0 -84
- package/lib/components/cell-formatter/text-formatter.js +0 -67
- package/lib/components/cell-formatter/url-formatter.js +0 -45
- package/lib/components/cell-formatter/widgets/file-item-formatter.js +0 -63
- package/lib/components/cell-formatter/widgets/image-previewer-lightbox.js +0 -152
- package/lib/components/cell-formatter/widgets/long-text-formatter/html-long-text-formatter.js +0 -107
- package/lib/components/cell-formatter/widgets/long-text-formatter/simple-long-text-formatter.js +0 -110
- package/lib/components/common/images-lazy-load.js +0 -158
- package/lib/components/common/modal-portal.js +0 -51
- package/lib/components/common/select-item.js +0 -73
- package/lib/components/file-uploader/index.js +0 -63
- package/lib/components/loading.js +0 -16
- package/lib/components/toast/alert.js +0 -164
- package/lib/components/toast/index.js +0 -12
- package/lib/components/toast/toast.js +0 -223
- package/lib/components/toast/toastManager.js +0 -189
- package/lib/components/toast/toaster.js +0 -92
- package/lib/css/image-previewer-ligntbox.css +0 -87
- package/lib/css/loading.css +0 -54
|
@@ -1,26 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
exports.getCellValueDisplayString = getCellValueDisplayString;
|
|
8
|
-
exports.getOptionName = exports.getNumberDisplayString = exports.getMultipleOptionName = exports.getLongtextDisplayString = exports.getGeolocationDisplayString = exports.getFormulaDisplayString = exports.getDurationDisplayString = exports.getDateDisplayString = exports.getCollaboratorsName = void 0;
|
|
9
|
-
|
|
10
|
-
var _moment = _interopRequireDefault(require("moment"));
|
|
11
|
-
|
|
12
|
-
var _numberPrecision = _interopRequireDefault(require("./number-precision"));
|
|
13
|
-
|
|
14
|
-
var _constants = require("../constants");
|
|
15
|
-
|
|
16
|
-
var CellType = _interopRequireWildcard(require("../constants/cell-types"));
|
|
17
|
-
|
|
18
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
-
|
|
20
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
|
-
|
|
22
|
-
_numberPrecision.default.enableBoundaryChecking(false);
|
|
23
|
-
|
|
1
|
+
/* eslint-disable no-case-declarations */
|
|
2
|
+
import moment from 'moment';
|
|
3
|
+
import NP from './number-precision';
|
|
4
|
+
import { NUMBER_TYPES, DEFAULT_NUMBER_FORMAT, DURATION_FORMATS_MAP, DURATION_FORMATS, DURATION_ZERO_DISPLAY, DURATION_DECIMAL_DIGITS, FORMULA_RESULT_TYPE, COLLABORATOR_COLUMN_TYPES, ARRAY_FORMAL_COLUMNS_TYPES, DEFAULT_DATE_FORMAT } from '../constants';
|
|
5
|
+
import * as CellType from '../constants/cell-types';
|
|
6
|
+
NP.enableBoundaryChecking(false);
|
|
24
7
|
var _separatorMap = {
|
|
25
8
|
'comma': ',',
|
|
26
9
|
'dot': '.',
|
|
@@ -44,7 +27,7 @@ var _toThousands = function _toThousands(num, isCurrency, formatData) {
|
|
|
44
27
|
var decimalDigits = enable_precision ? precision : _getDecimalDigits(num);
|
|
45
28
|
var value = parseFloat(num.toFixed(decimalDigits));
|
|
46
29
|
var integer = Math.trunc(value);
|
|
47
|
-
var decimalValue = String(Math.abs(
|
|
30
|
+
var decimalValue = String(Math.abs(NP.minus(value, integer)).toFixed(decimalDigits)).slice(1);
|
|
48
31
|
|
|
49
32
|
if (isCurrency) {
|
|
50
33
|
if (decimalValue.length === 2) {
|
|
@@ -85,7 +68,7 @@ var _getDecimalDigits = function _getDecimalDigits(num) {
|
|
|
85
68
|
return digitsLength > 8 ? 8 : digitsLength;
|
|
86
69
|
};
|
|
87
70
|
|
|
88
|
-
var getNumberDisplayString = function getNumberDisplayString(value, formatData) {
|
|
71
|
+
export var getNumberDisplayString = function getNumberDisplayString(value, formatData) {
|
|
89
72
|
// formatData: old version maybe 'null'
|
|
90
73
|
var type = Object.prototype.toString.call(value);
|
|
91
74
|
|
|
@@ -101,7 +84,7 @@ var getNumberDisplayString = function getNumberDisplayString(value, formatData)
|
|
|
101
84
|
|
|
102
85
|
var _ref2 = formatData || {},
|
|
103
86
|
_ref2$format = _ref2.format,
|
|
104
|
-
format = _ref2$format === void 0 ?
|
|
87
|
+
format = _ref2$format === void 0 ? DEFAULT_NUMBER_FORMAT : _ref2$format;
|
|
105
88
|
|
|
106
89
|
switch (format) {
|
|
107
90
|
case 'number':
|
|
@@ -109,17 +92,17 @@ var getNumberDisplayString = function getNumberDisplayString(value, formatData)
|
|
|
109
92
|
|
|
110
93
|
case 'percent':
|
|
111
94
|
{
|
|
112
|
-
return _toThousands(Number.parseFloat((value * 100).toFixed(8)), false, formatData)
|
|
95
|
+
return "".concat(_toThousands(Number.parseFloat((value * 100).toFixed(8)), false, formatData), "%");
|
|
113
96
|
}
|
|
114
97
|
|
|
115
98
|
case 'yuan':
|
|
116
|
-
return "\uFFE5"
|
|
99
|
+
return "\uFFE5".concat(_toThousands(value, true, formatData));
|
|
117
100
|
|
|
118
101
|
case 'dollar':
|
|
119
|
-
return "$"
|
|
102
|
+
return "$".concat(_toThousands(value, true, formatData));
|
|
120
103
|
|
|
121
104
|
case 'euro':
|
|
122
|
-
return "\u20AC"
|
|
105
|
+
return "\u20AC".concat(_toThousands(value, true, formatData));
|
|
123
106
|
|
|
124
107
|
case 'duration':
|
|
125
108
|
{
|
|
@@ -130,10 +113,7 @@ var getNumberDisplayString = function getNumberDisplayString(value, formatData)
|
|
|
130
113
|
return '' + value;
|
|
131
114
|
}
|
|
132
115
|
};
|
|
133
|
-
|
|
134
|
-
exports.getNumberDisplayString = getNumberDisplayString;
|
|
135
|
-
|
|
136
|
-
var formatStringToNumber = function formatStringToNumber(value) {
|
|
116
|
+
export var formatStringToNumber = function formatStringToNumber(value) {
|
|
137
117
|
var isIncludePercent = value.indexOf('%') > -1;
|
|
138
118
|
var newData = parseFloat(value.replace(/[^.-\d]/g, ''));
|
|
139
119
|
|
|
@@ -143,31 +123,28 @@ var formatStringToNumber = function formatStringToNumber(value) {
|
|
|
143
123
|
|
|
144
124
|
return isNaN(newData) ? '' : newData;
|
|
145
125
|
};
|
|
146
|
-
|
|
147
|
-
exports.formatStringToNumber = formatStringToNumber;
|
|
148
|
-
|
|
149
|
-
var formatNumberString = function formatNumberString(value, format) {
|
|
126
|
+
export var formatNumberString = function formatNumberString(value, format) {
|
|
150
127
|
var formattedValue = '';
|
|
151
128
|
|
|
152
129
|
switch (format) {
|
|
153
|
-
case
|
|
154
|
-
case
|
|
130
|
+
case NUMBER_TYPES.NUMBER:
|
|
131
|
+
case NUMBER_TYPES.NUMBER_WITH_COMMAS:
|
|
155
132
|
formattedValue = value.replace(/[^.-\d,]/g, '');
|
|
156
133
|
break;
|
|
157
134
|
|
|
158
|
-
case
|
|
135
|
+
case NUMBER_TYPES.PERCENT:
|
|
159
136
|
formattedValue = value.replace(/[^.-\d,%]/g, '');
|
|
160
137
|
break;
|
|
161
138
|
|
|
162
|
-
case
|
|
139
|
+
case NUMBER_TYPES.YUAN:
|
|
163
140
|
formattedValue = value.replace(/[^.-\d¥,]/g, '');
|
|
164
141
|
break;
|
|
165
142
|
|
|
166
|
-
case
|
|
143
|
+
case NUMBER_TYPES.DOLLAR:
|
|
167
144
|
formattedValue = value.replace(/[^.-\d$,]/g, '');
|
|
168
145
|
break;
|
|
169
146
|
|
|
170
|
-
case
|
|
147
|
+
case NUMBER_TYPES.EURO:
|
|
171
148
|
formattedValue = value.replace(/[^.-\d€,]/g, '');
|
|
172
149
|
break;
|
|
173
150
|
|
|
@@ -177,10 +154,7 @@ var formatNumberString = function formatNumberString(value, format) {
|
|
|
177
154
|
|
|
178
155
|
return formattedValue;
|
|
179
156
|
};
|
|
180
|
-
|
|
181
|
-
exports.formatNumberString = formatNumberString;
|
|
182
|
-
|
|
183
|
-
var getDateDisplayString = function getDateDisplayString(value, format) {
|
|
157
|
+
export var getDateDisplayString = function getDateDisplayString(value, format) {
|
|
184
158
|
var formattedValue = '';
|
|
185
159
|
|
|
186
160
|
if (!value) {
|
|
@@ -188,22 +162,23 @@ var getDateDisplayString = function getDateDisplayString(value, format) {
|
|
|
188
162
|
return formattedValue;
|
|
189
163
|
}
|
|
190
164
|
|
|
191
|
-
var date = (
|
|
165
|
+
var date = moment(value);
|
|
192
166
|
if (!date.isValid()) return value;
|
|
193
167
|
|
|
194
168
|
switch (format) {
|
|
195
169
|
case 'D/M/YYYY':
|
|
196
170
|
case 'DD/MM/YYYY':
|
|
171
|
+
// no-case-declarations
|
|
197
172
|
var formatValue = date.format('YYYY-MM-DD');
|
|
198
173
|
var formatValueList = formatValue.split('-');
|
|
199
|
-
return formatValueList[2]
|
|
174
|
+
return "".concat(formatValueList[2], "/").concat(formatValueList[1], "/").concat(formatValueList[0]);
|
|
200
175
|
|
|
201
176
|
case 'D/M/YYYY HH:mm':
|
|
202
177
|
case 'DD/MM/YYYY HH:mm':
|
|
203
178
|
var formatValues = date.format('YYYY-MM-DD HH:mm');
|
|
204
179
|
var formatValuesList = formatValues.split(' ');
|
|
205
180
|
var formatDateList = formatValuesList[0].split('-');
|
|
206
|
-
return formatDateList[2]
|
|
181
|
+
return "".concat(formatDateList[2], "/").concat(formatDateList[1], "/").concat(formatDateList[0], " ").concat(formatValuesList[1]);
|
|
207
182
|
|
|
208
183
|
case 'M/D/YYYY':
|
|
209
184
|
return date.format('M/D/YYYY');
|
|
@@ -221,21 +196,18 @@ var getDateDisplayString = function getDateDisplayString(value, format) {
|
|
|
221
196
|
return value;
|
|
222
197
|
}
|
|
223
198
|
};
|
|
224
|
-
|
|
225
|
-
exports.getDateDisplayString = getDateDisplayString;
|
|
226
|
-
|
|
227
|
-
var getDurationDisplayString = function getDurationDisplayString(value, duration_format) {
|
|
199
|
+
export var getDurationDisplayString = function getDurationDisplayString(value, duration_format) {
|
|
228
200
|
if (!value && value !== 0) return '';
|
|
229
|
-
duration_format = duration_format ||
|
|
201
|
+
duration_format = duration_format || DURATION_FORMATS_MAP.H_MM;
|
|
230
202
|
|
|
231
|
-
if (
|
|
203
|
+
if (DURATION_FORMATS.findIndex(function (format) {
|
|
232
204
|
return format.type === duration_format;
|
|
233
205
|
}) < 0) {
|
|
234
206
|
return '';
|
|
235
207
|
}
|
|
236
208
|
|
|
237
209
|
if (value === 0) {
|
|
238
|
-
return
|
|
210
|
+
return DURATION_ZERO_DISPLAY[duration_format];
|
|
239
211
|
}
|
|
240
212
|
|
|
241
213
|
var includeDecimal = duration_format.indexOf('.') > -1;
|
|
@@ -255,33 +227,31 @@ var getDurationDisplayString = function getDurationDisplayString(value, duration
|
|
|
255
227
|
decimal = decimal ? decimal - 0 : 0;
|
|
256
228
|
}
|
|
257
229
|
|
|
258
|
-
var decimalDigits =
|
|
230
|
+
var decimalDigits = DURATION_DECIMAL_DIGITS[duration_format];
|
|
259
231
|
var decimalSuffix = getDurationDecimalSuffix(duration_format, decimal);
|
|
260
232
|
var displayString = value < 0 ? '-' : '';
|
|
261
233
|
var hours = parseInt(positiveValue / 3600);
|
|
262
234
|
var minutes = parseInt((positiveValue - hours * 3600) / 60);
|
|
263
235
|
|
|
264
|
-
if (duration_format ===
|
|
265
|
-
displayString += hours
|
|
236
|
+
if (duration_format === DURATION_FORMATS_MAP.H_MM) {
|
|
237
|
+
displayString += "".concat(hours, ":").concat(minutes > 9 ? minutes : '0' + minutes);
|
|
266
238
|
return displayString;
|
|
267
239
|
}
|
|
268
240
|
|
|
269
241
|
var seconds = Number.parseFloat((positiveValue - hours * 3600 - minutes * 60).toFixed(decimalDigits));
|
|
270
242
|
|
|
271
243
|
if (hours > 0) {
|
|
272
|
-
displayString += hours
|
|
273
|
-
minutes = minutes > 9 ? minutes : "0"
|
|
244
|
+
displayString += "".concat(hours, ":");
|
|
245
|
+
minutes = minutes > 9 ? minutes : "0".concat(minutes);
|
|
274
246
|
}
|
|
275
247
|
|
|
276
|
-
seconds = seconds > 9 ? seconds : "0"
|
|
277
|
-
displayString += minutes
|
|
248
|
+
seconds = seconds > 9 ? seconds : "0".concat(seconds);
|
|
249
|
+
displayString += "".concat(minutes, ":").concat(seconds).concat(decimalSuffix);
|
|
278
250
|
return displayString;
|
|
279
251
|
};
|
|
280
252
|
|
|
281
|
-
exports.getDurationDisplayString = getDurationDisplayString;
|
|
282
|
-
|
|
283
253
|
var getMathRoundedDuration = function getMathRoundedDuration(num, duration_format) {
|
|
284
|
-
var decimalDigits =
|
|
254
|
+
var decimalDigits = DURATION_DECIMAL_DIGITS[duration_format];
|
|
285
255
|
|
|
286
256
|
if (decimalDigits < 1) {
|
|
287
257
|
return num;
|
|
@@ -292,15 +262,15 @@ var getMathRoundedDuration = function getMathRoundedDuration(num, duration_forma
|
|
|
292
262
|
};
|
|
293
263
|
|
|
294
264
|
var getDurationDecimalSuffix = function getDurationDecimalSuffix(duration_format, decimal) {
|
|
295
|
-
if (duration_format ===
|
|
265
|
+
if (duration_format === DURATION_FORMATS_MAP.H_MM_SS_S) {
|
|
296
266
|
return decimal === 0 ? '.0' : '';
|
|
297
|
-
} else if (duration_format ===
|
|
267
|
+
} else if (duration_format === DURATION_FORMATS_MAP.H_MM_SS_SS) {
|
|
298
268
|
if (decimal === 0) {
|
|
299
269
|
return '.00';
|
|
300
270
|
} else if (decimal < 10) {
|
|
301
271
|
return '0';
|
|
302
272
|
}
|
|
303
|
-
} else if (duration_format ===
|
|
273
|
+
} else if (duration_format === DURATION_FORMATS_MAP.H_MM_SS_SSS) {
|
|
304
274
|
if (decimal === 0) {
|
|
305
275
|
return '.000';
|
|
306
276
|
} else if (decimal < 10) {
|
|
@@ -313,17 +283,14 @@ var getDurationDecimalSuffix = function getDurationDecimalSuffix(duration_format
|
|
|
313
283
|
return '';
|
|
314
284
|
};
|
|
315
285
|
|
|
316
|
-
var getOptionName = function getOptionName(options, targetOptionID) {
|
|
286
|
+
export var getOptionName = function getOptionName(options, targetOptionID) {
|
|
317
287
|
if (!targetOptionID || !options || !Array.isArray(options)) return null;
|
|
318
288
|
var option = options.find(function (option) {
|
|
319
289
|
return option.id === targetOptionID;
|
|
320
290
|
});
|
|
321
291
|
return option ? option.name : null;
|
|
322
292
|
};
|
|
323
|
-
|
|
324
|
-
exports.getOptionName = getOptionName;
|
|
325
|
-
|
|
326
|
-
var getMultipleOptionName = function getMultipleOptionName(options, cellVal) {
|
|
293
|
+
export var getMultipleOptionName = function getMultipleOptionName(options, cellVal) {
|
|
327
294
|
if (!cellVal || !options || !Array.isArray(options)) return null;
|
|
328
295
|
var selectedOptions = options.filter(function (option) {
|
|
329
296
|
return cellVal.includes(option.id);
|
|
@@ -333,10 +300,7 @@ var getMultipleOptionName = function getMultipleOptionName(options, cellVal) {
|
|
|
333
300
|
return option.name;
|
|
334
301
|
}).join(', ');
|
|
335
302
|
};
|
|
336
|
-
|
|
337
|
-
exports.getMultipleOptionName = getMultipleOptionName;
|
|
338
|
-
|
|
339
|
-
var getLongtextDisplayString = function getLongtextDisplayString(value) {
|
|
303
|
+
export var getLongtextDisplayString = function getLongtextDisplayString(value) {
|
|
340
304
|
var _ref3 = value || {},
|
|
341
305
|
text = _ref3.text;
|
|
342
306
|
|
|
@@ -346,10 +310,7 @@ var getLongtextDisplayString = function getLongtextDisplayString(value) {
|
|
|
346
310
|
|
|
347
311
|
return text;
|
|
348
312
|
};
|
|
349
|
-
|
|
350
|
-
exports.getLongtextDisplayString = getLongtextDisplayString;
|
|
351
|
-
|
|
352
|
-
var getCollaboratorsName = function getCollaboratorsName(collaborators, cellVal) {
|
|
313
|
+
export var getCollaboratorsName = function getCollaboratorsName(collaborators, cellVal) {
|
|
353
314
|
if (cellVal) {
|
|
354
315
|
var collaboratorsName = [];
|
|
355
316
|
cellVal.forEach(function (v) {
|
|
@@ -371,10 +332,7 @@ var getCollaboratorsName = function getCollaboratorsName(collaborators, cellVal)
|
|
|
371
332
|
|
|
372
333
|
return null;
|
|
373
334
|
};
|
|
374
|
-
|
|
375
|
-
exports.getCollaboratorsName = getCollaboratorsName;
|
|
376
|
-
|
|
377
|
-
var getGeolocationDisplayString = function getGeolocationDisplayString(value, columnData) {
|
|
335
|
+
export var getGeolocationDisplayString = function getGeolocationDisplayString(value, columnData) {
|
|
378
336
|
var _ref4 = columnData || {},
|
|
379
337
|
geo_format = _ref4.geo_format;
|
|
380
338
|
|
|
@@ -385,7 +343,7 @@ var getGeolocationDisplayString = function getGeolocationDisplayString(value, co
|
|
|
385
343
|
}
|
|
386
344
|
|
|
387
345
|
if (geo_format === 'lng_lat' && value.lng && value.lat) {
|
|
388
|
-
return cellValue.lng
|
|
346
|
+
return "".concat(cellValue.lng, ", ").concat(cellValue.lat);
|
|
389
347
|
}
|
|
390
348
|
|
|
391
349
|
if (geo_format === 'country_region' && cellValue.country_region) {
|
|
@@ -398,20 +356,17 @@ var getGeolocationDisplayString = function getGeolocationDisplayString(value, co
|
|
|
398
356
|
detail = cellValue.detail;
|
|
399
357
|
|
|
400
358
|
if (geo_format === 'province') {
|
|
401
|
-
return ""
|
|
359
|
+
return "".concat(province || '');
|
|
402
360
|
}
|
|
403
361
|
|
|
404
362
|
if (geo_format === 'province_city') {
|
|
405
|
-
return ""
|
|
363
|
+
return "".concat(province || '').concat(city || '');
|
|
406
364
|
}
|
|
407
365
|
|
|
408
|
-
return ""
|
|
366
|
+
return "".concat(province || '').concat(city || '').concat(district || '').concat(detail || '');
|
|
409
367
|
};
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
var getFormulaDisplayString = function getFormulaDisplayString(cellValue, columnData, _temp) {
|
|
414
|
-
var _ref5 = _temp === void 0 ? {} : _temp,
|
|
368
|
+
export var getFormulaDisplayString = function getFormulaDisplayString(cellValue, columnData) {
|
|
369
|
+
var _ref5 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
415
370
|
_ref5$collaborators = _ref5.collaborators,
|
|
416
371
|
collaborators = _ref5$collaborators === void 0 ? [] : _ref5$collaborators;
|
|
417
372
|
|
|
@@ -421,16 +376,16 @@ var getFormulaDisplayString = function getFormulaDisplayString(cellValue, column
|
|
|
421
376
|
|
|
422
377
|
var result_type = columnData.result_type;
|
|
423
378
|
|
|
424
|
-
if (result_type ===
|
|
379
|
+
if (result_type === FORMULA_RESULT_TYPE.NUMBER) {
|
|
425
380
|
return getNumberDisplayString(cellValue, columnData);
|
|
426
381
|
}
|
|
427
382
|
|
|
428
|
-
if (result_type ===
|
|
383
|
+
if (result_type === FORMULA_RESULT_TYPE.DATE) {
|
|
429
384
|
var format = columnData.format;
|
|
430
385
|
return getDateDisplayString(cellValue, format);
|
|
431
386
|
}
|
|
432
387
|
|
|
433
|
-
if (result_type ===
|
|
388
|
+
if (result_type === FORMULA_RESULT_TYPE.ARRAY) {
|
|
434
389
|
var array_type = columnData.array_type,
|
|
435
390
|
array_data = columnData.array_data;
|
|
436
391
|
|
|
@@ -438,11 +393,11 @@ var getFormulaDisplayString = function getFormulaDisplayString(cellValue, column
|
|
|
438
393
|
return null;
|
|
439
394
|
}
|
|
440
395
|
|
|
441
|
-
if (
|
|
396
|
+
if (COLLABORATOR_COLUMN_TYPES.includes(array_type)) {
|
|
442
397
|
return cellValue;
|
|
443
398
|
}
|
|
444
399
|
|
|
445
|
-
if (
|
|
400
|
+
if (ARRAY_FORMAL_COLUMNS_TYPES.indexOf(array_type) < 0 && Array.isArray(cellValue)) {
|
|
446
401
|
return cellValue.map(function (val) {
|
|
447
402
|
return getCellValueDisplayString(val, array_type, {
|
|
448
403
|
data: array_data,
|
|
@@ -463,11 +418,8 @@ var getFormulaDisplayString = function getFormulaDisplayString(cellValue, column
|
|
|
463
418
|
|
|
464
419
|
return cellValue;
|
|
465
420
|
};
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
function getCellValueDisplayString(cellValue, type, _temp2) {
|
|
470
|
-
var _ref6 = _temp2 === void 0 ? {} : _temp2,
|
|
421
|
+
export function getCellValueDisplayString(cellValue, type) {
|
|
422
|
+
var _ref6 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
471
423
|
data = _ref6.data,
|
|
472
424
|
_ref6$collaborators = _ref6.collaborators,
|
|
473
425
|
collaborators = _ref6$collaborators === void 0 ? [] : _ref6$collaborators;
|
|
@@ -516,7 +468,7 @@ function getCellValueDisplayString(cellValue, type, _temp2) {
|
|
|
516
468
|
{
|
|
517
469
|
var _ref7 = newData || {},
|
|
518
470
|
_ref7$format = _ref7.format,
|
|
519
|
-
format = _ref7$format === void 0 ?
|
|
471
|
+
format = _ref7$format === void 0 ? DEFAULT_DATE_FORMAT : _ref7$format;
|
|
520
472
|
|
|
521
473
|
return getDateDisplayString(cellValue, format);
|
|
522
474
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dtable-ui-component",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.75beta5",
|
|
4
4
|
"main": "./es/index.js",
|
|
5
5
|
"dependencies": {
|
|
6
6
|
"@seafile/react-image-lightbox": "0.0.9",
|
|
@@ -45,11 +45,11 @@
|
|
|
45
45
|
"eslint": "eslint --ext .jsx,.js src --max-warnings=0",
|
|
46
46
|
"storybook": "start-storybook -p 6006",
|
|
47
47
|
"build-storybook": "build-storybook -c .storybook -o docs",
|
|
48
|
-
"pub:esm": "npm run clean:esm && export BABEL_ENV=
|
|
49
|
-
"pub:lib": "npm run clean:lib && export BABEL_ENV=
|
|
48
|
+
"pub:esm": "npm run clean:esm && export BABEL_ENV=node && ./node_modules/.bin/babel src --out-dir es --copy-files",
|
|
49
|
+
"pub:lib": "npm run clean:lib && export BABEL_ENV=production && ./node_modules/.bin/babel src --out-dir lib --copy-files",
|
|
50
50
|
"pub:umd": "npm run build",
|
|
51
|
-
"pub:optimized": "rm
|
|
52
|
-
"prepublishOnly": "npm run pub:
|
|
51
|
+
"pub:optimized": "rm lib/index.local.js",
|
|
52
|
+
"prepublishOnly": "npm run pub:lib && npm run pub:umd && npm run pub:optimized"
|
|
53
53
|
},
|
|
54
54
|
"files": [
|
|
55
55
|
"assets",
|
package/es/app.css
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
html, body, #root {
|
|
2
|
-
width: 100%;
|
|
3
|
-
height: 100%;
|
|
4
|
-
}
|
|
5
|
-
|
|
6
|
-
.app {
|
|
7
|
-
width: 100%;
|
|
8
|
-
height: 100%;
|
|
9
|
-
display: flex;
|
|
10
|
-
flex-direction: column;
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
.app .app-body {
|
|
14
|
-
flex: 1;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
.app .app-body .collaborator-container {
|
|
18
|
-
padding: 5px;
|
|
19
|
-
border: 1px solid;
|
|
20
|
-
}
|
package/es/app.js
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import _classCallCheck from "@babel/runtime/helpers/esm/classCallCheck";
|
|
2
|
-
import _createClass from "@babel/runtime/helpers/esm/createClass";
|
|
3
|
-
import _inherits from "@babel/runtime/helpers/esm/inherits";
|
|
4
|
-
import _createSuper from "@babel/runtime/helpers/esm/createSuper";
|
|
5
|
-
import React from 'react';
|
|
6
|
-
import { CollaboratorFormatter, SingleSelectFormatter } from './components/cell-formatter';
|
|
7
|
-
import './app.css';
|
|
8
|
-
|
|
9
|
-
var App = /*#__PURE__*/function (_React$Component) {
|
|
10
|
-
_inherits(App, _React$Component);
|
|
11
|
-
|
|
12
|
-
var _super = _createSuper(App);
|
|
13
|
-
|
|
14
|
-
function App() {
|
|
15
|
-
var _this;
|
|
16
|
-
|
|
17
|
-
_classCallCheck(this, App);
|
|
18
|
-
|
|
19
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
20
|
-
args[_key] = arguments[_key];
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
_this = _super.call.apply(_super, [this].concat(args));
|
|
24
|
-
|
|
25
|
-
_this.onDeleteCollaborator = function () {//
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
return _this;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
_createClass(App, [{
|
|
32
|
-
key: "render",
|
|
33
|
-
value: function render() {
|
|
34
|
-
var collaborators = [{
|
|
35
|
-
name: '小强',
|
|
36
|
-
email: '214402@qq.com',
|
|
37
|
-
avatar_url: '你好饿',
|
|
38
|
-
contact_email: 'adbd'
|
|
39
|
-
}];
|
|
40
|
-
var options = [{
|
|
41
|
-
id: '1111',
|
|
42
|
-
name: '未开始',
|
|
43
|
-
color: '#e3f9f6'
|
|
44
|
-
}, {
|
|
45
|
-
id: '2222',
|
|
46
|
-
name: '进行中',
|
|
47
|
-
color: '#ff7500'
|
|
48
|
-
}, {
|
|
49
|
-
id: '3333',
|
|
50
|
-
name: '待评审',
|
|
51
|
-
color: '#eaff56'
|
|
52
|
-
}, {
|
|
53
|
-
id: '4444',
|
|
54
|
-
name: '已评审',
|
|
55
|
-
color: '#faff72'
|
|
56
|
-
}, {
|
|
57
|
-
id: '5555',
|
|
58
|
-
name: '完成',
|
|
59
|
-
color: '#00e500'
|
|
60
|
-
}];
|
|
61
|
-
return /*#__PURE__*/React.createElement("div", {
|
|
62
|
-
className: "app"
|
|
63
|
-
}, /*#__PURE__*/React.createElement("header", {
|
|
64
|
-
className: "app-header"
|
|
65
|
-
}, /*#__PURE__*/React.createElement("h1", {
|
|
66
|
-
className: "text-center"
|
|
67
|
-
}, 'seatable ui component test')), /*#__PURE__*/React.createElement("div", {
|
|
68
|
-
className: "app-body"
|
|
69
|
-
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h2", null, "collaborators\u6D4B\u8BD5"), /*#__PURE__*/React.createElement("div", null, "\u5355\u4E2Acollaborators\u6D4B\u8BD5"), /*#__PURE__*/React.createElement(CollaboratorFormatter, {
|
|
70
|
-
value: '123',
|
|
71
|
-
collaborators: collaborators
|
|
72
|
-
}), /*#__PURE__*/React.createElement("div", null, "\u591A\u4E2Acollaborators\u6D4B\u8BD5"), /*#__PURE__*/React.createElement(CollaboratorFormatter, {
|
|
73
|
-
value: ['123', '4567'],
|
|
74
|
-
collaborators: collaborators
|
|
75
|
-
}), /*#__PURE__*/React.createElement("div", null, "\u5E26\u5220\u9664\u6309\u94AE\u6D4B\u8BD5"), /*#__PURE__*/React.createElement(CollaboratorFormatter, {
|
|
76
|
-
containerClassName: "collaborator-container",
|
|
77
|
-
value: ['123', '4567'],
|
|
78
|
-
collaborators: collaborators,
|
|
79
|
-
enableDeleteCollaborator: true,
|
|
80
|
-
onDeleteCollaborator: this.onDeleteCollaborator
|
|
81
|
-
})), /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("h2", null, "single-select\u6D4B\u8BD5"), /*#__PURE__*/React.createElement(SingleSelectFormatter, {
|
|
82
|
-
value: '3333',
|
|
83
|
-
options: options
|
|
84
|
-
}))));
|
|
85
|
-
}
|
|
86
|
-
}]);
|
|
87
|
-
|
|
88
|
-
return App;
|
|
89
|
-
}(React.Component);
|
|
90
|
-
|
|
91
|
-
export default App;
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|