@enfyra/sdk-nuxt 0.3.12 → 0.3.14
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/dist/composables/useEnfyraApi.mjs +42 -3
- package/dist/index.d.ts +25 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/module.json +1 -1
- package/package.json +1 -1
- package/src/composables/useEnfyraApi.ts +45 -3
- package/src/types/index.ts +27 -3
|
@@ -52,13 +52,52 @@ export function useEnfyraApi(path, opts = {}) {
|
|
|
52
52
|
...opts.headers
|
|
53
53
|
}
|
|
54
54
|
};
|
|
55
|
-
if (key) {
|
|
55
|
+
if (key !== void 0) {
|
|
56
56
|
fetchOptions.key = key;
|
|
57
57
|
}
|
|
58
|
-
if (opts.default) {
|
|
58
|
+
if (opts.default !== void 0) {
|
|
59
59
|
fetchOptions.default = opts.default;
|
|
60
60
|
}
|
|
61
|
-
|
|
61
|
+
if (opts.server !== void 0) {
|
|
62
|
+
fetchOptions.server = opts.server;
|
|
63
|
+
}
|
|
64
|
+
if (opts.lazy !== void 0) {
|
|
65
|
+
fetchOptions.lazy = opts.lazy;
|
|
66
|
+
}
|
|
67
|
+
if (opts.immediate !== void 0) {
|
|
68
|
+
fetchOptions.immediate = opts.immediate;
|
|
69
|
+
}
|
|
70
|
+
if (opts.transform !== void 0) {
|
|
71
|
+
fetchOptions.transform = opts.transform;
|
|
72
|
+
}
|
|
73
|
+
if (opts.pick !== void 0) {
|
|
74
|
+
fetchOptions.pick = opts.pick;
|
|
75
|
+
}
|
|
76
|
+
if (opts.watch !== void 0) {
|
|
77
|
+
fetchOptions.watch = opts.watch;
|
|
78
|
+
}
|
|
79
|
+
if (opts.deep !== void 0) {
|
|
80
|
+
fetchOptions.deep = opts.deep;
|
|
81
|
+
}
|
|
82
|
+
if (opts.getCachedData !== void 0) {
|
|
83
|
+
fetchOptions.getCachedData = opts.getCachedData;
|
|
84
|
+
}
|
|
85
|
+
if (opts.refresh !== void 0) {
|
|
86
|
+
fetchOptions.refresh = opts.refresh;
|
|
87
|
+
}
|
|
88
|
+
if (opts.refreshInterval !== void 0) {
|
|
89
|
+
fetchOptions.refreshInterval = opts.refreshInterval;
|
|
90
|
+
}
|
|
91
|
+
if (opts.dedupe !== void 0) {
|
|
92
|
+
fetchOptions.dedupe = opts.dedupe;
|
|
93
|
+
}
|
|
94
|
+
const result = useFetch(finalUrl, fetchOptions);
|
|
95
|
+
return {
|
|
96
|
+
...result,
|
|
97
|
+
loading: result.pending,
|
|
98
|
+
pending: result.pending
|
|
99
|
+
// Keep for backward compatibility
|
|
100
|
+
};
|
|
62
101
|
}
|
|
63
102
|
const data = ref(null);
|
|
64
103
|
const error = ref(null);
|
package/dist/index.d.ts
CHANGED
|
@@ -51,6 +51,28 @@ interface BaseApiOptions<T> {
|
|
|
51
51
|
ssr?: boolean;
|
|
52
52
|
/** Unique key for useFetch caching */
|
|
53
53
|
key?: string;
|
|
54
|
+
/** Whether to fetch on server (default: true) - Only applies when ssr: true */
|
|
55
|
+
server?: boolean;
|
|
56
|
+
/** Don't block navigation (default: false) - Only applies when ssr: true */
|
|
57
|
+
lazy?: boolean;
|
|
58
|
+
/** Execute immediately (default: true) - Only applies when ssr: true */
|
|
59
|
+
immediate?: boolean;
|
|
60
|
+
/** Transform the response data - Only applies when ssr: true */
|
|
61
|
+
transform?: (data: any) => T;
|
|
62
|
+
/** Pick specific fields from response - Only applies when ssr: true */
|
|
63
|
+
pick?: string[];
|
|
64
|
+
/** Watch reactive sources and refetch when they change - Only applies when ssr: true */
|
|
65
|
+
watch?: any[];
|
|
66
|
+
/** Deep watch (default: false) - Only applies when ssr: true */
|
|
67
|
+
deep?: boolean;
|
|
68
|
+
/** Custom cache data retrieval function - Only applies when ssr: true */
|
|
69
|
+
getCachedData?: (key: string) => T | null;
|
|
70
|
+
/** Enable refresh (default: true) - Only applies when ssr: true */
|
|
71
|
+
refresh?: boolean;
|
|
72
|
+
/** Auto refresh interval in milliseconds - Only applies when ssr: true */
|
|
73
|
+
refreshInterval?: number;
|
|
74
|
+
/** Deduplication key - Only applies when ssr: true */
|
|
75
|
+
dedupe?: string;
|
|
54
76
|
}
|
|
55
77
|
interface BatchApiOptions {
|
|
56
78
|
/** Batch size for chunking large operations (default: no limit) - Only available for batch operations */
|
|
@@ -85,11 +107,12 @@ export interface BackendErrorExtended extends BackendError {
|
|
|
85
107
|
}
|
|
86
108
|
import type { Ref } from 'vue';
|
|
87
109
|
import type { AsyncData } from 'nuxt/app';
|
|
88
|
-
export interface UseEnfyraApiSSRReturn<T> extends AsyncData<T | null, ApiError> {
|
|
110
|
+
export interface UseEnfyraApiSSRReturn<T> extends Omit<AsyncData<T | null, ApiError>, 'pending' | 'error'> {
|
|
89
111
|
data: Ref<T | null>;
|
|
90
|
-
|
|
112
|
+
loading: Ref<boolean>;
|
|
91
113
|
error: Ref<ApiError | null>;
|
|
92
114
|
refresh: () => Promise<void>;
|
|
115
|
+
pending?: Ref<boolean>;
|
|
93
116
|
}
|
|
94
117
|
interface BaseExecuteOptions {
|
|
95
118
|
body?: any;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,0CAA0C;IAC1C,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,iDAAiD;IACjD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oCAAoC;IACpC,YAAY,EAAE,MAAM,CAAC;IACrB,8BAA8B;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,+CAA+C;IAC/C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,sDAAsD;IACtD,OAAO,EAAE,KAAK,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,WAAW,GAAG,QAAQ,CAAC;QAC/B,MAAM,CAAC,EAAE,GAAG,CAAC;QACb,KAAK,CAAC,EAAE,QAAQ,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC,CAAC;CACJ;AAED,UAAU,cAAc,CAAC,CAAC;IACxB,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;IACnG,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACtD,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IAClB,iDAAiD;IACjD,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,sCAAsC;IACtC,GAAG,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/types/index.ts"],"names":[],"mappings":"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"}
|
package/dist/module.json
CHANGED
package/package.json
CHANGED
|
@@ -92,14 +92,56 @@ export function useEnfyraApi<T = any>(
|
|
|
92
92
|
},
|
|
93
93
|
};
|
|
94
94
|
|
|
95
|
-
|
|
95
|
+
// Pass all useFetch-specific options
|
|
96
|
+
if (key !== undefined) {
|
|
96
97
|
fetchOptions.key = key;
|
|
97
98
|
}
|
|
98
|
-
if (opts.default) {
|
|
99
|
+
if (opts.default !== undefined) {
|
|
99
100
|
fetchOptions.default = opts.default;
|
|
100
101
|
}
|
|
102
|
+
if (opts.server !== undefined) {
|
|
103
|
+
fetchOptions.server = opts.server;
|
|
104
|
+
}
|
|
105
|
+
if (opts.lazy !== undefined) {
|
|
106
|
+
fetchOptions.lazy = opts.lazy;
|
|
107
|
+
}
|
|
108
|
+
if (opts.immediate !== undefined) {
|
|
109
|
+
fetchOptions.immediate = opts.immediate;
|
|
110
|
+
}
|
|
111
|
+
if (opts.transform !== undefined) {
|
|
112
|
+
fetchOptions.transform = opts.transform;
|
|
113
|
+
}
|
|
114
|
+
if (opts.pick !== undefined) {
|
|
115
|
+
fetchOptions.pick = opts.pick;
|
|
116
|
+
}
|
|
117
|
+
if (opts.watch !== undefined) {
|
|
118
|
+
fetchOptions.watch = opts.watch;
|
|
119
|
+
}
|
|
120
|
+
if (opts.deep !== undefined) {
|
|
121
|
+
fetchOptions.deep = opts.deep;
|
|
122
|
+
}
|
|
123
|
+
if (opts.getCachedData !== undefined) {
|
|
124
|
+
fetchOptions.getCachedData = opts.getCachedData;
|
|
125
|
+
}
|
|
126
|
+
if (opts.refresh !== undefined) {
|
|
127
|
+
fetchOptions.refresh = opts.refresh;
|
|
128
|
+
}
|
|
129
|
+
if (opts.refreshInterval !== undefined) {
|
|
130
|
+
fetchOptions.refreshInterval = opts.refreshInterval;
|
|
131
|
+
}
|
|
132
|
+
if (opts.dedupe !== undefined) {
|
|
133
|
+
fetchOptions.dedupe = opts.dedupe;
|
|
134
|
+
}
|
|
101
135
|
|
|
102
|
-
|
|
136
|
+
const result = useFetch<T>(finalUrl, fetchOptions);
|
|
137
|
+
|
|
138
|
+
// Map pending to loading for better naming
|
|
139
|
+
// useFetch returns AsyncData with 'pending', but UseEnfyraApiSSRReturn uses 'loading'
|
|
140
|
+
return {
|
|
141
|
+
...result,
|
|
142
|
+
loading: result.pending,
|
|
143
|
+
pending: result.pending, // Keep for backward compatibility
|
|
144
|
+
} as UseEnfyraApiSSRReturn<T>;
|
|
103
145
|
}
|
|
104
146
|
const data = ref<T | null>(null);
|
|
105
147
|
const error = ref<ApiError | null>(null);
|
package/src/types/index.ts
CHANGED
|
@@ -54,6 +54,28 @@ interface BaseApiOptions<T> {
|
|
|
54
54
|
ssr?: boolean;
|
|
55
55
|
/** Unique key for useFetch caching */
|
|
56
56
|
key?: string;
|
|
57
|
+
/** Whether to fetch on server (default: true) - Only applies when ssr: true */
|
|
58
|
+
server?: boolean;
|
|
59
|
+
/** Don't block navigation (default: false) - Only applies when ssr: true */
|
|
60
|
+
lazy?: boolean;
|
|
61
|
+
/** Execute immediately (default: true) - Only applies when ssr: true */
|
|
62
|
+
immediate?: boolean;
|
|
63
|
+
/** Transform the response data - Only applies when ssr: true */
|
|
64
|
+
transform?: (data: any) => T;
|
|
65
|
+
/** Pick specific fields from response - Only applies when ssr: true */
|
|
66
|
+
pick?: string[];
|
|
67
|
+
/** Watch reactive sources and refetch when they change - Only applies when ssr: true */
|
|
68
|
+
watch?: any[];
|
|
69
|
+
/** Deep watch (default: false) - Only applies when ssr: true */
|
|
70
|
+
deep?: boolean;
|
|
71
|
+
/** Custom cache data retrieval function - Only applies when ssr: true */
|
|
72
|
+
getCachedData?: (key: string) => T | null;
|
|
73
|
+
/** Enable refresh (default: true) - Only applies when ssr: true */
|
|
74
|
+
refresh?: boolean;
|
|
75
|
+
/** Auto refresh interval in milliseconds - Only applies when ssr: true */
|
|
76
|
+
refreshInterval?: number;
|
|
77
|
+
/** Deduplication key - Only applies when ssr: true */
|
|
78
|
+
dedupe?: string;
|
|
57
79
|
}
|
|
58
80
|
|
|
59
81
|
interface BatchApiOptions {
|
|
@@ -95,11 +117,13 @@ export interface BackendErrorExtended extends BackendError {
|
|
|
95
117
|
import type { Ref } from 'vue';
|
|
96
118
|
import type { AsyncData } from 'nuxt/app';
|
|
97
119
|
|
|
98
|
-
export interface UseEnfyraApiSSRReturn<T> extends AsyncData<T | null, ApiError> {
|
|
120
|
+
export interface UseEnfyraApiSSRReturn<T> extends Omit<AsyncData<T | null, ApiError>, 'pending' | 'error'> {
|
|
99
121
|
data: Ref<T | null>;
|
|
100
|
-
|
|
101
|
-
error: Ref<ApiError | null>;
|
|
122
|
+
loading: Ref<boolean>;
|
|
123
|
+
error: Ref<ApiError | null>; // Use null instead of undefined for consistency
|
|
102
124
|
refresh: () => Promise<void>;
|
|
125
|
+
// Keep pending for backward compatibility, but it's an alias of loading
|
|
126
|
+
pending?: Ref<boolean>;
|
|
103
127
|
}
|
|
104
128
|
|
|
105
129
|
interface BaseExecuteOptions {
|