@ph-cms/client-sdk 0.1.28 → 0.1.30
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 +7 -3
- package/dist/client.js +1 -0
- package/dist/hooks/useUser.d.ts +10 -0
- package/dist/hooks/useUser.js +13 -1
- package/dist/modules/user.d.ts +7 -1
- package/dist/modules/user.js +8 -0
- package/dist/types.d.ts +1 -1
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -221,12 +221,16 @@ import { PHCMSClient } from '@ph-cms/client-sdk/core';
|
|
|
221
221
|
|
|
222
222
|
// Next.js Server Component 또는 API Route 예시
|
|
223
223
|
export async function getServerSideProps({ req }) {
|
|
224
|
-
|
|
224
|
+
// .env 등에 설정된 프리픽스를 가져옵니다 (기본값 phcms_)
|
|
225
|
+
const prefix = process.env.NEXT_PUBLIC_PH_CMS_AUTH_STORAGE_PREFIX || "phcms_";
|
|
226
|
+
|
|
227
|
+
const accessToken = req.cookies[`${prefix}access_token`];
|
|
228
|
+
const refreshToken = req.cookies[`${prefix}refresh_token`];
|
|
225
229
|
|
|
226
230
|
const client = new PHCMSClient({
|
|
227
231
|
baseURL: process.env.API_URL,
|
|
228
|
-
accessToken
|
|
229
|
-
refreshToken
|
|
232
|
+
accessToken, // 쿠키에서 뽑은 토큰 주입
|
|
233
|
+
refreshToken,
|
|
230
234
|
});
|
|
231
235
|
|
|
232
236
|
// 이제 이 호출은 인증된 상태(Bearer 헤더 포함)로 서버에서 실행됩니다.
|
package/dist/client.js
CHANGED
package/dist/hooks/useUser.d.ts
CHANGED
|
@@ -43,6 +43,16 @@ export declare const useUser: () => {
|
|
|
43
43
|
isAuthenticated: boolean;
|
|
44
44
|
error: boolean;
|
|
45
45
|
};
|
|
46
|
+
/**
|
|
47
|
+
* Hook to fetch a user's public profile.
|
|
48
|
+
*/
|
|
49
|
+
export declare const useUserProfile: (uid: string) => import("@tanstack/react-query").UseQueryResult<{
|
|
50
|
+
uid: string;
|
|
51
|
+
username: string | null;
|
|
52
|
+
display_name: string;
|
|
53
|
+
avatar_url: string | null;
|
|
54
|
+
profile_data: Record<string, any>;
|
|
55
|
+
}, Error>;
|
|
46
56
|
/**
|
|
47
57
|
* Hook to update a user's profile.
|
|
48
58
|
* Typically used by a user to update their own profile.
|
package/dist/hooks/useUser.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useAgreeTerms = exports.useChannelTerms = exports.useUpdateProfile = exports.useUser = exports.termsKeys = void 0;
|
|
3
|
+
exports.useAgreeTerms = exports.useChannelTerms = exports.useUpdateProfile = exports.useUserProfile = exports.useUser = exports.termsKeys = void 0;
|
|
4
4
|
const react_query_1 = require("@tanstack/react-query");
|
|
5
5
|
const context_1 = require("../context");
|
|
6
6
|
exports.termsKeys = {
|
|
@@ -15,6 +15,18 @@ const useUser = () => {
|
|
|
15
15
|
return { data: user, isLoading, isAuthenticated, error: isError };
|
|
16
16
|
};
|
|
17
17
|
exports.useUser = useUser;
|
|
18
|
+
/**
|
|
19
|
+
* Hook to fetch a user's public profile.
|
|
20
|
+
*/
|
|
21
|
+
const useUserProfile = (uid) => {
|
|
22
|
+
const client = (0, context_1.usePHCMS)();
|
|
23
|
+
return (0, react_query_1.useQuery)({
|
|
24
|
+
queryKey: ['user-profile', uid],
|
|
25
|
+
queryFn: () => client.user.getProfile(uid),
|
|
26
|
+
enabled: !!uid,
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
exports.useUserProfile = useUserProfile;
|
|
18
30
|
/**
|
|
19
31
|
* Hook to update a user's profile.
|
|
20
32
|
* Typically used by a user to update their own profile.
|
package/dist/modules/user.d.ts
CHANGED
|
@@ -1,9 +1,15 @@
|
|
|
1
|
-
import { UpdateUserProfileRequest, UserDto } from "@ph-cms/api-contract";
|
|
1
|
+
import { UpdateUserProfileRequest, UserDto, UserProfileDto } from "@ph-cms/api-contract";
|
|
2
2
|
import { AxiosInstance } from "axios";
|
|
3
3
|
export declare class UserModule {
|
|
4
4
|
private client;
|
|
5
5
|
private prefix;
|
|
6
6
|
constructor(client: AxiosInstance, prefix?: string);
|
|
7
|
+
/**
|
|
8
|
+
* Retrieves a user's public profile.
|
|
9
|
+
*
|
|
10
|
+
* @param uid - The UID of the user.
|
|
11
|
+
*/
|
|
12
|
+
getProfile(uid: string): Promise<UserProfileDto>;
|
|
7
13
|
/**
|
|
8
14
|
* Updates a user's profile.
|
|
9
15
|
*
|
package/dist/modules/user.js
CHANGED
|
@@ -6,6 +6,14 @@ class UserModule {
|
|
|
6
6
|
this.client = client;
|
|
7
7
|
this.prefix = prefix;
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* Retrieves a user's public profile.
|
|
11
|
+
*
|
|
12
|
+
* @param uid - The UID of the user.
|
|
13
|
+
*/
|
|
14
|
+
async getProfile(uid) {
|
|
15
|
+
return this.client.get(`${this.prefix}/users/${uid}/profile`);
|
|
16
|
+
}
|
|
9
17
|
/**
|
|
10
18
|
* Updates a user's profile.
|
|
11
19
|
*
|
package/dist/types.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ export type { AuthStatus, PHCMSContextType, PHCMSProviderProps } from './context
|
|
|
5
5
|
export type { FirebaseAuthSyncProps, UseFirebaseAuthSyncOptions, UseFirebaseAuthSyncReturn } from './hooks/useFirebaseAuthSync';
|
|
6
6
|
export type { StampAvailability, CheckStampAvailabilityParams } from './hooks/useStampTour';
|
|
7
7
|
export type { AuthResponse, FirebaseExchangeRequest, LoginRequest, RefreshTokenRequest, RegisterRequest } from '@ph-cms/api-contract';
|
|
8
|
-
export type { UserDto } from '@ph-cms/api-contract';
|
|
8
|
+
export type { UserDto, UserProfileDto } from '@ph-cms/api-contract';
|
|
9
9
|
export type { ChannelDto, CheckHierarchyQuery } from '@ph-cms/api-contract';
|
|
10
10
|
export type { ContentDto, ContentStatDto, ContentMediaDto, CreateContentRequest, ListContentQuery, PagedContentListResponse, UpdateContentRequest } from '@ph-cms/api-contract';
|
|
11
11
|
export type { HierarchySetDto } from '@ph-cms/api-contract';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ph-cms/client-sdk",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.30",
|
|
4
4
|
"description": "Unified PH-CMS Client SDK (React + Core)",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "MIT",
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
"LICENSE"
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@ph-cms/api-contract": "^0.1.
|
|
33
|
+
"@ph-cms/api-contract": "^0.1.11",
|
|
34
34
|
"@tanstack/react-query": "^5.0.0",
|
|
35
35
|
"axios": "^1.6.0",
|
|
36
36
|
"zod": "^3.22.4"
|