Skip to content

시작하기 ​

@devercorp/pickgola-sdk는 픽골라 서비스들이 함께 쓰는 패키지입니다.

  • 공통 타입: Account, Service, ServiceRole 등 (pickgola-api의 OpenAPI 문서에서 생성)
  • API 클라이언트: createClient()
  • 통합 로그인 도우미: getMe(), redirectToLogin(), logout(), isAllowedReturnTo()
  • 서비스 주소: resolveUrls(), PRODUCTION_URLS, LOCAL_URLS

설치 ​

패키지는 GitHub Packages에 배포됩니다. 프로젝트 루트의 .npmrc에 아래를 추가하고, read:packages 권한이 있는 토큰을 NODE_AUTH_TOKEN 환경 변수로 넣습니다.

ini
@devercorp:registry=https://npm.pkg.github.com
//npm.pkg.github.com/:_authToken=${NODE_AUTH_TOKEN}
bash
npm install @devercorp/pickgola-sdk

로컬 개발 (배포 전) ​

저장소들을 같은 폴더(Documents/GitHub)에 나란히 두고 경로로 연결합니다. 먼저 SDK를 빌드해야 합니다.

bash
cd pickgola-sdk && npm install && npm run build
json
// 사용하는 앱의 package.json
"@devercorp/pickgola-sdk": "file:../pickgola-sdk/packages/sdk"

앱의 .npmrc에 install-links=true를 두면 심볼릭 링크 대신 복사본으로 설치되어 React 등 의존성이 중복되지 않습니다. SDK를 고친 뒤에는 SDK를 다시 빌드하고 앱에서 npm install을 다시 실행하세요.

첫 요청 ​

ts
import { createClient, getMe, resolveUrls } from '@devercorp/pickgola-sdk';

const urls = resolveUrls();
const client = createClient({ baseUrl: urls.api });

const me = await getMe(client); // 로그인하지 않았으면 null