@fixefy/fixefy-ui-utils 0.2.1 → 0.2.2

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.
@@ -0,0 +1,390 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ buildCode: function() {
13
+ return buildCode;
14
+ },
15
+ convertToString: function() {
16
+ return convertToString;
17
+ },
18
+ copyToClipboard: function() {
19
+ return copyToClipboard;
20
+ },
21
+ determineIconByEvent: function() {
22
+ return determineIconByEvent;
23
+ },
24
+ formatNumberWithCommas: function() {
25
+ return formatNumberWithCommas;
26
+ },
27
+ getNormalizationKeyForEntity: function() {
28
+ return getNormalizationKeyForEntity;
29
+ },
30
+ getScoreColor: function() {
31
+ return getScoreColor;
32
+ },
33
+ getStringValueByValueType: function() {
34
+ return getStringValueByValueType;
35
+ },
36
+ getVal: function() {
37
+ return getVal;
38
+ },
39
+ isInServer: function() {
40
+ return isInServer;
41
+ },
42
+ isValidTimestamp: function() {
43
+ return isValidTimestamp;
44
+ },
45
+ lineString: function() {
46
+ return lineString;
47
+ },
48
+ makeString: function() {
49
+ return makeString;
50
+ },
51
+ nest: function() {
52
+ return nest;
53
+ },
54
+ normalizeStringBodyRaw: function() {
55
+ return normalizeStringBodyRaw;
56
+ },
57
+ normalizeTimestamp: function() {
58
+ return normalizeTimestamp;
59
+ },
60
+ titleCase: function() {
61
+ return titleCase;
62
+ },
63
+ toCamelCase: function() {
64
+ return toCamelCase;
65
+ },
66
+ toCamelCaseString: function() {
67
+ return toCamelCaseString;
68
+ },
69
+ toCurrency: function() {
70
+ return toCurrency;
71
+ },
72
+ toInitials: function() {
73
+ return toInitials;
74
+ },
75
+ toPascalCase: function() {
76
+ return toPascalCase;
77
+ },
78
+ toWords: function() {
79
+ return toWords;
80
+ },
81
+ trimRuleCode: function() {
82
+ return trimRuleCode;
83
+ },
84
+ useStatePromisify: function() {
85
+ return useStatePromisify;
86
+ }
87
+ });
88
+ const _ = require("../");
89
+ const _datefns = require("date-fns");
90
+ const _react = require("react");
91
+ const _fixefynumeric = /*#__PURE__*/ _interop_require_default(require("@fixefy/fixefy-numeric"));
92
+ function _define_property(obj, key, value) {
93
+ if (key in obj) {
94
+ Object.defineProperty(obj, key, {
95
+ value: value,
96
+ enumerable: true,
97
+ configurable: true,
98
+ writable: true
99
+ });
100
+ } else {
101
+ obj[key] = value;
102
+ }
103
+ return obj;
104
+ }
105
+ function _interop_require_default(obj) {
106
+ return obj && obj.__esModule ? obj : {
107
+ default: obj
108
+ };
109
+ }
110
+ function _object_spread(target) {
111
+ for(var i = 1; i < arguments.length; i++){
112
+ var source = arguments[i] != null ? arguments[i] : {};
113
+ var ownKeys = Object.keys(source);
114
+ if (typeof Object.getOwnPropertySymbols === "function") {
115
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
116
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
117
+ }));
118
+ }
119
+ ownKeys.forEach(function(key) {
120
+ _define_property(target, key, source[key]);
121
+ });
122
+ }
123
+ return target;
124
+ }
125
+ function ownKeys(object, enumerableOnly) {
126
+ var keys = Object.keys(object);
127
+ if (Object.getOwnPropertySymbols) {
128
+ var symbols = Object.getOwnPropertySymbols(object);
129
+ if (enumerableOnly) {
130
+ symbols = symbols.filter(function(sym) {
131
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
132
+ });
133
+ }
134
+ keys.push.apply(keys, symbols);
135
+ }
136
+ return keys;
137
+ }
138
+ function _object_spread_props(target, source) {
139
+ source = source != null ? source : {};
140
+ if (Object.getOwnPropertyDescriptors) {
141
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
142
+ } else {
143
+ ownKeys(Object(source)).forEach(function(key) {
144
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
145
+ });
146
+ }
147
+ return target;
148
+ }
149
+ const buildCode = (obj, level = 0, name)=>{
150
+ const toRender = [];
151
+ const keys = Object.keys(obj);
152
+ if (keys.length < 1) {
153
+ toRender.push(lineString(level, name) + '{}');
154
+ return toRender;
155
+ }
156
+ toRender.push(lineString(level, name) + '{');
157
+ keys.forEach((key)=>{
158
+ if (key === '__typename') return;
159
+ if (typeof obj[key] === 'object' && obj[key] !== null) {
160
+ toRender.push(...buildCode(obj[key], level + 1, key));
161
+ } else {
162
+ const val = getVal(obj[key]);
163
+ toRender.push(lineString(level + 1, key) + val);
164
+ }
165
+ });
166
+ toRender.push(lineString(level) + '}');
167
+ return toRender;
168
+ };
169
+ const copyToClipboard = (str)=>{
170
+ if (window == undefined) return;
171
+ const el = document.createElement('textarea');
172
+ el.value = str;
173
+ el.setAttribute('readonly', '');
174
+ el.style.position = 'absolute';
175
+ el.style.left = '-9999px';
176
+ document.body.appendChild(el);
177
+ el.select();
178
+ document.execCommand('copy');
179
+ document.body.removeChild(el);
180
+ };
181
+ const convertToString = (input)=>{
182
+ if (input) {
183
+ return typeof input === 'string' ? input : String(input);
184
+ } else {
185
+ return null;
186
+ }
187
+ };
188
+ const determineIconByEvent = (event)=>{
189
+ let rv;
190
+ if (event) {
191
+ switch(event.type){
192
+ case 'charged':
193
+ rv = '../../static/images/transactions/billing.svg';
194
+ break;
195
+ case 'packed':
196
+ rv = '../../static/images/transactions/system.svg';
197
+ break;
198
+ default:
199
+ rv = '../../static/images/transactions/user.svg';
200
+ break;
201
+ }
202
+ }
203
+ return rv;
204
+ };
205
+ const formatNumberWithCommas = (number)=>{
206
+ return number.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',');
207
+ };
208
+ const getNormalizationKeyForEntity = (entity_type)=>{
209
+ let rv;
210
+ switch(entity_type.toLowerCase()){
211
+ case _.EntityTypes.User:
212
+ rv = 'username';
213
+ break;
214
+ case _.EntityTypes.Pricing:
215
+ rv = 'value';
216
+ break;
217
+ case _.EntityTypes.Metadata:
218
+ rv = 'title';
219
+ break;
220
+ case _.EntityTypes.Transaction:
221
+ case _.EntityTypes.Transmission:
222
+ rv = 'readable_id';
223
+ break;
224
+ default:
225
+ rv = 'title';
226
+ break;
227
+ }
228
+ return rv;
229
+ };
230
+ const getStringValueByValueType = ({ value, name })=>{
231
+ let rv;
232
+ let entity_type;
233
+ let roundedValue;
234
+ let formattedValue;
235
+ switch(typeof value){
236
+ case 'boolean':
237
+ rv = value === true ? 'YES' : 'NO';
238
+ break;
239
+ case 'number':
240
+ if (isValidTimestamp(value)) {
241
+ rv = normalizeTimestamp(value, false);
242
+ break;
243
+ }
244
+ roundedValue = Number(value) === value && value % 1 === 0 ? value : value.toFixed(2);
245
+ formattedValue = name === 'variance' ? `${(roundedValue * 100).toFixed(1)}%` : roundedValue;
246
+ rv = formattedValue;
247
+ break;
248
+ case 'object':
249
+ if (Array.isArray(value)) {
250
+ rv = value.join(', ');
251
+ } else {
252
+ entity_type = value && value.__typename && value.__typename.toLowerCase();
253
+ rv = titleCase(value[getNormalizationKeyForEntity(entity_type)]);
254
+ }
255
+ break;
256
+ case 'string':
257
+ rv = titleCase(value);
258
+ break;
259
+ }
260
+ return rv;
261
+ };
262
+ const getVal = (val)=>{
263
+ if (typeof val === 'number') return val;
264
+ if (typeof val === 'string') return `"${val}"`;
265
+ return val;
266
+ };
267
+ const isInServer = ()=>typeof window === 'undefined';
268
+ const isValidTimestamp = (_timestamp)=>{
269
+ const parsedNumber = typeof _timestamp == 'string' ? parseInt(_timestamp) : _timestamp;
270
+ const newTimestamp = new Date(parsedNumber).getTime();
271
+ const rv = _fixefynumeric.default.isFloat(newTimestamp) || _fixefynumeric.default.isInt(newTimestamp) && newTimestamp.toString().length >= 10;
272
+ return rv;
273
+ };
274
+ const lineString = (level, name)=>{
275
+ let str = '';
276
+ for(let i = 0; i < level; i++){
277
+ str += ' ';
278
+ }
279
+ if (name) {
280
+ str += name + ': ';
281
+ }
282
+ return str;
283
+ };
284
+ const makeString = (len = 5)=>{
285
+ let text = '';
286
+ const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
287
+ for(let i = 0; i < len; i++)text += possible.charAt(Math.floor(Math.random() * possible.length));
288
+ return text;
289
+ };
290
+ const nest = ({ items })=>{
291
+ const mappedArray = Object.create(null);
292
+ items.forEach((item)=>mappedArray[item.id] = _object_spread_props(_object_spread({}, item), {
293
+ children: []
294
+ }));
295
+ const nestedArray = [];
296
+ items.forEach((item)=>{
297
+ if (item) {
298
+ if (item.parent) mappedArray[item.parent] && mappedArray[item.parent].children.push(mappedArray[item.id]);
299
+ else nestedArray.push(mappedArray[item.id]);
300
+ }
301
+ });
302
+ return nestedArray;
303
+ };
304
+ const normalizeTimestamp = (timestamp, options)=>{
305
+ const { dateOnly, format: _format } = options || {};
306
+ const _timestamp = typeof timestamp == 'string' ? parseInt(timestamp) : timestamp;
307
+ const rv = (0, _datefns.format)(new Date(_timestamp), _format ? _format : dateOnly ? 'dd/MM/yyyy' : 'dd/MM/yyyy hh:mm');
308
+ return rv;
309
+ };
310
+ const normalizeStringBodyRaw = (key, body)=>{
311
+ return typeof body[key] === 'string' && (key === 'body' || key === 'raw') ? JSON.parse(body[key]) : body[key];
312
+ };
313
+ const titleCase = (str = '')=>str && toPascalCase(str.toString(), true);
314
+ const toCamelCase = (inputArray)=>{
315
+ let result = '';
316
+ var _inputArray_length;
317
+ for(let i = 0, len = (_inputArray_length = inputArray === null || inputArray === void 0 ? void 0 : inputArray.length) !== null && _inputArray_length !== void 0 ? _inputArray_length : 0; i < len; i++){
318
+ const currentStr = inputArray === null || inputArray === void 0 ? void 0 : inputArray.at(i);
319
+ let tempStr = currentStr.toLowerCase();
320
+ if (i != 0) {
321
+ // convert first letter to upper case (the word is in lowercase)
322
+ tempStr = tempStr.substr(0, 1).toUpperCase() + tempStr.substr(1);
323
+ }
324
+ result += tempStr;
325
+ }
326
+ return result;
327
+ };
328
+ const toCamelCaseString = (input)=>{
329
+ const words = toWords(input);
330
+ return toCamelCase(words);
331
+ };
332
+ const toCurrency = (input, options)=>{
333
+ return input ? typeof input == 'number' ? input.toFixed((options === null || options === void 0 ? void 0 : options.decimel) || 2).replace(/\B(?=(\d{3})+(?!\d))/g, ',') : input.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ',') : input;
334
+ };
335
+ const toInitials = (str)=>{
336
+ if (str === '') return str;
337
+ const matches = str.match(/\b(\w)/g);
338
+ return matches === null || matches === void 0 ? void 0 : matches.join('').toUpperCase();
339
+ };
340
+ const toPascalCase = (string, title = false)=>{
341
+ return string && string.replace(/(_[a-z])?(^[a-z])?(_|\s[a-z])?/g, ($1)=>$1.toUpperCase().replace('_', title ? ' ' : ''));
342
+ };
343
+ const toWords = (input)=>{
344
+ input = convertToString(input);
345
+ const regex = /[A-Z\xC0-\xD6\xD8-\xDE]?[a-z\xDF-\xF6\xF8-\xFF]+|[A-Z\xC0-\xD6\xD8-\xDE]+(?![a-z\xDF-\xF6\xF8-\xFF])|\d+/g;
346
+ return input === null || input === void 0 ? void 0 : input.match(regex);
347
+ };
348
+ const trimRuleCode = (input)=>{
349
+ const stringefied = typeof input == 'string' ? input : JSON.stringify(input);
350
+ const match = stringefied.substring(stringefied.indexOf('{') + 1, stringefied.lastIndexOf('}'));
351
+ return match ? match : '';
352
+ };
353
+ const useStatePromisify = (_state)=>{
354
+ const [state, setState] = (0, _react.useState)(_state);
355
+ const resolverRef = (0, _react.useRef)(null);
356
+ (0, _react.useEffect)(()=>{
357
+ if (resolverRef.current) {
358
+ resolverRef.current(state);
359
+ resolverRef.current = null;
360
+ }
361
+ }, [
362
+ resolverRef,
363
+ state
364
+ ]);
365
+ const handleSetState = (0, _react.useCallback)((stateAction)=>{
366
+ setState(stateAction);
367
+ return new Promise((resolve)=>{
368
+ resolverRef.current = resolve;
369
+ });
370
+ }, [
371
+ setState
372
+ ]);
373
+ return [
374
+ state,
375
+ handleSetState
376
+ ];
377
+ };
378
+ const getScoreColor = (value)=>{
379
+ if (value <= 20) {
380
+ return 'bad';
381
+ } else if (value <= 40) {
382
+ return 'low';
383
+ } else if (value <= 60) {
384
+ return 'medium';
385
+ } else if (value <= 80) {
386
+ return 'high';
387
+ } else {
388
+ return 'excellent';
389
+ }
390
+ };
@@ -0,0 +1,115 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ ColumnInputTypes: function() {
13
+ return ColumnInputTypes;
14
+ },
15
+ ComponentTypes: function() {
16
+ return ComponentTypes;
17
+ },
18
+ DataTypes: function() {
19
+ return DataTypes;
20
+ },
21
+ EntityTypes: function() {
22
+ return EntityTypes;
23
+ },
24
+ FilterOperatorType: function() {
25
+ return FilterOperatorType;
26
+ },
27
+ InputTypes: function() {
28
+ return InputTypes;
29
+ }
30
+ });
31
+ const ColumnInputTypes = {
32
+ Array: 'array',
33
+ Avatar: 'avatar',
34
+ Country: 'country',
35
+ Currency: 'currency',
36
+ Date: 'date',
37
+ Done: 'done',
38
+ ID: 'id',
39
+ IncoTerm: 'incoterm',
40
+ Link: 'link',
41
+ Percentage: 'percentage',
42
+ Price: 'price',
43
+ Progress: 'progress',
44
+ Score: 'score',
45
+ Status: 'status',
46
+ String: 'string',
47
+ Measure: 'measure'
48
+ };
49
+ const ComponentTypes = {
50
+ ActionTrey: 'action_trey',
51
+ AsyncDropdown: 'async_dropdown',
52
+ Chip: 'chip',
53
+ ClickableLabel: 'clickable_label',
54
+ CollapsableDropdown: 'collapsable_dropdown',
55
+ Container: 'container',
56
+ DateRange: 'date_range',
57
+ Dropdown: 'dropdown',
58
+ Label: 'label',
59
+ Modal: 'modal',
60
+ RangeSlider: 'range_slider',
61
+ TableColumn: 'table_column',
62
+ Textfield: 'textfield',
63
+ StaticDropdown: 'static_dropdown',
64
+ dropdownOptions: 'dropdownOptions',
65
+ clear: 'clear'
66
+ };
67
+ const DataTypes = {
68
+ CSV: 'csv',
69
+ EDI: 'edi',
70
+ JSON: 'json',
71
+ PDF: 'pdf',
72
+ XLS: 'xls',
73
+ // XLSX: "xlsx",
74
+ XML: 'xml'
75
+ };
76
+ const EntityTypes = {
77
+ Block: 'block',
78
+ Charge: 'charge',
79
+ Contract: 'contract',
80
+ Event: 'event',
81
+ Metadata: 'metadata',
82
+ Notification: 'notification',
83
+ Pricing: 'pricing',
84
+ Service: 'service',
85
+ Structure: 'structure',
86
+ Transaction: 'transaction',
87
+ Transmission: 'transmission',
88
+ User: 'user',
89
+ Workspace: 'workspace'
90
+ };
91
+ const FilterOperatorType = {
92
+ Contains: 'contains',
93
+ NotContains: 'NotContains',
94
+ Equals: 'equals',
95
+ EndsWith: 'endsWith',
96
+ IsAfter: 'after',
97
+ IsBefore: 'before',
98
+ Is: 'is',
99
+ IsNot: 'not',
100
+ In: 'in',
101
+ NotIn: 'notIn',
102
+ StartsWith: 'startsWith',
103
+ GreaterThan: '>',
104
+ GreaterThanEqual: '>=',
105
+ LessThan: '<',
106
+ LessThanEqual: '<='
107
+ };
108
+ const InputTypes = {
109
+ Currency: 'currency',
110
+ Date: 'date',
111
+ Link: 'link',
112
+ Password: 'password',
113
+ Percent: 'percent',
114
+ Text: 'text'
115
+ };
@@ -0,0 +1,154 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ Object.defineProperty(exports, "parseInput", {
6
+ enumerable: true,
7
+ get: function() {
8
+ return parseInput;
9
+ }
10
+ });
11
+ const _jsxruntime = require("react/jsx-runtime");
12
+ const _react = /*#__PURE__*/ _interop_require_default(require("react"));
13
+ const _ = require("../");
14
+ const _fixefyuicomponents = require("@fixefy/fixefy-ui-components");
15
+ function _define_property(obj, key, value) {
16
+ if (key in obj) {
17
+ Object.defineProperty(obj, key, {
18
+ value: value,
19
+ enumerable: true,
20
+ configurable: true,
21
+ writable: true
22
+ });
23
+ } else {
24
+ obj[key] = value;
25
+ }
26
+ return obj;
27
+ }
28
+ function _interop_require_default(obj) {
29
+ return obj && obj.__esModule ? obj : {
30
+ default: obj
31
+ };
32
+ }
33
+ function _object_spread(target) {
34
+ for(var i = 1; i < arguments.length; i++){
35
+ var source = arguments[i] != null ? arguments[i] : {};
36
+ var ownKeys = Object.keys(source);
37
+ if (typeof Object.getOwnPropertySymbols === "function") {
38
+ ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function(sym) {
39
+ return Object.getOwnPropertyDescriptor(source, sym).enumerable;
40
+ }));
41
+ }
42
+ ownKeys.forEach(function(key) {
43
+ _define_property(target, key, source[key]);
44
+ });
45
+ }
46
+ return target;
47
+ }
48
+ function ownKeys(object, enumerableOnly) {
49
+ var keys = Object.keys(object);
50
+ if (Object.getOwnPropertySymbols) {
51
+ var symbols = Object.getOwnPropertySymbols(object);
52
+ if (enumerableOnly) {
53
+ symbols = symbols.filter(function(sym) {
54
+ return Object.getOwnPropertyDescriptor(object, sym).enumerable;
55
+ });
56
+ }
57
+ keys.push.apply(keys, symbols);
58
+ }
59
+ return keys;
60
+ }
61
+ function _object_spread_props(target, source) {
62
+ source = source != null ? source : {};
63
+ if (Object.getOwnPropertyDescriptors) {
64
+ Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
65
+ } else {
66
+ ownKeys(Object(source)).forEach(function(key) {
67
+ Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
68
+ });
69
+ }
70
+ return target;
71
+ }
72
+ function _object_without_properties(source, excluded) {
73
+ if (source == null) return {};
74
+ var target = _object_without_properties_loose(source, excluded);
75
+ var key, i;
76
+ if (Object.getOwnPropertySymbols) {
77
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
78
+ for(i = 0; i < sourceSymbolKeys.length; i++){
79
+ key = sourceSymbolKeys[i];
80
+ if (excluded.indexOf(key) >= 0) continue;
81
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
82
+ target[key] = source[key];
83
+ }
84
+ }
85
+ return target;
86
+ }
87
+ function _object_without_properties_loose(source, excluded) {
88
+ if (source == null) return {};
89
+ var target = {};
90
+ var sourceKeys = Object.keys(source);
91
+ var key, i;
92
+ for(i = 0; i < sourceKeys.length; i++){
93
+ key = sourceKeys[i];
94
+ if (excluded.indexOf(key) >= 0) continue;
95
+ target[key] = source[key];
96
+ }
97
+ return target;
98
+ }
99
+ const parseInput = (_param)=>{
100
+ var { client, fetcher, control, structure, droppedItem, state, onInputChange, classes, args } = _param, rest = _object_without_properties(_param, [
101
+ "client",
102
+ "fetcher",
103
+ "control",
104
+ "structure",
105
+ "droppedItem",
106
+ "state",
107
+ "onInputChange",
108
+ "classes",
109
+ "args"
110
+ ]);
111
+ const { type, children } = structure;
112
+ const { AsyncDropdown, Textfield, clear, dropdownOptions } = _.ComponentTypes;
113
+ switch(type){
114
+ case AsyncDropdown:
115
+ {
116
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_fixefyuicomponents.FxAsyncDropdown, _object_spread({
117
+ classes: classes,
118
+ structure: structure,
119
+ fetcher: fetcher,
120
+ onChange: ()=>{}
121
+ }, rest));
122
+ }
123
+ case Textfield:
124
+ {
125
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_fixefyuicomponents.FxTextField, _object_spread({
126
+ autoFocus: true,
127
+ droppedItem: droppedItem,
128
+ defaultValue: args && args.data && args.data.default_value,
129
+ onChange: (e)=>onInputChange({
130
+ structure,
131
+ value: e.target.value
132
+ }),
133
+ structure: structure
134
+ }, rest));
135
+ }
136
+ case dropdownOptions:
137
+ return children.map((child)=>{
138
+ return parseInput(_object_spread({
139
+ client,
140
+ control,
141
+ structure: child,
142
+ droppedItem,
143
+ state,
144
+ onInputChange,
145
+ classes,
146
+ args
147
+ }, rest));
148
+ });
149
+ case clear:
150
+ return /*#__PURE__*/ (0, _jsxruntime.jsx)(_fixefyuicomponents.FxButton, _object_spread_props(_object_spread({}, rest), {
151
+ children: structure.name
152
+ }));
153
+ }
154
+ };
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", {
3
+ value: true
4
+ });
5
+ function _export(target, all) {
6
+ for(var name in all)Object.defineProperty(target, name, {
7
+ enumerable: true,
8
+ get: all[name]
9
+ });
10
+ }
11
+ _export(exports, {
12
+ convertFileSize: function() {
13
+ return convertFileSize;
14
+ },
15
+ convertFileTypeToIcon: function() {
16
+ return convertFileTypeToIcon;
17
+ }
18
+ });
19
+ const convertFileSize = (fileSize)=>{
20
+ if (fileSize < 10000) {
21
+ return `${(fileSize / 1000).toFixed(1)} KB`;
22
+ } else if (fileSize < 10000000) {
23
+ return `${(fileSize / 1000000).toFixed(1)} MB`;
24
+ } else {
25
+ return 0;
26
+ }
27
+ };
28
+ const convertFileTypeToIcon = (fileType)=>{
29
+ switch(fileType){
30
+ case 'text/csv':
31
+ return 'uploader/file_type_csv.svg';
32
+ case 'text/xml':
33
+ return 'uploader/file_type_xml.svg';
34
+ case 'text/json':
35
+ return 'uploader/file_type_json.svg';
36
+ case 'text/xls':
37
+ return 'uploader/file_type_xls.svg';
38
+ default:
39
+ return 'uploader/file_type_csv.svg';
40
+ }
41
+ };