Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions content/docs/expo/changelog.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,16 @@ description: "Release notes for the Superwall Expo SDK"

# Changelog

## 1.0.5

### Patch Changes

- 49ef4ff: Add `appstackId` integration attribute to `setIntegrationAttributes()` for Appstack integration support.
- 49ef4ff: Fix `setUserAttributes` silently failing when JavaScript attribute values are
`null` by making the bridge value types nullable on iOS and Android, and update
TypeScript signatures to explicitly allow nullable user attribute values.
- 7c53e77: Update Android, add appstack integration id

## 1.0.4

### Patch Changes
Expand Down
2 changes: 1 addition & 1 deletion content/docs/expo/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -47,4 +47,4 @@ If you have feedback on any of our docs, please leave a rating and message at th

If you have any issues please [open an issue on GitHub](https://github.com/superwall/expo-superwall/issues).

<SdkLatestVersion version="v1.0.4" repoUrl="https://github.com/superwall/expo-superwall" />
<SdkLatestVersion version="v1.0.5" repoUrl="https://github.com/superwall/expo-superwall" />
10 changes: 5 additions & 5 deletions content/docs/expo/sdk-reference/hooks/useSuperwall.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -79,8 +79,8 @@ The hook returns an object representing the Superwall store. If a `selector` fun
description: "Preloads paywalls for the specified placements.",
},
setUserAttributes: {
type: "(attrs: Record<string, any>) => Promise<void>",
description: "Sets custom attributes for the current user.",
type: "(attrs: Record<string, any | null>) => Promise<void>",
description: "Sets custom attributes for the current user. Attribute values can be null.",
},
getUserAttributes: {
type: "() => Promise<Record<string, any>>",
Expand All @@ -92,7 +92,7 @@ The hook returns an object representing the Superwall store. If a `selector` fun
},
setIntegrationAttributes: {
type: "(attributes: IntegrationAttributes) => Promise<void>",
description: "Sets third-party integration identifiers.",
description: "Sets third-party integration identifiers, including `appstackId` for Appstack.",
},
getIntegrationAttributes: {
type: "() => Promise<Record<string, string>>",
Expand Down Expand Up @@ -145,8 +145,8 @@ The hook returns an object representing the Superwall store. If a `selector` fun
description: "Seed used for experiment assignment.",
},
"[key: string]": {
type: "any",
description: "Other custom user attributes.",
type: "any | null",
description: "Other custom user attributes. Values may be null.",
},
}}
/>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ The `useSuperwallEvents` hook provides a low-level way to subscribe to _any_ nat
description: "Called when the user's subscription status changes.",
},
onUserAttributesChange: {
type: "(newAttributes: Record<string, any>) => void",
type: "(newAttributes: Record<string, any | null>) => void",
description:
"Called when user attributes change outside your app (for example via the `Set Attribute` paywall action).",
},
Expand Down
8 changes: 4 additions & 4 deletions content/docs/expo/sdk-reference/hooks/useUser.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The `useUser` hook provides a convenient way to manage user identity and attribu
description: "Identifies the user with Superwall.",
},
update: {
type: "(attributes: Record<string, any> | ((old: Record<string, any>) => Record<string, any>)) => Promise<void>",
type: "(attributes: Record<string, any | null> | ((old: Record<string, any | null>) => Record<string, any | null>)) => Promise<void>",
description: "Updates the current user's attributes.",
},
signOut: {
Expand All @@ -28,7 +28,7 @@ The `useUser` hook provides a convenient way to manage user identity and attribu
},
setIntegrationAttributes: {
type: "(attributes: IntegrationAttributes) => Promise<void>",
description: "Sets third-party integration identifiers (Adjust, Amplitude, AppsFlyer, etc.).",
description: "Sets third-party integration identifiers (Adjust, Amplitude, AppsFlyer, Appstack, etc.).",
},
getIntegrationAttributes: {
type: "() => Promise<Record<string, string>>",
Expand Down Expand Up @@ -102,8 +102,8 @@ The `useUser` hook provides a convenient way to manage user identity and attribu
description: "Seed used for experiment assignment.",
},
"[key: string]": {
type: "any",
description: "Other custom user attributes.",
type: "any | null",
description: "Other custom user attributes. Values may be null.",
},
}}
/>
Expand Down
2 changes: 1 addition & 1 deletion content/docs/expo/sdk-reference/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@ If you have feedback on any of our docs, please leave a rating and message at th

If you have any issues with the SDK, please [open an issue on GitHub](https://github.com/superwall/expo-superwall/issues).

<SdkLatestVersion version="v1.0.4" repoUrl="https://github.com/superwall/expo-superwall" />
<SdkLatestVersion version="v1.0.5" repoUrl="https://github.com/superwall/expo-superwall" />