@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 = '/') => { var _a; return (_a = fileUri.split('/').pop()) !== null && _a !== void 0 ? _a : ''; };
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
- return filename.split('.').slice(0, -1).join('.');
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
- if (!hasExtension(fileUri)) {
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":"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"}
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.7.0",
6
+ "version": "3.8.0",
7
7
  "private": false,
8
8
  "main": "dist/index.js",
9
9
  "types": "dist/index.d.ts",