@juspay/shooter 1.9.0 → 1.9.2
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/.claude/hooks/notifier.cjs +9 -2
- package/build/client/_app/immutable/chunks/{BsNWiLas.js → 780RSrro.js} +1 -1
- package/build/client/_app/immutable/chunks/780RSrro.js.br +0 -0
- package/build/client/_app/immutable/chunks/780RSrro.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B-aj0tWo.js +3 -0
- package/build/client/_app/immutable/chunks/B-aj0tWo.js.br +0 -0
- package/build/client/_app/immutable/chunks/B-aj0tWo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BDcFu3l7.js +61 -0
- package/build/client/_app/immutable/chunks/BDcFu3l7.js.br +0 -0
- package/build/client/_app/immutable/chunks/BDcFu3l7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{3EfvnCrr.js → CRkG7oE4.js} +1 -1
- package/build/client/_app/immutable/chunks/CRkG7oE4.js.br +0 -0
- package/build/client/_app/immutable/chunks/CRkG7oE4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{klpn9j-A.js → DjIci1dg.js} +1 -1
- package/build/client/_app/immutable/chunks/DjIci1dg.js.br +0 -0
- package/build/client/_app/immutable/chunks/DjIci1dg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{C2Qh_9aV.js → WigD-5P0.js} +1 -1
- package/build/client/_app/immutable/chunks/WigD-5P0.js.br +0 -0
- package/build/client/_app/immutable/chunks/WigD-5P0.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.Bfisx3a0.js → app.ueUUTVo4.js} +2 -2
- package/build/client/_app/immutable/entry/app.ueUUTVo4.js.br +0 -0
- package/build/client/_app/immutable/entry/app.ueUUTVo4.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CQhGkr1I.js +1 -0
- package/build/client/_app/immutable/entry/start.CQhGkr1I.js.br +2 -0
- package/build/client/_app/immutable/entry/start.CQhGkr1I.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.Vg8bq-s8.js → 0.HapN5UGE.js} +1 -1
- package/build/client/_app/immutable/nodes/0.HapN5UGE.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.HapN5UGE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.B7kXtFIl.js → 1.IBlbkVOD.js} +1 -1
- package/build/client/_app/immutable/nodes/1.IBlbkVOD.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.IBlbkVOD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{2.DVFe_SN2.js → 2.BSGzQPKE.js} +1 -1
- package/build/client/_app/immutable/nodes/2.BSGzQPKE.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BSGzQPKE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{3.Deb3vtJl.js → 3.CVaviSxa.js} +1 -1
- package/build/client/_app/immutable/nodes/3.CVaviSxa.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CVaviSxa.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.BcK1571T.js → 4.DgZG6DiA.js} +1 -1
- package/build/client/_app/immutable/nodes/4.DgZG6DiA.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.DgZG6DiA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BN2SM61w.js → 5.BsPQpbNC.js} +1 -1
- package/build/client/_app/immutable/nodes/5.BsPQpbNC.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BsPQpbNC.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.CS_KYbQ7.js → 6.DqlYBRxO.js} +1 -1
- package/build/client/_app/immutable/nodes/6.DqlYBRxO.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.DqlYBRxO.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.CEiUUm74.js → 7.C-mKfSQ6.js} +1 -1
- package/build/client/_app/immutable/nodes/7.C-mKfSQ6.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.C-mKfSQ6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.DGStHrkF.js → 8.CWs7RaU8.js} +1 -1
- package/build/client/_app/immutable/nodes/8.CWs7RaU8.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.CWs7RaU8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{9.CbIw97FV.js → 9.CjYdYDhF.js} +1 -1
- package/build/client/_app/immutable/nodes/9.CjYdYDhF.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.CjYdYDhF.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-ikRVFZQS.js → 0-D9OfRI2k.js} +3 -3
- package/build/server/chunks/{0-ikRVFZQS.js.map → 0-D9OfRI2k.js.map} +1 -1
- package/build/server/chunks/{1-CG-fUUbt.js → 1-DgGFkvlg.js} +3 -3
- package/build/server/chunks/{1-CG-fUUbt.js.map → 1-DgGFkvlg.js.map} +1 -1
- package/build/server/chunks/{2-BaV1q6GP.js → 2-SWCYKisx.js} +3 -3
- package/build/server/chunks/{2-BaV1q6GP.js.map → 2-SWCYKisx.js.map} +1 -1
- package/build/server/chunks/{3-BpzQzk4m.js → 3-i9IbPZ0L.js} +3 -3
- package/build/server/chunks/{3-BpzQzk4m.js.map → 3-i9IbPZ0L.js.map} +1 -1
- package/build/server/chunks/{4-DXZnoGK3.js → 4-BzsFX_T-.js} +3 -3
- package/build/server/chunks/{4-DXZnoGK3.js.map → 4-BzsFX_T-.js.map} +1 -1
- package/build/server/chunks/{5-DRhcUdp_.js → 5-BnyMNyuy.js} +3 -3
- package/build/server/chunks/{5-DRhcUdp_.js.map → 5-BnyMNyuy.js.map} +1 -1
- package/build/server/chunks/{6-Bx-SE48t.js → 6-BIsh7BZP.js} +3 -3
- package/build/server/chunks/{6-Bx-SE48t.js.map → 6-BIsh7BZP.js.map} +1 -1
- package/build/server/chunks/{7-LeGA4bt3.js → 7-BtO1NV6d.js} +3 -3
- package/build/server/chunks/{7-LeGA4bt3.js.map → 7-BtO1NV6d.js.map} +1 -1
- package/build/server/chunks/{8-CXwtG-B-.js → 8-Cm04OX_8.js} +3 -3
- package/build/server/chunks/{8-CXwtG-B-.js.map → 8-Cm04OX_8.js.map} +1 -1
- package/build/server/chunks/{9-DBztKl9o.js → 9-D1iRD-KU.js} +3 -3
- package/build/server/chunks/{9-DBztKl9o.js.map → 9-D1iRD-KU.js.map} +1 -1
- package/build/server/chunks/{Button-DPcpECFE.js → Button-DVLTQJyD.js} +2 -2
- package/build/server/chunks/{Button-DPcpECFE.js.map → Button-DVLTQJyD.js.map} +1 -1
- package/build/server/chunks/{Icon-C2-613_Z.js → Icon-BXE5-3Zt.js} +3 -3
- package/build/server/chunks/{Icon-C2-613_Z.js.map → Icon-BXE5-3Zt.js.map} +1 -1
- package/build/server/chunks/{Input-M7rFN1IJ.js → Input-CgEj-A6D.js} +2 -2
- package/build/server/chunks/{Input-M7rFN1IJ.js.map → Input-CgEj-A6D.js.map} +1 -1
- package/build/server/chunks/{Pill-CbH1G79Z.js → Pill-CfGbZF-f.js} +3 -3
- package/build/server/chunks/{Pill-CbH1G79Z.js.map → Pill-CfGbZF-f.js.map} +1 -1
- package/build/server/chunks/{Shimmer-BrakrBeG.js → Shimmer-D9TPXvO4.js} +2 -2
- package/build/server/chunks/{Shimmer-BrakrBeG.js.map → Shimmer-D9TPXvO4.js.map} +1 -1
- package/build/server/chunks/{_error.svelte-BfckZRui.js → _error.svelte-DTYKLBYi.js} +8 -8
- package/build/server/chunks/{_error.svelte-BfckZRui.js.map → _error.svelte-DTYKLBYi.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-B6wbenkT.js → _layout.svelte-C0TOcumt.js} +10 -10
- package/build/server/chunks/{_layout.svelte-B6wbenkT.js.map → _layout.svelte-C0TOcumt.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-io210vyT.js → _page.svelte-BDyAukVH.js} +11 -11
- package/build/server/chunks/{_page.svelte-io210vyT.js.map → _page.svelte-BDyAukVH.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DpUVuiqQ.js → _page.svelte-BXZjHaxR.js} +7 -7
- package/build/server/chunks/{_page.svelte-DpUVuiqQ.js.map → _page.svelte-BXZjHaxR.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BRz-x9-s.js → _page.svelte-Cn_oMd4r.js} +9 -9
- package/build/server/chunks/{_page.svelte-BRz-x9-s.js.map → _page.svelte-Cn_oMd4r.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DfZBq0p5.js → _page.svelte-CnavwBE6.js} +5 -5
- package/build/server/chunks/{_page.svelte-DfZBq0p5.js.map → _page.svelte-CnavwBE6.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CwCypx0G.js → _page.svelte-DF8N4KBc.js} +8 -8
- package/build/server/chunks/{_page.svelte-CwCypx0G.js.map → _page.svelte-DF8N4KBc.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CKydRPy6.js → _page.svelte-DWJcHYX2.js} +4 -4
- package/build/server/chunks/{_page.svelte-CKydRPy6.js.map → _page.svelte-DWJcHYX2.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-COFpm-S2.js → _page.svelte-DiHgZ-Qm.js} +11 -11
- package/build/server/chunks/{_page.svelte-COFpm-S2.js.map → _page.svelte-DiHgZ-Qm.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DKdaYz0t.js → _page.svelte-HCIg_ijq.js} +5 -5
- package/build/server/chunks/{_page.svelte-DKdaYz0t.js.map → _page.svelte-HCIg_ijq.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BAPg2K8u.js → _server.ts-BMcbwZ2r.js} +5 -3
- package/build/server/chunks/{_server.ts-BAPg2K8u.js.map → _server.ts-BMcbwZ2r.js.map} +1 -1
- package/build/server/chunks/{_server.ts-9P1PrkiL.js → _server.ts-D-vgx5UZ.js} +5 -3
- package/build/server/chunks/{_server.ts-9P1PrkiL.js.map → _server.ts-D-vgx5UZ.js.map} +1 -1
- package/build/server/chunks/{cache-tQqq4VCX.js → cache-DQLC_4X6.js} +2 -2
- package/build/server/chunks/{cache-tQqq4VCX.js.map → cache-DQLC_4X6.js.map} +1 -1
- package/build/server/chunks/{client-Do_WijF3.js → client-DFS_oze8.js} +4 -4
- package/build/server/chunks/{client-Do_WijF3.js.map → client-DFS_oze8.js.map} +1 -1
- package/build/server/chunks/client2-CuecdIgG.js +7 -0
- package/build/server/chunks/{client2-DQ2fYrJe.js.map → client2-CuecdIgG.js.map} +1 -1
- package/build/server/chunks/{index-BHoOpAe1.js → index-Ce_T9BSa.js} +118 -51
- package/build/server/chunks/index-Ce_T9BSa.js.map +1 -0
- package/build/server/chunks/index-CoD1IJuy.js.map +1 -1
- package/build/server/chunks/{index-server-BVf8_1QW.js → index-server-DuadcihK.js} +2 -2
- package/build/server/chunks/{index-server-BVf8_1QW.js.map → index-server-DuadcihK.js.map} +1 -1
- package/build/server/chunks/{index2-CKh4I94n.js → index2-3-jnyNZ0.js} +2 -2
- package/build/server/chunks/{index2-CKh4I94n.js.map → index2-3-jnyNZ0.js.map} +1 -1
- package/build/server/chunks/library-apns-Dl3iRE2h.js +157 -0
- package/build/server/chunks/library-apns-Dl3iRE2h.js.map +1 -0
- package/build/server/chunks/{root-CW7Ox2wn.js → root-CodmFd7L.js} +2 -2
- package/build/server/chunks/{root-CW7Ox2wn.js.map → root-CodmFd7L.js.map} +1 -1
- package/build/server/chunks/{state.svelte-Cg5VK5nH.js → state.svelte-BJz4uYyw.js} +3 -3
- package/build/server/chunks/{state.svelte-Cg5VK5nH.js.map → state.svelte-BJz4uYyw.js.map} +1 -1
- package/build/server/chunks/{stores-D6TajUdj.js → stores-fLftuVrV.js} +4 -4
- package/build/server/chunks/{stores-D6TajUdj.js.map → stores-fLftuVrV.js.map} +1 -1
- package/build/server/index.js +88 -123
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +13 -13
- package/build/server/manifest.js.map +1 -1
- package/package.json +9 -5
- package/src/lib/modules/server/apn/library-apns.ts +138 -78
- package/src/lib/types/apn.ts +10 -0
- package/build/client/_app/immutable/chunks/3EfvnCrr.js.br +0 -0
- package/build/client/_app/immutable/chunks/3EfvnCrr.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BCwT4WOg.js +0 -60
- package/build/client/_app/immutable/chunks/BCwT4WOg.js.br +0 -0
- package/build/client/_app/immutable/chunks/BCwT4WOg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsNWiLas.js.br +0 -0
- package/build/client/_app/immutable/chunks/BsNWiLas.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C2Qh_9aV.js.br +0 -0
- package/build/client/_app/immutable/chunks/C2Qh_9aV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C2yx8lo8.js +0 -3
- package/build/client/_app/immutable/chunks/C2yx8lo8.js.br +0 -0
- package/build/client/_app/immutable/chunks/C2yx8lo8.js.gz +0 -0
- package/build/client/_app/immutable/chunks/klpn9j-A.js.br +0 -0
- package/build/client/_app/immutable/chunks/klpn9j-A.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.Bfisx3a0.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Bfisx3a0.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BfgeeQYG.js +0 -1
- package/build/client/_app/immutable/entry/start.BfgeeQYG.js.br +0 -2
- package/build/client/_app/immutable/entry/start.BfgeeQYG.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.Vg8bq-s8.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.Vg8bq-s8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B7kXtFIl.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.B7kXtFIl.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.DVFe_SN2.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.DVFe_SN2.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.Deb3vtJl.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.Deb3vtJl.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.BcK1571T.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BcK1571T.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BN2SM61w.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BN2SM61w.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CS_KYbQ7.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CS_KYbQ7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.CEiUUm74.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.CEiUUm74.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.DGStHrkF.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DGStHrkF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.CbIw97FV.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.CbIw97FV.js.gz +0 -0
- package/build/server/chunks/client2-DQ2fYrJe.js +0 -7
- package/build/server/chunks/index-BHoOpAe1.js.map +0 -1
- package/build/server/chunks/library-apns-CUDtjHQk.js +0 -108
- package/build/server/chunks/library-apns-CUDtjHQk.js.map +0 -1
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { b as private_env } from './shared-server-DaWdgxVh.js';
|
|
2
|
-
import apn from '@parse/node-apn';
|
|
3
|
-
import { t as toErrorMessage } from './error-DDXB3duW.js';
|
|
4
|
-
|
|
5
|
-
class LibraryAPNsService {
|
|
6
|
-
bundleId;
|
|
7
|
-
configured = false;
|
|
8
|
-
keyId;
|
|
9
|
-
privateKey;
|
|
10
|
-
provider = null;
|
|
11
|
-
teamId;
|
|
12
|
-
constructor() {
|
|
13
|
-
this.keyId = private_env.APNS_KEY_ID;
|
|
14
|
-
this.teamId = private_env.APNS_TEAM_ID;
|
|
15
|
-
this.bundleId = private_env.APNS_BUNDLE_ID;
|
|
16
|
-
this.privateKey = private_env.APNS_KEY;
|
|
17
|
-
if (!this.keyId || !this.teamId || !this.bundleId || !this.privateKey) {
|
|
18
|
-
console.error(
|
|
19
|
-
"[apns] Missing required configuration (APNS_KEY_ID, APNS_TEAM_ID, APNS_BUNDLE_ID, or APNS_KEY)"
|
|
20
|
-
);
|
|
21
|
-
this.configured = false;
|
|
22
|
-
return;
|
|
23
|
-
}
|
|
24
|
-
const production = private_env.APNS_PRODUCTION === "true";
|
|
25
|
-
const options = {
|
|
26
|
-
production,
|
|
27
|
-
token: {
|
|
28
|
-
key: this.privateKey,
|
|
29
|
-
keyId: this.keyId,
|
|
30
|
-
teamId: this.teamId
|
|
31
|
-
}
|
|
32
|
-
};
|
|
33
|
-
try {
|
|
34
|
-
this.provider = new apn.Provider(options);
|
|
35
|
-
this.configured = true;
|
|
36
|
-
console.log(`[apns] Provider initialized (${production ? "production" : "sandbox"} mode)`);
|
|
37
|
-
} catch (error) {
|
|
38
|
-
console.error("[apns] Failed to create provider:", toErrorMessage(error));
|
|
39
|
-
this.configured = false;
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
isConfigured() {
|
|
43
|
-
return this.configured;
|
|
44
|
-
}
|
|
45
|
-
async sendNotification(deviceToken, payload) {
|
|
46
|
-
if (!this.configured || !this.provider) {
|
|
47
|
-
throw new Error("APNs service not configured properly");
|
|
48
|
-
}
|
|
49
|
-
if (!deviceToken || !payload) {
|
|
50
|
-
throw new Error("Device token and payload are required");
|
|
51
|
-
}
|
|
52
|
-
const notification = new apn.Notification();
|
|
53
|
-
notification.alert = {
|
|
54
|
-
body: payload.body ?? payload.message ?? "",
|
|
55
|
-
title: payload.title,
|
|
56
|
-
...payload.subtitle ? { subtitle: payload.subtitle } : {}
|
|
57
|
-
};
|
|
58
|
-
notification.badge = payload.badge ?? 1;
|
|
59
|
-
notification.sound = payload.sound ?? "default";
|
|
60
|
-
if (!this.bundleId) {
|
|
61
|
-
throw new Error("APNs bundleId is required but was not configured");
|
|
62
|
-
}
|
|
63
|
-
notification.topic = this.bundleId;
|
|
64
|
-
if (payload.category) {
|
|
65
|
-
notification.aps.category = payload.category;
|
|
66
|
-
}
|
|
67
|
-
if (payload.data) {
|
|
68
|
-
notification.payload = payload.data;
|
|
69
|
-
}
|
|
70
|
-
const result = await this.provider.send(notification, deviceToken);
|
|
71
|
-
if (result.failed && result.failed.length > 0) {
|
|
72
|
-
console.error(`[apns] Full failed result: ${JSON.stringify(result.failed[0])}`);
|
|
73
|
-
const failedItem = result.failed[0];
|
|
74
|
-
const rawReason = failedItem?.response?.reason ?? failedItem?.status ?? failedItem?.error;
|
|
75
|
-
const reason = typeof rawReason === "string" ? rawReason : JSON.stringify(rawReason ?? failedItem);
|
|
76
|
-
console.error(`[apns] Delivery failed: ${reason}`);
|
|
77
|
-
return {
|
|
78
|
-
error: reason,
|
|
79
|
-
failed: result.failed?.length || 0,
|
|
80
|
-
sent: result.sent?.length || 0,
|
|
81
|
-
success: false
|
|
82
|
-
};
|
|
83
|
-
}
|
|
84
|
-
if (result.sent && result.sent.length > 0) {
|
|
85
|
-
return {
|
|
86
|
-
details: result.sent,
|
|
87
|
-
failed: 0,
|
|
88
|
-
sent: result.sent.length,
|
|
89
|
-
success: true
|
|
90
|
-
};
|
|
91
|
-
}
|
|
92
|
-
return {
|
|
93
|
-
details: [result],
|
|
94
|
-
error: "Unexpected result format",
|
|
95
|
-
failed: 1,
|
|
96
|
-
sent: 0,
|
|
97
|
-
success: false
|
|
98
|
-
};
|
|
99
|
-
}
|
|
100
|
-
shutdown() {
|
|
101
|
-
if (this.provider) {
|
|
102
|
-
void this.provider.shutdown();
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export { LibraryAPNsService as L };
|
|
108
|
-
//# sourceMappingURL=library-apns-CUDtjHQk.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"library-apns-CUDtjHQk.js","sources":["../../../.svelte-kit/adapter-node/chunks/library-apns.js"],"sourcesContent":["import { b as private_env } from \"./shared-server.js\";\nimport apn from \"@parse/node-apn\";\nimport { t as toErrorMessage } from \"./error.js\";\nclass LibraryAPNsService {\n bundleId;\n configured = false;\n keyId;\n privateKey;\n provider = null;\n teamId;\n constructor() {\n this.keyId = private_env.APNS_KEY_ID;\n this.teamId = private_env.APNS_TEAM_ID;\n this.bundleId = private_env.APNS_BUNDLE_ID;\n this.privateKey = private_env.APNS_KEY;\n if (!this.keyId || !this.teamId || !this.bundleId || !this.privateKey) {\n console.error(\n \"[apns] Missing required configuration (APNS_KEY_ID, APNS_TEAM_ID, APNS_BUNDLE_ID, or APNS_KEY)\"\n );\n this.configured = false;\n return;\n }\n const production = private_env.APNS_PRODUCTION === \"true\";\n const options = {\n production,\n token: {\n key: this.privateKey,\n keyId: this.keyId,\n teamId: this.teamId\n }\n };\n try {\n this.provider = new apn.Provider(options);\n this.configured = true;\n console.log(`[apns] Provider initialized (${production ? \"production\" : \"sandbox\"} mode)`);\n } catch (error) {\n console.error(\"[apns] Failed to create provider:\", toErrorMessage(error));\n this.configured = false;\n }\n }\n isConfigured() {\n return this.configured;\n }\n async sendNotification(deviceToken, payload) {\n if (!this.configured || !this.provider) {\n throw new Error(\"APNs service not configured properly\");\n }\n if (!deviceToken || !payload) {\n throw new Error(\"Device token and payload are required\");\n }\n const notification = new apn.Notification();\n notification.alert = {\n body: payload.body ?? payload.message ?? \"\",\n title: payload.title,\n ...payload.subtitle ? { subtitle: payload.subtitle } : {}\n };\n notification.badge = payload.badge ?? 1;\n notification.sound = payload.sound ?? \"default\";\n if (!this.bundleId) {\n throw new Error(\"APNs bundleId is required but was not configured\");\n }\n notification.topic = this.bundleId;\n if (payload.category) {\n notification.aps.category = payload.category;\n }\n if (payload.data) {\n notification.payload = payload.data;\n }\n const result = await this.provider.send(notification, deviceToken);\n if (result.failed && result.failed.length > 0) {\n console.error(`[apns] Full failed result: ${JSON.stringify(result.failed[0])}`);\n const failedItem = result.failed[0];\n const rawReason = failedItem?.response?.reason ?? failedItem?.status ?? failedItem?.error;\n const reason = typeof rawReason === \"string\" ? rawReason : JSON.stringify(rawReason ?? failedItem);\n console.error(`[apns] Delivery failed: ${reason}`);\n return {\n error: reason,\n failed: result.failed?.length || 0,\n sent: result.sent?.length || 0,\n success: false\n };\n }\n if (result.sent && result.sent.length > 0) {\n return {\n details: result.sent,\n failed: 0,\n sent: result.sent.length,\n success: true\n };\n }\n return {\n details: [result],\n error: \"Unexpected result format\",\n failed: 1,\n sent: 0,\n success: false\n };\n }\n shutdown() {\n if (this.provider) {\n void this.provider.shutdown();\n }\n }\n}\nexport {\n LibraryAPNsService as L\n};\n"],"names":[],"mappings":"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"}
|