connectbase-client 5.12.6 → 5.13.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.
- package/CHANGELOG.md +29 -0
- package/dist/connect-base.umd.js +4 -4
- package/dist/index.d.mts +84 -0
- package/dist/index.d.ts +84 -0
- package/dist/index.js +220 -47
- package/dist/index.mjs +220 -47
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,35 @@
|
|
|
3
3
|
본 SDK 의 모든 주요 변경사항을 [Keep a Changelog](https://keepachangelog.com/ko/1.1.0/) 형식으로 기록합니다.
|
|
4
4
|
버전은 [Semantic Versioning](https://semver.org/lang/ko/) 을 따릅니다.
|
|
5
5
|
|
|
6
|
+
## [5.13.0] - 2026-08-13
|
|
7
|
+
|
|
8
|
+
### Added — 패키징 앱 네이티브 브릿지: OAuth 인앱 브라우저 로그인 + 데스크톱 창 제어/CPU/클립보드 `has` 노출
|
|
9
|
+
|
|
10
|
+
React Native 셸(`App.tsx.tmpl`)은 `window.NativeBridge.oauth`(네이티브 인앱 브라우저 세션 OAuth,
|
|
11
|
+
`WebBrowser.openAuthSessionAsync` 기반)를 이미 구현하고 있었지만 SDK 가 전혀 노출하지 않아
|
|
12
|
+
완전히 죽은 기능이었습니다. `cb.native.oauth.signIn(authUrl, callbackScheme?)` /
|
|
13
|
+
`cb.native.oauth.getCallbackScheme()` 로 신규 노출했습니다 (모바일 전용, 웹/데스크톱은 null).
|
|
14
|
+
|
|
15
|
+
Electron 프리로드(`preload.js.tmpl`)도 창 크기/위치 제어(`setSize`/`getSize`/`setPosition`/
|
|
16
|
+
`getPosition`/`center`/`setAlwaysOnTop`/`isFullScreen`), `system.getCPU`, `clipboard.has` 를
|
|
17
|
+
이미 구현하고 있었는데 `NativeAPI` 편의 래퍼가 없어 `cb.native.bridge.*` 원시 접근으로만 쓸 수
|
|
18
|
+
있었습니다. `cb.native.window.*`/`cb.native.system.getCPU()`/`cb.native.clipboard.has()` 로
|
|
19
|
+
정식 노출했습니다.
|
|
20
|
+
|
|
21
|
+
### Fixed — 패키징 앱에서 취소/실패가 "정상적인 빈 값"이 아니라 처리되지 않은 예외로 튀던 문제
|
|
22
|
+
|
|
23
|
+
React Native 브릿지는 실패(취소 포함) 시 프라미스를 reject 하고, Electron 브릿지는 항상
|
|
24
|
+
`{success: false, error}` 로 resolve 합니다. `camera.takePicture`/`pickImage`,
|
|
25
|
+
`push.getToken`/`scheduleLocal`/`setBadgeCount`, `shell.openExternal`(모바일),
|
|
26
|
+
`admob.showInterstitial`/`showRewarded`, `filesystem.readFile`/`saveFile`,
|
|
27
|
+
`notification.requestPermission`, `secureStore.setItem`/`getItem`/`deleteItem`(Expo
|
|
28
|
+
SecureStore 는 값이 2048바이트를 넘으면 실제로 throw 함), `biometric.isAvailable`/
|
|
29
|
+
`authenticate` 이 이 비대칭을 그대로 흘려보내, RN 패키징 앱에서는
|
|
30
|
+
"사용자가 사진 촬영을 취소함"·"광고가 로드되지 않음" 같은 정상적인 경우에도 `try/catch`
|
|
31
|
+
없는 호출부가 처리되지 않은 예외로 죽었습니다(문서화된 반환 타입은 `null`/`false` 인데 실제로는
|
|
32
|
+
throw). 각 메서드에서 브릿지 호출을 감싸 두 플랫폼 모두 문서화된 반환 계약대로 동작하도록
|
|
33
|
+
정규화했습니다.
|
|
34
|
+
|
|
6
35
|
## [5.12.6] - 2026-08-09
|
|
7
36
|
|
|
8
37
|
### Fixed — `VoiceChannel` 타입에 실재하지 않는 `webrtc_room_id` 필드가 있어 `cb.webrtc.connect()` 체이닝이 항상 실패하던 문제
|