@oxyhq/services 5.9.1 → 5.9.3
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/README.md +1 -33
- package/lib/commonjs/core/OxyServices.js +159 -0
- package/lib/commonjs/core/OxyServices.js.map +1 -0
- package/lib/commonjs/core/OxyServicesMain.js +51 -0
- package/lib/commonjs/core/OxyServicesMain.js.map +1 -0
- package/lib/commonjs/core/analytics/AnalyticsService.js +67 -0
- package/lib/commonjs/core/analytics/AnalyticsService.js.map +1 -0
- package/lib/commonjs/core/auth/AuthService.js +526 -0
- package/lib/commonjs/core/auth/AuthService.js.map +1 -0
- package/lib/commonjs/core/devices/DeviceService.js +61 -0
- package/lib/commonjs/core/devices/DeviceService.js.map +1 -0
- package/lib/commonjs/core/files/FileService.js +176 -0
- package/lib/commonjs/core/files/FileService.js.map +1 -0
- package/lib/commonjs/core/index.js +103 -1707
- package/lib/commonjs/core/index.js.map +1 -1
- package/lib/commonjs/core/karma/KarmaService.js +100 -0
- package/lib/commonjs/core/karma/KarmaService.js.map +1 -0
- package/lib/commonjs/core/locations/LocationService.js +131 -0
- package/lib/commonjs/core/locations/LocationService.js.map +1 -0
- package/lib/commonjs/core/payments/PaymentService.js +124 -0
- package/lib/commonjs/core/payments/PaymentService.js.map +1 -0
- package/lib/commonjs/core/users/UserService.js +234 -0
- package/lib/commonjs/core/users/UserService.js.map +1 -0
- package/lib/commonjs/index.js +164 -2
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/models/session.js +2 -0
- package/lib/{module/types/middleware.js.map → commonjs/models/session.js.map} +1 -1
- package/lib/commonjs/ui/context/OxyContext.js +28 -24
- package/lib/commonjs/ui/context/OxyContext.js.map +1 -1
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js +2 -2
- package/lib/commonjs/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/FileManagementScreen.js +12 -12
- package/lib/commonjs/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/ProfileScreen.js +2 -2
- package/lib/commonjs/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SessionManagementScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/SignInScreen.js +1 -1
- package/lib/commonjs/ui/screens/SignInScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js +1 -1
- package/lib/commonjs/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
- package/lib/commonjs/ui/stores/followStore.js +4 -4
- package/lib/commonjs/ui/stores/followStore.js.map +1 -1
- package/lib/commonjs/utils/apiUtils.js +93 -0
- package/lib/commonjs/utils/apiUtils.js.map +1 -0
- package/lib/commonjs/utils/asyncUtils.js +219 -0
- package/lib/commonjs/utils/asyncUtils.js.map +1 -0
- package/lib/commonjs/utils/errorUtils.js +148 -0
- package/lib/commonjs/utils/errorUtils.js.map +1 -0
- package/lib/commonjs/utils/hookUtils.js +399 -0
- package/lib/commonjs/utils/hookUtils.js.map +1 -0
- package/lib/commonjs/utils/loggerUtils.js +160 -0
- package/lib/commonjs/utils/loggerUtils.js.map +1 -0
- package/lib/commonjs/utils/validationUtils.js +174 -0
- package/lib/commonjs/utils/validationUtils.js.map +1 -0
- package/lib/module/core/OxyServices.js +153 -0
- package/lib/module/core/OxyServices.js.map +1 -0
- package/lib/module/core/OxyServicesMain.js +47 -0
- package/lib/module/core/OxyServicesMain.js.map +1 -0
- package/lib/module/core/analytics/AnalyticsService.js +62 -0
- package/lib/module/core/analytics/AnalyticsService.js.map +1 -0
- package/lib/module/core/auth/AuthService.js +521 -0
- package/lib/module/core/auth/AuthService.js.map +1 -0
- package/lib/module/core/devices/DeviceService.js +57 -0
- package/lib/module/core/devices/DeviceService.js.map +1 -0
- package/lib/module/core/files/FileService.js +171 -0
- package/lib/module/core/files/FileService.js.map +1 -0
- package/lib/module/core/index.js +25 -1694
- package/lib/module/core/index.js.map +1 -1
- package/lib/module/core/karma/KarmaService.js +95 -0
- package/lib/module/core/karma/KarmaService.js.map +1 -0
- package/lib/module/core/locations/LocationService.js +127 -0
- package/lib/module/core/locations/LocationService.js.map +1 -0
- package/lib/module/core/payments/PaymentService.js +119 -0
- package/lib/module/core/payments/PaymentService.js.map +1 -0
- package/lib/module/core/users/UserService.js +230 -0
- package/lib/module/core/users/UserService.js.map +1 -0
- package/lib/module/index.js +8 -4
- package/lib/module/index.js.map +1 -1
- package/lib/module/models/session.js +2 -0
- package/lib/{commonjs/types/middleware.js.map → module/models/session.js.map} +1 -1
- package/lib/module/ui/context/OxyContext.js +28 -24
- package/lib/module/ui/context/OxyContext.js.map +1 -1
- package/lib/module/ui/screens/AccountSwitcherScreen.js +2 -2
- package/lib/module/ui/screens/AccountSwitcherScreen.js.map +1 -1
- package/lib/module/ui/screens/FileManagementScreen.js +12 -12
- package/lib/module/ui/screens/FileManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/ProfileScreen.js +2 -2
- package/lib/module/ui/screens/ProfileScreen.js.map +1 -1
- package/lib/module/ui/screens/SessionManagementScreen.js.map +1 -1
- package/lib/module/ui/screens/SignInScreen.js +1 -1
- package/lib/module/ui/screens/SignInScreen.js.map +1 -1
- package/lib/module/ui/screens/karma/KarmaCenterScreen.js +1 -1
- package/lib/module/ui/screens/karma/KarmaCenterScreen.js.map +1 -1
- package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js +1 -1
- package/lib/module/ui/screens/karma/KarmaLeaderboardScreen.js.map +1 -1
- package/lib/module/ui/screens/karma/KarmaRulesScreen.js +1 -1
- package/lib/module/ui/screens/karma/KarmaRulesScreen.js.map +1 -1
- package/lib/module/ui/stores/followStore.js +4 -4
- package/lib/module/ui/stores/followStore.js.map +1 -1
- package/lib/module/utils/apiUtils.js +85 -0
- package/lib/module/utils/apiUtils.js.map +1 -0
- package/lib/module/utils/asyncUtils.js +202 -0
- package/lib/module/utils/asyncUtils.js.map +1 -0
- package/lib/module/utils/errorUtils.js +139 -0
- package/lib/module/utils/errorUtils.js.map +1 -0
- package/lib/module/utils/hookUtils.js +381 -0
- package/lib/module/utils/hookUtils.js.map +1 -0
- package/lib/module/utils/loggerUtils.js +149 -0
- package/lib/module/utils/loggerUtils.js.map +1 -0
- package/lib/module/utils/validationUtils.js +154 -0
- package/lib/module/utils/validationUtils.js.map +1 -0
- package/lib/typescript/core/OxyServices.d.ts +64 -0
- package/lib/typescript/core/OxyServices.d.ts.map +1 -0
- package/lib/typescript/core/OxyServicesMain.d.ts +33 -0
- package/lib/typescript/core/OxyServicesMain.d.ts.map +1 -0
- package/lib/typescript/core/analytics/AnalyticsService.d.ts +26 -0
- package/lib/typescript/core/analytics/AnalyticsService.d.ts.map +1 -0
- package/lib/typescript/core/auth/AuthService.d.ts +165 -0
- package/lib/typescript/core/auth/AuthService.d.ts.map +1 -0
- package/lib/typescript/core/devices/DeviceService.d.ts +20 -0
- package/lib/typescript/core/devices/DeviceService.d.ts.map +1 -0
- package/lib/typescript/core/files/FileService.d.ts +59 -0
- package/lib/typescript/core/files/FileService.d.ts.map +1 -0
- package/lib/typescript/core/index.d.ts +19 -657
- package/lib/typescript/core/index.d.ts.map +1 -1
- package/lib/typescript/core/karma/KarmaService.d.ts +50 -0
- package/lib/typescript/core/karma/KarmaService.d.ts.map +1 -0
- package/lib/typescript/core/locations/LocationService.d.ts +39 -0
- package/lib/typescript/core/locations/LocationService.d.ts.map +1 -0
- package/lib/typescript/core/payments/PaymentService.d.ts +50 -0
- package/lib/typescript/core/payments/PaymentService.d.ts.map +1 -0
- package/lib/typescript/core/users/UserService.d.ts +111 -0
- package/lib/typescript/core/users/UserService.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +7 -3
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/models/{secureSession.d.ts → session.d.ts} +4 -4
- package/lib/typescript/models/session.d.ts.map +1 -0
- package/lib/typescript/ui/context/OxyContext.d.ts +2 -2
- package/lib/typescript/ui/context/OxyContext.d.ts.map +1 -1
- package/lib/typescript/utils/apiUtils.d.ts +61 -0
- package/lib/typescript/utils/apiUtils.d.ts.map +1 -0
- package/lib/typescript/utils/asyncUtils.d.ts +64 -0
- package/lib/typescript/utils/asyncUtils.d.ts.map +1 -0
- package/lib/typescript/utils/errorUtils.d.ts +45 -0
- package/lib/typescript/utils/errorUtils.d.ts.map +1 -0
- package/lib/typescript/utils/hookUtils.d.ts +102 -0
- package/lib/typescript/utils/hookUtils.d.ts.map +1 -0
- package/lib/typescript/utils/loggerUtils.d.ts +49 -0
- package/lib/typescript/utils/loggerUtils.d.ts.map +1 -0
- package/lib/typescript/utils/validationUtils.d.ts +80 -0
- package/lib/typescript/utils/validationUtils.d.ts.map +1 -0
- package/package.json +2 -8
- package/src/core/OxyServices.ts +168 -0
- package/src/core/OxyServicesMain.ts +57 -0
- package/src/core/analytics/AnalyticsService.ts +64 -0
- package/src/core/auth/AuthService.ts +544 -0
- package/src/core/devices/DeviceService.ts +55 -0
- package/src/core/files/FileService.ts +194 -0
- package/src/core/index.ts +26 -1769
- package/src/core/karma/KarmaService.ts +104 -0
- package/src/core/locations/LocationService.ts +141 -0
- package/src/core/payments/PaymentService.ts +133 -0
- package/src/core/users/UserService.ts +241 -0
- package/src/index.ts +29 -8
- package/src/models/{secureSession.ts → session.ts} +5 -5
- package/src/ui/context/OxyContext.tsx +34 -30
- package/src/ui/screens/AccountSwitcherScreen.tsx +4 -4
- package/src/ui/screens/FileManagementScreen.tsx +12 -12
- package/src/ui/screens/ProfileScreen.tsx +3 -3
- package/src/ui/screens/SessionManagementScreen.tsx +2 -2
- package/src/ui/screens/SignInScreen.tsx +1 -1
- package/src/ui/screens/karma/KarmaCenterScreen.tsx +2 -2
- package/src/ui/screens/karma/KarmaLeaderboardScreen.tsx +3 -3
- package/src/ui/screens/karma/KarmaRulesScreen.tsx +3 -3
- package/src/ui/stores/followStore.ts +4 -4
- package/src/utils/apiUtils.ts +102 -0
- package/src/utils/asyncUtils.ts +265 -0
- package/src/utils/errorUtils.ts +172 -0
- package/src/utils/hookUtils.ts +397 -0
- package/src/utils/loggerUtils.ts +153 -0
- package/src/utils/validationUtils.ts +158 -0
- package/lib/commonjs/models/secureSession.js +0 -2
- package/lib/commonjs/models/secureSession.js.map +0 -1
- package/lib/commonjs/types/middleware.js +0 -6
- package/lib/module/models/secureSession.js +0 -2
- package/lib/module/models/secureSession.js.map +0 -1
- package/lib/module/types/middleware.js +0 -4
- package/lib/typescript/models/secureSession.d.ts.map +0 -1
- package/lib/typescript/types/middleware.d.ts +0 -19
- package/lib/typescript/types/middleware.d.ts.map +0 -1
- package/src/types/middleware.ts +0 -20
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["LogLevel","Logger","level","INFO","isDevelopment","process","env","NODE_ENV","setLevel","shouldLog","formatMessage","message","context","timestamp","Date","toISOString","contextStr","Object","entries","map","k","v","join","debug","args","DEBUG","formattedMessage","console","log","info","warn","WARN","error","ERROR","auth","category","api","session","user","device","payment","performance","operation","duration","errorWithStack","stack","group","label","fn","groupEnd","logger","logAuth","logApi","logSession","logUser","logDevice","logPayment","logError","logPerformance"],"sourceRoot":"../../../src","sources":["utils/loggerUtils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Validation utilities for common data validation patterns
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Email validation regex
|
|
9
|
+
*/
|
|
10
|
+
export const EMAIL_REGEX = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Username validation regex (alphanumeric, underscore, dash, 3-30 chars)
|
|
14
|
+
*/
|
|
15
|
+
export const USERNAME_REGEX = /^[a-zA-Z0-9_-]{3,30}$/;
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Password validation regex (at least 8 chars, 1 uppercase, 1 lowercase, 1 number)
|
|
19
|
+
*/
|
|
20
|
+
export const PASSWORD_REGEX = /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d@$!%*?&]{8,}$/;
|
|
21
|
+
|
|
22
|
+
/**
|
|
23
|
+
* Validate email format
|
|
24
|
+
*/
|
|
25
|
+
export function isValidEmail(email) {
|
|
26
|
+
return EMAIL_REGEX.test(email);
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
/**
|
|
30
|
+
* Validate username format
|
|
31
|
+
*/
|
|
32
|
+
export function isValidUsername(username) {
|
|
33
|
+
return USERNAME_REGEX.test(username);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Validate password strength
|
|
38
|
+
*/
|
|
39
|
+
export function isValidPassword(password) {
|
|
40
|
+
return PASSWORD_REGEX.test(password);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Validate required string
|
|
45
|
+
*/
|
|
46
|
+
export function isRequiredString(value) {
|
|
47
|
+
return typeof value === 'string' && value.trim().length > 0;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* Validate required number
|
|
52
|
+
*/
|
|
53
|
+
export function isRequiredNumber(value) {
|
|
54
|
+
return typeof value === 'number' && !isNaN(value);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Validate required boolean
|
|
59
|
+
*/
|
|
60
|
+
export function isRequiredBoolean(value) {
|
|
61
|
+
return typeof value === 'boolean';
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Validate array
|
|
66
|
+
*/
|
|
67
|
+
export function isValidArray(value) {
|
|
68
|
+
return Array.isArray(value);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Validate object
|
|
73
|
+
*/
|
|
74
|
+
export function isValidObject(value) {
|
|
75
|
+
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Validate UUID format
|
|
80
|
+
*/
|
|
81
|
+
export function isValidUUID(uuid) {
|
|
82
|
+
const UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
|
|
83
|
+
return UUID_REGEX.test(uuid);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Validate URL format
|
|
88
|
+
*/
|
|
89
|
+
export function isValidURL(url) {
|
|
90
|
+
try {
|
|
91
|
+
new URL(url);
|
|
92
|
+
return true;
|
|
93
|
+
} catch {
|
|
94
|
+
return false;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Validate date string
|
|
100
|
+
*/
|
|
101
|
+
export function isValidDate(dateString) {
|
|
102
|
+
const date = new Date(dateString);
|
|
103
|
+
return !isNaN(date.getTime());
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
/**
|
|
107
|
+
* Validate file size (in bytes)
|
|
108
|
+
*/
|
|
109
|
+
export function isValidFileSize(size, maxSize) {
|
|
110
|
+
return size > 0 && size <= maxSize;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Validate file type
|
|
115
|
+
*/
|
|
116
|
+
export function isValidFileType(filename, allowedTypes) {
|
|
117
|
+
const extension = filename.split('.').pop()?.toLowerCase();
|
|
118
|
+
return extension ? allowedTypes.includes(extension) : false;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Sanitize string input
|
|
123
|
+
*/
|
|
124
|
+
export function sanitizeString(input) {
|
|
125
|
+
return input.trim().replace(/[<>]/g, '');
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
/**
|
|
129
|
+
* Sanitize HTML input
|
|
130
|
+
*/
|
|
131
|
+
export function sanitizeHTML(input) {
|
|
132
|
+
return input.replace(/&/g, '&').replace(/</g, '<').replace(/>/g, '>').replace(/"/g, '"').replace(/'/g, ''');
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
/**
|
|
136
|
+
* Validate and sanitize user input
|
|
137
|
+
*/
|
|
138
|
+
export function validateAndSanitizeUserInput(input, type) {
|
|
139
|
+
if (typeof input !== 'string') {
|
|
140
|
+
return null;
|
|
141
|
+
}
|
|
142
|
+
const sanitized = sanitizeString(input);
|
|
143
|
+
switch (type) {
|
|
144
|
+
case 'email':
|
|
145
|
+
return isValidEmail(sanitized) ? sanitized : null;
|
|
146
|
+
case 'username':
|
|
147
|
+
return isValidUsername(sanitized) ? sanitized : null;
|
|
148
|
+
case 'string':
|
|
149
|
+
return isRequiredString(sanitized) ? sanitized : null;
|
|
150
|
+
default:
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=validationUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["EMAIL_REGEX","USERNAME_REGEX","PASSWORD_REGEX","isValidEmail","email","test","isValidUsername","username","isValidPassword","password","isRequiredString","value","trim","length","isRequiredNumber","isNaN","isRequiredBoolean","isValidArray","Array","isArray","isValidObject","isValidUUID","uuid","UUID_REGEX","isValidURL","url","URL","isValidDate","dateString","date","Date","getTime","isValidFileSize","size","maxSize","isValidFileType","filename","allowedTypes","extension","split","pop","toLowerCase","includes","sanitizeString","input","replace","sanitizeHTML","validateAndSanitizeUserInput","type","sanitized"],"sourceRoot":"../../../src","sources":["utils/validationUtils.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { AxiosInstance } from 'axios';
|
|
2
|
+
import { OxyConfig, ApiError } from '../models/interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* OxyServices - Base client library for interacting with the Oxy API
|
|
5
|
+
*
|
|
6
|
+
* This class provides the core HTTP client setup, token management, and error handling.
|
|
7
|
+
* Specific functionality is delegated to focused service modules.
|
|
8
|
+
*/
|
|
9
|
+
export declare class OxyServices {
|
|
10
|
+
protected client: AxiosInstance;
|
|
11
|
+
private accessToken;
|
|
12
|
+
private refreshToken;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new instance of the OxyServices client
|
|
15
|
+
* @param config - Configuration for the client
|
|
16
|
+
*/
|
|
17
|
+
constructor(config: OxyConfig);
|
|
18
|
+
/**
|
|
19
|
+
* Setup axios interceptors for authentication and error handling
|
|
20
|
+
*/
|
|
21
|
+
private setupInterceptors;
|
|
22
|
+
/**
|
|
23
|
+
* Get the configured base URL
|
|
24
|
+
*/
|
|
25
|
+
getBaseURL(): string;
|
|
26
|
+
/**
|
|
27
|
+
* Set authentication tokens
|
|
28
|
+
*/
|
|
29
|
+
setTokens(accessToken: string, refreshToken?: string): void;
|
|
30
|
+
/**
|
|
31
|
+
* Clear stored authentication tokens
|
|
32
|
+
*/
|
|
33
|
+
clearTokens(): void;
|
|
34
|
+
/**
|
|
35
|
+
* Get the current user ID from the access token
|
|
36
|
+
*/
|
|
37
|
+
getCurrentUserId(): string | null;
|
|
38
|
+
/**
|
|
39
|
+
* Check if the client has a valid access token
|
|
40
|
+
*/
|
|
41
|
+
private hasAccessToken;
|
|
42
|
+
/**
|
|
43
|
+
* Validate the current access token with the server
|
|
44
|
+
*/
|
|
45
|
+
validate(): Promise<boolean>;
|
|
46
|
+
/**
|
|
47
|
+
* Get the HTTP client instance (protected for use by service modules)
|
|
48
|
+
*/
|
|
49
|
+
protected getClient(): AxiosInstance;
|
|
50
|
+
/**
|
|
51
|
+
* Centralized error handling
|
|
52
|
+
*/
|
|
53
|
+
protected handleError(error: any): ApiError;
|
|
54
|
+
/**
|
|
55
|
+
* Health check endpoint
|
|
56
|
+
*/
|
|
57
|
+
healthCheck(): Promise<{
|
|
58
|
+
status: string;
|
|
59
|
+
users?: number;
|
|
60
|
+
timestamp?: string;
|
|
61
|
+
[key: string]: any;
|
|
62
|
+
}>;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=OxyServices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OxyServices.d.ts","sourceRoot":"","sources":["../../../src/core/OxyServices.ts"],"names":[],"mappings":"AAAA,OAAc,EAAE,aAAa,EAA8B,MAAM,OAAO,CAAC;AAEzE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAS3D;;;;;GAKG;AACH,qBAAa,WAAW;IACtB,SAAS,CAAC,MAAM,EAAE,aAAa,CAAC;IAChC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,YAAY,CAAuB;IAE3C;;;OAGG;gBACS,MAAM,EAAE,SAAS;IAS7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAqCzB;;OAEG;IACI,UAAU,IAAI,MAAM;IAI3B;;OAEG;IACI,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,GAAE,MAAW,GAAG,IAAI;IAKtE;;OAEG;IACI,WAAW,IAAI,IAAI;IAK1B;;OAEG;IACI,gBAAgB,IAAI,MAAM,GAAG,IAAI;IAaxC;;OAEG;IACH,OAAO,CAAC,cAAc;IAItB;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAalC;;OAEG;IACH,SAAS,CAAC,SAAS,IAAI,aAAa;IAIpC;;OAEG;IACH,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,QAAQ;IAI3C;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC;QAC3B,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KACnB,CAAC;CAQH"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { OxyConfig } from '../models/interfaces';
|
|
2
|
+
import { AuthService } from './auth/AuthService';
|
|
3
|
+
import { UserService } from './users/UserService';
|
|
4
|
+
import { PaymentService } from './payments/PaymentService';
|
|
5
|
+
import { KarmaService } from './karma/KarmaService';
|
|
6
|
+
import { FileService } from './files/FileService';
|
|
7
|
+
import { LocationService } from './locations/LocationService';
|
|
8
|
+
import { AnalyticsService } from './analytics/AnalyticsService';
|
|
9
|
+
import { DeviceService } from './devices/DeviceService';
|
|
10
|
+
/**
|
|
11
|
+
* Main OxyServices class that combines all individual services
|
|
12
|
+
*
|
|
13
|
+
* This class provides a unified interface to all Oxy API services while maintaining
|
|
14
|
+
* backward compatibility with the original monolithic structure.
|
|
15
|
+
*/
|
|
16
|
+
export declare class OxyServicesMain extends AuthService {
|
|
17
|
+
readonly users: UserService;
|
|
18
|
+
readonly payments: PaymentService;
|
|
19
|
+
readonly karma: KarmaService;
|
|
20
|
+
readonly files: FileService;
|
|
21
|
+
readonly locations: LocationService;
|
|
22
|
+
readonly analytics: AnalyticsService;
|
|
23
|
+
readonly devices: DeviceService;
|
|
24
|
+
constructor(config: OxyConfig);
|
|
25
|
+
static readonly OXY_CLOUD_URL = "https://cloud.oxy.so";
|
|
26
|
+
fetchLinkMetadata(url: string): Promise<{
|
|
27
|
+
url: string;
|
|
28
|
+
title: string;
|
|
29
|
+
description: string;
|
|
30
|
+
image?: string;
|
|
31
|
+
}>;
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=OxyServicesMain.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OxyServicesMain.d.ts","sourceRoot":"","sources":["../../../src/core/OxyServicesMain.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAiB,MAAM,qBAAqB,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD;;;;;GAKG;AACH,qBAAa,eAAgB,SAAQ,WAAW;IAE9C,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,QAAQ,EAAE,cAAc,CAAC;IACzC,SAAgB,KAAK,EAAE,YAAY,CAAC;IACpC,SAAgB,KAAK,EAAE,WAAW,CAAC;IACnC,SAAgB,SAAS,EAAE,eAAe,CAAC;IAC3C,SAAgB,SAAS,EAAE,gBAAgB,CAAC;IAC5C,SAAgB,OAAO,EAAE,aAAa,CAAC;gBAE3B,MAAM,EAAE,SAAS;IAc7B,MAAM,CAAC,QAAQ,CAAC,aAAa,0BAAiB;IAGxC,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;QAC5C,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CAQH"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { OxyServices } from '../OxyServices';
|
|
2
|
+
import { AnalyticsData, FollowerDetails, ContentViewer } from '../../models/interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* Analytics service for handling analytics and content viewer operations
|
|
5
|
+
*/
|
|
6
|
+
export declare class AnalyticsService extends OxyServices {
|
|
7
|
+
/**
|
|
8
|
+
* Get analytics data for user
|
|
9
|
+
*/
|
|
10
|
+
getAnalytics(userId: string, period?: string): Promise<AnalyticsData>;
|
|
11
|
+
/**
|
|
12
|
+
* Update analytics data
|
|
13
|
+
*/
|
|
14
|
+
updateAnalytics(userId: string, type: string, data: Record<string, any>): Promise<{
|
|
15
|
+
message: string;
|
|
16
|
+
}>;
|
|
17
|
+
/**
|
|
18
|
+
* Get content viewers for user
|
|
19
|
+
*/
|
|
20
|
+
getContentViewers(userId: string, period?: string): Promise<ContentViewer[]>;
|
|
21
|
+
/**
|
|
22
|
+
* Get follower details for user
|
|
23
|
+
*/
|
|
24
|
+
getFollowerDetails(userId: string, period?: string): Promise<FollowerDetails>;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=AnalyticsService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AnalyticsService.d.ts","sourceRoot":"","sources":["../../../../src/core/analytics/AnalyticsService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExF;;GAEG;AACH,qBAAa,gBAAiB,SAAQ,WAAW;IAC/C;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAY3E;;OAEG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAS5G;;OAEG;IACG,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAYlF;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;CAWpF"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
import { OxyServices } from '../OxyServices';
|
|
2
|
+
import { User, ApiError } from '../../models/interfaces';
|
|
3
|
+
import { SessionLoginResponse } from '../../models/session';
|
|
4
|
+
/**
|
|
5
|
+
* Authentication service for handling login, signup, and session management
|
|
6
|
+
*/
|
|
7
|
+
export declare class AuthService extends OxyServices {
|
|
8
|
+
/**
|
|
9
|
+
* Sign up a new user
|
|
10
|
+
*/
|
|
11
|
+
signUp(username: string, email: string, password: string): Promise<{
|
|
12
|
+
message: string;
|
|
13
|
+
token: string;
|
|
14
|
+
user: User;
|
|
15
|
+
}>;
|
|
16
|
+
/**
|
|
17
|
+
* Sign in with device management
|
|
18
|
+
*/
|
|
19
|
+
signIn(username: string, password: string, deviceName?: string, deviceFingerprint?: any): Promise<SessionLoginResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* Get user by session ID
|
|
22
|
+
*/
|
|
23
|
+
getUserBySession(sessionId: string): Promise<User>;
|
|
24
|
+
/**
|
|
25
|
+
* Get access token by session ID
|
|
26
|
+
*/
|
|
27
|
+
getTokenBySession(sessionId: string): Promise<{
|
|
28
|
+
accessToken: string;
|
|
29
|
+
expiresAt: string;
|
|
30
|
+
}>;
|
|
31
|
+
/**
|
|
32
|
+
* Get sessions by session ID
|
|
33
|
+
*/
|
|
34
|
+
getSessionsBySessionId(sessionId: string): Promise<any[]>;
|
|
35
|
+
/**
|
|
36
|
+
* Logout from a specific session
|
|
37
|
+
*/
|
|
38
|
+
logoutSession(sessionId: string, targetSessionId?: string): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Logout from all sessions
|
|
41
|
+
*/
|
|
42
|
+
logoutAllSessions(sessionId: string): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Validate a session with optional device fingerprint
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* // Basic session validation
|
|
49
|
+
* const result = await authService.validateSession('session-id');
|
|
50
|
+
*
|
|
51
|
+
* // With device fingerprint for enhanced security
|
|
52
|
+
* const result = await authService.validateSession('session-id', {
|
|
53
|
+
* deviceFingerprint: 'device-fingerprint',
|
|
54
|
+
* useHeaderValidation: true
|
|
55
|
+
* });
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* @param sessionId The session ID to validate
|
|
59
|
+
* @param options Validation options
|
|
60
|
+
* @param options.deviceFingerprint Optional device fingerprint for enhanced validation
|
|
61
|
+
* @param options.useHeaderValidation Whether to use header-based validation (default: false)
|
|
62
|
+
* @returns Session validation result
|
|
63
|
+
*/
|
|
64
|
+
validateSession(sessionId: string, options?: {
|
|
65
|
+
deviceFingerprint?: string;
|
|
66
|
+
useHeaderValidation?: boolean;
|
|
67
|
+
}): Promise<{
|
|
68
|
+
valid: boolean;
|
|
69
|
+
expiresAt: string;
|
|
70
|
+
lastActivity: string;
|
|
71
|
+
user: User;
|
|
72
|
+
sessionId?: string;
|
|
73
|
+
source?: string;
|
|
74
|
+
}>;
|
|
75
|
+
/**
|
|
76
|
+
* Express.js authentication middleware
|
|
77
|
+
*
|
|
78
|
+
* A simple, efficient, and debuggable authentication middleware that supports both
|
|
79
|
+
* session-based and legacy token-based authentication.
|
|
80
|
+
*
|
|
81
|
+
* @example
|
|
82
|
+
* ```typescript
|
|
83
|
+
* // Basic usage
|
|
84
|
+
* app.use('/api/protected', authService.authenticateToken());
|
|
85
|
+
*
|
|
86
|
+
* // With debug logging
|
|
87
|
+
* app.use('/api/protected', authService.authenticateToken({ debug: true }));
|
|
88
|
+
*
|
|
89
|
+
* // Without loading full user data (faster)
|
|
90
|
+
* app.use('/api/protected', authService.authenticateToken({ loadFullUser: false }));
|
|
91
|
+
*
|
|
92
|
+
* // With custom error handling
|
|
93
|
+
* app.use('/api/protected', authService.authenticateToken({
|
|
94
|
+
* onError: (error) => {
|
|
95
|
+
* console.error('Auth error:', error);
|
|
96
|
+
* // Custom error handling logic
|
|
97
|
+
* }
|
|
98
|
+
* }));
|
|
99
|
+
* ```
|
|
100
|
+
*
|
|
101
|
+
* @param options Configuration options
|
|
102
|
+
* @param options.loadFullUser Whether to load complete user data (default: true)
|
|
103
|
+
* @param options.onError Custom error handler function
|
|
104
|
+
* @param options.debug Enable debug logging (default: false)
|
|
105
|
+
* @returns Express middleware function
|
|
106
|
+
*/
|
|
107
|
+
authenticateToken(options?: {
|
|
108
|
+
loadFullUser?: boolean;
|
|
109
|
+
onError?: (error: ApiError) => any;
|
|
110
|
+
debug?: boolean;
|
|
111
|
+
}): (req: any, res: any, next: any) => Promise<any>;
|
|
112
|
+
/**
|
|
113
|
+
* Helper method for validating tokens without Express middleware
|
|
114
|
+
*
|
|
115
|
+
* Use this method when you need to validate tokens programmatically
|
|
116
|
+
* outside of Express middleware context.
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```typescript
|
|
120
|
+
* const result = await authService.validateToken(token);
|
|
121
|
+
* if (result.valid) {
|
|
122
|
+
* console.log('User ID:', result.userId);
|
|
123
|
+
* console.log('User data:', result.user);
|
|
124
|
+
* } else {
|
|
125
|
+
* console.log('Validation failed:', result.error);
|
|
126
|
+
* }
|
|
127
|
+
* ```
|
|
128
|
+
*
|
|
129
|
+
* @param token JWT token to validate
|
|
130
|
+
* @returns Validation result with user data if valid
|
|
131
|
+
*/
|
|
132
|
+
validateToken(token: string): Promise<{
|
|
133
|
+
valid: boolean;
|
|
134
|
+
userId?: string;
|
|
135
|
+
user?: any;
|
|
136
|
+
error?: string;
|
|
137
|
+
}>;
|
|
138
|
+
/**
|
|
139
|
+
* Get device sessions (delegates to DeviceService)
|
|
140
|
+
*/
|
|
141
|
+
getDeviceSessions(sessionId: string): Promise<any[]>;
|
|
142
|
+
/**
|
|
143
|
+
* Logout from all device sessions (delegates to DeviceService)
|
|
144
|
+
*/
|
|
145
|
+
logoutAllDeviceSessions(sessionId: string): Promise<void>;
|
|
146
|
+
/**
|
|
147
|
+
* Update device name (delegates to DeviceService)
|
|
148
|
+
*/
|
|
149
|
+
updateDeviceName(sessionId: string, deviceName: string): Promise<void>;
|
|
150
|
+
/**
|
|
151
|
+
* Check username availability
|
|
152
|
+
*/
|
|
153
|
+
checkUsernameAvailability(username: string): Promise<{
|
|
154
|
+
available: boolean;
|
|
155
|
+
message: string;
|
|
156
|
+
}>;
|
|
157
|
+
/**
|
|
158
|
+
* Check email availability
|
|
159
|
+
*/
|
|
160
|
+
checkEmailAvailability(email: string): Promise<{
|
|
161
|
+
available: boolean;
|
|
162
|
+
message: string;
|
|
163
|
+
}>;
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=AuthService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AuthService.d.ts","sourceRoot":"","sources":["../../../../src/core/auth/AuthService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { OxyServices } from '../OxyServices';
|
|
2
|
+
import { DeviceSession, DeviceSessionLogoutResponse, UpdateDeviceNameResponse } from '../../models/interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* Device service for handling device session management
|
|
5
|
+
*/
|
|
6
|
+
export declare class DeviceService extends OxyServices {
|
|
7
|
+
/**
|
|
8
|
+
* Get device sessions
|
|
9
|
+
*/
|
|
10
|
+
getDeviceSessions(sessionId: string, deviceId?: string): Promise<DeviceSession[]>;
|
|
11
|
+
/**
|
|
12
|
+
* Logout from all device sessions
|
|
13
|
+
*/
|
|
14
|
+
logoutAllDeviceSessions(sessionId: string, deviceId?: string, excludeCurrent?: boolean): Promise<DeviceSessionLogoutResponse>;
|
|
15
|
+
/**
|
|
16
|
+
* Update device name
|
|
17
|
+
*/
|
|
18
|
+
updateDeviceName(sessionId: string, deviceName: string): Promise<UpdateDeviceNameResponse>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=DeviceService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DeviceService.d.ts","sourceRoot":"","sources":["../../../../src/core/devices/DeviceService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,aAAa,EAEb,2BAA2B,EAC3B,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAGjC;;GAEG;AACH,qBAAa,aAAc,SAAQ,WAAW;IAC5C;;OAEG;IACG,iBAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAYvF;;OAEG;IACG,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,2BAA2B,CAAC;IAYnI;;OAEG;IACG,gBAAgB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,wBAAwB,CAAC;CAQjG"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { OxyServices } from '../OxyServices';
|
|
2
|
+
import { FileMetadata, FileUploadResponse, FileListResponse, FileUpdateRequest, FileDeleteResponse } from '../../models/interfaces';
|
|
3
|
+
/**
|
|
4
|
+
* Default cloud URL for Oxy services, cloud is where the user files are. (e.g. images, videos, etc.). Not the API.
|
|
5
|
+
*/
|
|
6
|
+
export declare const OXY_CLOUD_URL = "https://cloud.oxy.so";
|
|
7
|
+
/**
|
|
8
|
+
* File service for handling file operations and management
|
|
9
|
+
*/
|
|
10
|
+
export declare class FileService extends OxyServices {
|
|
11
|
+
/**
|
|
12
|
+
* Upload a single file
|
|
13
|
+
* Note: This method is deprecated. Use the new raw upload approach instead.
|
|
14
|
+
*/
|
|
15
|
+
uploadFile(file: File | Blob | any, // Use 'any' to handle Buffer type in cross-platform scenarios
|
|
16
|
+
filename: string, metadata?: Record<string, any>): Promise<FileMetadata>;
|
|
17
|
+
/**
|
|
18
|
+
* Upload multiple files
|
|
19
|
+
* Note: This method is deprecated. Use the new raw upload approach instead.
|
|
20
|
+
*/
|
|
21
|
+
uploadFiles(files: (File | Blob | any)[], filenames: string[], metadata?: Record<string, any>): Promise<FileUploadResponse>;
|
|
22
|
+
/**
|
|
23
|
+
* Get file metadata
|
|
24
|
+
*/
|
|
25
|
+
getFileMetadata(fileId: string): Promise<FileMetadata>;
|
|
26
|
+
/**
|
|
27
|
+
* Update file metadata
|
|
28
|
+
*/
|
|
29
|
+
updateFileMetadata(fileId: string, updates: FileUpdateRequest): Promise<FileMetadata>;
|
|
30
|
+
/**
|
|
31
|
+
* Delete file
|
|
32
|
+
*/
|
|
33
|
+
deleteFile(fileId: string): Promise<FileDeleteResponse>;
|
|
34
|
+
/**
|
|
35
|
+
* Get file download URL
|
|
36
|
+
*/
|
|
37
|
+
getFileDownloadUrl(fileId: string): string;
|
|
38
|
+
/**
|
|
39
|
+
* Get file stream URL
|
|
40
|
+
*/
|
|
41
|
+
getFileStreamUrl(fileId: string): string;
|
|
42
|
+
/**
|
|
43
|
+
* List user files
|
|
44
|
+
*/
|
|
45
|
+
listUserFiles(userId: string, limit?: number, offset?: number, filters?: Record<string, any>): Promise<FileListResponse>;
|
|
46
|
+
/**
|
|
47
|
+
* Download file content
|
|
48
|
+
*/
|
|
49
|
+
downloadFileContent(fileId: string): Promise<Response>;
|
|
50
|
+
/**
|
|
51
|
+
* Get file content as text
|
|
52
|
+
*/
|
|
53
|
+
getFileContentAsText(fileId: string): Promise<string>;
|
|
54
|
+
/**
|
|
55
|
+
* Get file content as blob
|
|
56
|
+
*/
|
|
57
|
+
getFileContentAsBlob(fileId: string): Promise<Blob>;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=FileService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FileService.d.ts","sourceRoot":"","sources":["../../../../src/core/files/FileService.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAEjC;;GAEG;AACH,eAAO,MAAM,aAAa,yBAAyB,CAAC;AAEpD;;GAEG;AACH,qBAAa,WAAY,SAAQ,WAAW;IAC1C;;;OAGG;IACG,UAAU,CACd,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,GAAG,EAAE,8DAA8D;IACvF,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,OAAO,CAAC,YAAY,CAAC;IAoBxB;;;OAGG;IACG,WAAW,CACf,KAAK,EAAE,CAAC,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC,EAAE,EAC5B,SAAS,EAAE,MAAM,EAAE,EACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC7B,OAAO,CAAC,kBAAkB,CAAC;IAuB9B;;OAEG;IACG,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAS5D;;OAEG;IACG,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,YAAY,CAAC;IAS3F;;OAEG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAS7D;;OAEG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI1C;;OAEG;IACH,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAIxC;;OAEG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,KAAK,CAAC,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAmB5B;;OAEG;IACG,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAW5D;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAS3D;;OAEG;IACG,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAU1D"}
|