@lichens-innovation/react-native-common 3.7.0 → 3.8.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.
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export declare const hasFileSeparator: (fileUri?: string) => boolean;
|
|
1
2
|
/**
|
|
2
3
|
* Extracts the filename from a file URI
|
|
3
4
|
* @param fileUri - The file URI (e.g., '/path/to/file.txt')
|
|
@@ -16,11 +17,6 @@ export declare const hasExtension: (fileUri?: string) => boolean;
|
|
|
16
17
|
* @returns The filename without the extension (e.g., 'my-file')
|
|
17
18
|
*/
|
|
18
19
|
export declare const getFilenameWithoutExtension: (fileUri?: string) => string;
|
|
19
|
-
/**
|
|
20
|
-
* Extracts the file extension from a file URI (lowercase)
|
|
21
|
-
* @param fileUri - The file URI (e.g., '/path/to/file.TXT')
|
|
22
|
-
* @returns The extension in lowercase (e.g., 'txt'), or empty string if no extension
|
|
23
|
-
*/
|
|
24
20
|
export declare const getFileExtensionOnly: (fileUri?: string) => string;
|
|
25
21
|
/**
|
|
26
22
|
* Extracts the directory path from a file URI
|
|
@@ -13,12 +13,24 @@ import { format } from 'date-fns';
|
|
|
13
13
|
import { formatInTimeZone } from 'date-fns-tz';
|
|
14
14
|
import Handlebars from 'handlebars';
|
|
15
15
|
import uuid from 'react-native-uuid';
|
|
16
|
+
export const hasFileSeparator = (fileUri = '') => {
|
|
17
|
+
var _a;
|
|
18
|
+
return (_a = fileUri === null || fileUri === void 0 ? void 0 : fileUri.includes('/')) !== null && _a !== void 0 ? _a : false;
|
|
19
|
+
};
|
|
16
20
|
/**
|
|
17
21
|
* Extracts the filename from a file URI
|
|
18
22
|
* @param fileUri - The file URI (e.g., '/path/to/file.txt')
|
|
19
23
|
* @returns The filename only (e.g., 'file.txt')
|
|
20
24
|
*/
|
|
21
|
-
export const getFilenameOnly = (fileUri = '/') => {
|
|
25
|
+
export const getFilenameOnly = (fileUri = '/') => {
|
|
26
|
+
var _a;
|
|
27
|
+
if (hasFileSeparator(fileUri)) {
|
|
28
|
+
return (_a = fileUri.split('/').pop()) !== null && _a !== void 0 ? _a : '';
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
return fileUri;
|
|
32
|
+
}
|
|
33
|
+
};
|
|
22
34
|
/**
|
|
23
35
|
* Checks if a file URI has an extension
|
|
24
36
|
* @param fileUri - The file URI to check
|
|
@@ -35,19 +47,22 @@ export const hasExtension = (fileUri = '/') => {
|
|
|
35
47
|
*/
|
|
36
48
|
export const getFilenameWithoutExtension = (fileUri = '/') => {
|
|
37
49
|
const filename = getFilenameOnly(fileUri);
|
|
38
|
-
|
|
50
|
+
if (hasExtension(fileUri)) {
|
|
51
|
+
return filename.split('.').slice(0, -1).join('.');
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
return filename;
|
|
55
|
+
}
|
|
39
56
|
};
|
|
40
|
-
/**
|
|
41
|
-
* Extracts the file extension from a file URI (lowercase)
|
|
42
|
-
* @param fileUri - The file URI (e.g., '/path/to/file.TXT')
|
|
43
|
-
* @returns The extension in lowercase (e.g., 'txt'), or empty string if no extension
|
|
44
|
-
*/
|
|
45
57
|
export const getFileExtensionOnly = (fileUri = '/') => {
|
|
46
58
|
var _a, _b;
|
|
47
|
-
|
|
59
|
+
const filename = getFilenameOnly(fileUri);
|
|
60
|
+
if (hasExtension(fileUri)) {
|
|
61
|
+
return (_b = (_a = filename.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : '';
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
48
64
|
return '';
|
|
49
65
|
}
|
|
50
|
-
return (_b = (_a = fileUri.split('.').pop()) === null || _a === void 0 ? void 0 : _a.toLowerCase()) !== null && _b !== void 0 ? _b : '';
|
|
51
66
|
};
|
|
52
67
|
/**
|
|
53
68
|
* Extracts the directory path from a file URI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"filename.utils.js","sourceRoot":"","sources":["../../src/utils/filename.utils.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,IAAI,MAAM,mBAAmB,CAAC;AAErC;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"filename.utils.js","sourceRoot":"","sources":["../../src/utils/filename.utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Lichens Innovation React Native Expo shared components, utilities, hooks and services",
|
|
4
4
|
"repository": "https://github.com/Lichens-Innovation/react-native-common",
|
|
5
5
|
"author": "Lichens Innovation",
|
|
6
|
-
"version": "3.
|
|
6
|
+
"version": "3.8.0",
|
|
7
7
|
"private": false,
|
|
8
8
|
"main": "dist/index.js",
|
|
9
9
|
"types": "dist/index.d.ts",
|