Skip to content

Commit 92bb2c7

Browse files
committed
validate on notificationFields
1 parent 56b5e65 commit 92bb2c7

File tree

2 files changed

+4
-17
lines changed

2 files changed

+4
-17
lines changed

src/component/internal.ts

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { internalAction, internalMutation } from "./functions.js";
33
import { internal } from "./_generated/api.js";
44
import { Id } from "./_generated/dataModel.js";
55
import { ensureCoordinator } from "./helpers.js";
6+
import { notificationFields } from "./schema.js";
67

78
export const markNotificationState = internalMutation({
89
args: {
@@ -148,21 +149,17 @@ export const coordinateSendingPushNotifications = internalMutation({
148149
_contentAvailable: n.metadata._contentAvailable ?? undefined,
149150
data: n.metadata.data ?? undefined,
150151
title: n.metadata.title,
151-
subtitle: n.metadata.subtitle ?? undefined,
152152
body: n.metadata.body ?? undefined,
153153
ttl: n.metadata.ttl ?? undefined,
154154
expiration: n.metadata.expiration ?? undefined,
155155
priority: n.metadata.priority ?? undefined,
156-
// subtitle: n.metadata.subtitle ?? undefined,
156+
subtitle: n.metadata.subtitle ?? undefined,
157157
sound: n.metadata.sound ?? "default",
158158
badge: n.metadata.badge ?? undefined,
159159
interruptionLevel: n.metadata.interruptionLevel ?? undefined,
160160
channelId: n.metadata.channelId ?? undefined,
161161
categoryId: n.metadata.categoryId ?? undefined,
162162
mutableContent: n.metadata.mutableContent ?? undefined,
163-
// sound: n.metadata.sound ?? "default",
164-
// data: n.metadata.data ?? undefined,
165-
categoryIdentifier: n.metadata.categoryIdentifier ?? undefined,
166163
},
167164
_id: n._id,
168165
};
@@ -207,13 +204,7 @@ export const action_sendPushNotifications = internalAction({
207204
v.object({
208205
message: v.object({
209206
to: v.string(),
210-
title: v.string(),
211-
subtitle: v.optional(v.string()),
212-
body: v.optional(v.string()),
213-
sound: v.string(),
214-
data: v.optional(v.any()),
215-
channelId: v.optional(v.string()),
216-
categoryIdentifier: v.optional(v.string()),
207+
...notificationFields
217208
}),
218209
_id: v.id("notifications"),
219210
})

src/component/schema.ts

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,17 @@ export const notificationFields = {
77
_contentAvailable: v.optional(v.boolean()),
88
data: v.optional(v.any()),
99
title: v.string(),
10-
subtitle: v.optional(v.string()),
1110
body: v.optional(v.string()),
1211
ttl: v.optional(v.number()),
1312
expiration: v.optional(v.number()),
1413
priority: v.optional(v.union(v.literal("default"), v.literal("normal"), v.literal("high"))),
15-
// subtitle: v.optional(v.string()),
14+
subtitle: v.optional(v.string()),
1615
sound: v.optional(v.union(v.string(), v.null())),
1716
badge: v.optional(v.number()),
1817
interruptionLevel: v.optional(v.union(v.literal("active"), v.literal("critical"), v.literal("passive"), v.literal("time-sensitive"))),
1918
channelId: v.optional(v.string()),
2019
categoryId: v.optional(v.string()),
2120
mutableContent: v.optional(v.boolean()),
22-
// sound: v.optional(v.string()),
23-
// data: v.optional(v.any()),
24-
categoryIdentifier: v.optional(v.string()),
2521
};
2622

2723
/**

0 commit comments

Comments
 (0)