@chipmobilesdk/rn-core 0.0.0 → 0.1.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 +51 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1 +1,52 @@
|
|
|
1
1
|
# @chipmobilesdk/rn-core
|
|
2
|
+
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- First release: the shared foundation of the @chipmobilesdk packages. `SdkError` and
|
|
8
|
+
`isSdkError` give every package one error model (`pkg`, `code`, `retryable`,
|
|
9
|
+
`redactedCause`), recognised across two copies of the package; `defineErrorCodes`
|
|
10
|
+
and `createIssueCollector` declare codes and collect config problems.
|
|
11
|
+
`createRedactor` and its primitives give one redaction mechanism with
|
|
12
|
+
identifier-only and pattern policies. `createListenerSet` and `createEmitter` notify
|
|
13
|
+
subscribers in isolation (a throwing listener is reported, never swallowed, and never
|
|
14
|
+
reaches the notifier), with a bounded dedupe. `installSdkSink` receives every
|
|
15
|
+
package's diagnostics as one `SdkDiagnostic` stream, across copies of the package.
|
|
16
|
+
`redactionConformance`
|
|
17
|
+
(`@chipmobilesdk/rn-core/testing`) checks any redaction entrypoint against a fixed set
|
|
18
|
+
of secrets. ([#17](https://github.com/operationd8979/chip-mobile-sdk/pull/17))
|
|
19
|
+
|
|
20
|
+
- Port conformance suites: one list of checks that a package's fake and its real adapter
|
|
21
|
+
both pass, so a test written against the fake proves something about the device. ([#17](https://github.com/operationd8979/chip-mobile-sdk/pull/17))
|
|
22
|
+
|
|
23
|
+
- rn-core: `@chipmobilesdk/rn-core/testing` adds `runChecks`, `expectConformance`,
|
|
24
|
+
`ensure` and `createFaultRegistry` (deterministic fault injection by named point).
|
|
25
|
+
- rn-camera: a `./testing` entrypoint with `runPermissionPortConformance`,
|
|
26
|
+
`runCameraEngineConformance` and the test adapter, which stays on the main
|
|
27
|
+
entrypoint too until the next major. `createTestCamera(...).prompts()` counts system
|
|
28
|
+
prompts.
|
|
29
|
+
- rn-payment: `runProviderPortConformance` in `./testing`, passed by the fake store and
|
|
30
|
+
the Play adapter.
|
|
31
|
+
- rn-ads: `runAdsEngineConformance` in `./testing`, passed by the fake engine and the
|
|
32
|
+
AdMob adapter.
|
|
33
|
+
- rn-auth: a `./testing` entrypoint with `createMemorySecureStore`,
|
|
34
|
+
`runSecureTokenStoreConformance` and `runOidcAuthClientConformance`, passed by the
|
|
35
|
+
in-memory doubles and the keychain and app-auth adapters.
|
|
36
|
+
|
|
37
|
+
- One app-lifecycle source, and a startup that needs no extra frame. ([#17](https://github.com/operationd8979/chip-mobile-sdk/pull/17))
|
|
38
|
+
|
|
39
|
+
- rn-core: `appLifecycle()`, a shared, reference-counted `AppState` subscription that
|
|
40
|
+
reports changes only (`active`, `inactive`, `background`), with `onForeground` for a
|
|
41
|
+
return from the background and `createManualLifecycle` in `./testing`.
|
|
42
|
+
- rn-camera, rn-ads and rn-notification hear the lifecycle through it instead of
|
|
43
|
+
subscribing to `AppState` each, so an app holds one native listener. The camera
|
|
44
|
+
controller's core layer no longer imports `react-native`.
|
|
45
|
+
- rn-payment: `syncOnForeground(engine)` and `<PaymentProvider syncOnForeground>` call
|
|
46
|
+
`handleForeground()` on each return from the background. Off by default; calling
|
|
47
|
+
`handleForeground()` yourself works as before.
|
|
48
|
+
- rn-i18n: `i18n.initSync()` resolves the locale before the first render when the
|
|
49
|
+
storage adapter has the new optional `getItemSync`, and returns false otherwise.
|
|
50
|
+
`localeStorageFromKeyValue(port)` builds such an adapter from rn-core's
|
|
51
|
+
`KeyValuePort` (MMKV).
|
|
52
|
+
|