easy-ping 0.10.2 → 0.10.3

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.
Files changed (130) hide show
  1. package/README.md +8 -3
  2. package/dist/adapters/drizzle.cjs +0 -2
  3. package/dist/adapters/drizzle.js +3 -5
  4. package/dist/adapters/mongodb.cjs +0 -2
  5. package/dist/adapters/mongodb.js +4 -6
  6. package/dist/adapters/mysql.cjs +0 -2
  7. package/dist/adapters/mysql.js +6 -8
  8. package/dist/adapters/postgres.cjs +0 -2
  9. package/dist/adapters/postgres.js +8 -10
  10. package/dist/adapters/sqlite.cjs +0 -2
  11. package/dist/adapters/sqlite.js +6 -8
  12. package/dist/browser.cjs +0 -2
  13. package/dist/browser.js +0 -2
  14. package/dist/{chunk-JKTMUMQK.js → chunk-2UOEAG6H.js} +1 -3
  15. package/dist/{chunk-R3BE67L7.js → chunk-74KSKP6B.js} +0 -2
  16. package/dist/{chunk-O2PBBL5X.js → chunk-7C4K5WKW.js} +1 -3
  17. package/dist/{chunk-CK5UPVYP.js → chunk-CRSGL5SG.js} +0 -2
  18. package/dist/{chunk-PTGHMCCG.js → chunk-D3UX3WWD.js} +0 -2
  19. package/dist/{chunk-CMWOIYVQ.js → chunk-EN3NMHSI.js} +4 -6
  20. package/dist/{chunk-ORZKH224.js → chunk-G32BYQAT.js} +0 -2
  21. package/dist/{chunk-A4HX5YTG.js → chunk-IXXPJMYS.js} +3 -5
  22. package/dist/{chunk-CFLVAF2R.js → chunk-JDR3U7X4.js} +2 -4
  23. package/dist/{chunk-AEYYTE5I.js → chunk-JRZ2U4IT.js} +0 -2
  24. package/dist/{chunk-UM2L26PV.js → chunk-KOS3YZMZ.js} +1 -3
  25. package/dist/{chunk-HSB5T3LD.js → chunk-OKIQ5BEV.js} +1 -3
  26. package/dist/{chunk-JN3UCQBP.js → chunk-SZWEW3WN.js} +0 -2
  27. package/dist/{chunk-SSHVZHSJ.js → chunk-VA4W4UFI.js} +0 -2
  28. package/dist/client.cjs +0 -2
  29. package/dist/client.js +0 -2
  30. package/dist/index.cjs +0 -2
  31. package/dist/index.js +12 -14
  32. package/dist/node.cjs +0 -2
  33. package/dist/node.js +3 -5
  34. package/dist/plugins/digests.cjs +0 -2
  35. package/dist/plugins/digests.js +1 -3
  36. package/dist/plugins/mobile-push.cjs +0 -2
  37. package/dist/plugins/mobile-push.js +3 -5
  38. package/dist/plugins/preferences-client.cjs +0 -2
  39. package/dist/plugins/preferences-client.js +1 -3
  40. package/dist/plugins/preferences-react.cjs +0 -1
  41. package/dist/plugins/preferences-react.js +0 -1
  42. package/dist/plugins/preferences.cjs +0 -2
  43. package/dist/plugins/preferences.js +3 -5
  44. package/dist/plugins/push.cjs +0 -2
  45. package/dist/plugins/push.js +4 -6
  46. package/dist/plugins/telegram.cjs +0 -2
  47. package/dist/plugins/telegram.js +5 -7
  48. package/dist/providers/expo-push.cjs +0 -2
  49. package/dist/providers/expo-push.js +0 -2
  50. package/dist/providers/resend.cjs +0 -2
  51. package/dist/providers/resend.js +0 -2
  52. package/dist/providers/telegram.cjs +0 -2
  53. package/dist/providers/telegram.js +1 -3
  54. package/dist/providers/web-push.cjs +0 -2
  55. package/dist/providers/web-push.js +1 -3
  56. package/dist/react-native.cjs +0 -1
  57. package/dist/react-native.js +0 -1
  58. package/dist/react.cjs +0 -1
  59. package/dist/react.js +0 -1
  60. package/dist/schema.cjs +0 -2
  61. package/dist/schema.js +4 -6
  62. package/dist/sw.cjs +0 -2
  63. package/dist/sw.js +0 -2
  64. package/dist/testing.cjs +0 -2
  65. package/dist/testing.js +0 -2
  66. package/package.json +3 -3
  67. package/dist/adapters/drizzle.cjs.map +0 -1
  68. package/dist/adapters/drizzle.js.map +0 -1
  69. package/dist/adapters/mongodb.cjs.map +0 -1
  70. package/dist/adapters/mongodb.js.map +0 -1
  71. package/dist/adapters/mysql.cjs.map +0 -1
  72. package/dist/adapters/mysql.js.map +0 -1
  73. package/dist/adapters/postgres.cjs.map +0 -1
  74. package/dist/adapters/postgres.js.map +0 -1
  75. package/dist/adapters/sqlite.cjs.map +0 -1
  76. package/dist/adapters/sqlite.js.map +0 -1
  77. package/dist/browser.cjs.map +0 -1
  78. package/dist/browser.js.map +0 -1
  79. package/dist/chunk-A4HX5YTG.js.map +0 -1
  80. package/dist/chunk-AEYYTE5I.js.map +0 -1
  81. package/dist/chunk-CFLVAF2R.js.map +0 -1
  82. package/dist/chunk-CK5UPVYP.js.map +0 -1
  83. package/dist/chunk-CMWOIYVQ.js.map +0 -1
  84. package/dist/chunk-HSB5T3LD.js.map +0 -1
  85. package/dist/chunk-JKTMUMQK.js.map +0 -1
  86. package/dist/chunk-JN3UCQBP.js.map +0 -1
  87. package/dist/chunk-O2PBBL5X.js.map +0 -1
  88. package/dist/chunk-ORZKH224.js.map +0 -1
  89. package/dist/chunk-PTGHMCCG.js.map +0 -1
  90. package/dist/chunk-R3BE67L7.js.map +0 -1
  91. package/dist/chunk-SSHVZHSJ.js.map +0 -1
  92. package/dist/chunk-UM2L26PV.js.map +0 -1
  93. package/dist/client.cjs.map +0 -1
  94. package/dist/client.js.map +0 -1
  95. package/dist/index.cjs.map +0 -1
  96. package/dist/index.js.map +0 -1
  97. package/dist/node.cjs.map +0 -1
  98. package/dist/node.js.map +0 -1
  99. package/dist/plugins/digests.cjs.map +0 -1
  100. package/dist/plugins/digests.js.map +0 -1
  101. package/dist/plugins/mobile-push.cjs.map +0 -1
  102. package/dist/plugins/mobile-push.js.map +0 -1
  103. package/dist/plugins/preferences-client.cjs.map +0 -1
  104. package/dist/plugins/preferences-client.js.map +0 -1
  105. package/dist/plugins/preferences-react.cjs.map +0 -1
  106. package/dist/plugins/preferences-react.js.map +0 -1
  107. package/dist/plugins/preferences.cjs.map +0 -1
  108. package/dist/plugins/preferences.js.map +0 -1
  109. package/dist/plugins/push.cjs.map +0 -1
  110. package/dist/plugins/push.js.map +0 -1
  111. package/dist/plugins/telegram.cjs.map +0 -1
  112. package/dist/plugins/telegram.js.map +0 -1
  113. package/dist/providers/expo-push.cjs.map +0 -1
  114. package/dist/providers/expo-push.js.map +0 -1
  115. package/dist/providers/resend.cjs.map +0 -1
  116. package/dist/providers/resend.js.map +0 -1
  117. package/dist/providers/telegram.cjs.map +0 -1
  118. package/dist/providers/telegram.js.map +0 -1
  119. package/dist/providers/web-push.cjs.map +0 -1
  120. package/dist/providers/web-push.js.map +0 -1
  121. package/dist/react-native.cjs.map +0 -1
  122. package/dist/react-native.js.map +0 -1
  123. package/dist/react.cjs.map +0 -1
  124. package/dist/react.js.map +0 -1
  125. package/dist/schema.cjs.map +0 -1
  126. package/dist/schema.js.map +0 -1
  127. package/dist/sw.cjs.map +0 -1
  128. package/dist/sw.js.map +0 -1
  129. package/dist/testing.cjs.map +0 -1
  130. package/dist/testing.js.map +0 -1
package/README.md CHANGED
@@ -7,11 +7,14 @@ In-app inbox, transactional email, web push and Telegram — running inside your
7
7
  database, with no per-notification bill.
8
8
 
9
9
  [![npm](https://img.shields.io/npm/v/easy-ping?color=%23e0362a&label=npm)](https://www.npmjs.com/package/easy-ping)
10
- [![install size](https://packagephobia.com/badge?p=easy-ping)](https://packagephobia.com/result?p=easy-ping)
10
+ [![unpacked size](https://img.shields.io/npm/unpacked-size/easy-ping)](https://www.npmjs.com/package/easy-ping)
11
11
  [![node](https://img.shields.io/node/v/easy-ping)](https://www.npmjs.com/package/easy-ping)
12
12
  [![license](https://img.shields.io/npm/l/easy-ping?color=blue)](./LICENSE)
13
+ [![discord](https://img.shields.io/badge/discord-join%20the%20community-5865F2?logo=discord&logoColor=white)](https://discord.gg/bJ5wGFD3H)
13
14
 
14
- [Documentation](https://easy-pings.com) · [Quickstart](https://easy-pings.com/docs/quickstart) · [Changelog](https://easy-pings.com/docs/changelog) · [AI context](https://easy-pings.com/docs/ai-assistant)
15
+ [Documentation](https://easy-pings.com) · [Quickstart](https://easy-pings.com/docs/quickstart) · [Changelog](https://easy-pings.com/docs/changelog) · [AI context](https://easy-pings.com/docs/ai-assistant) · [Examples](https://github.com/teklumt/easy-ping/tree/main/examples)
16
+
17
+ **Community:** questions and help on [Discord](https://discord.gg/bJ5wGFD3H) · bugs and feature requests on [GitHub issues](https://github.com/teklumt/easy-ping/issues)
15
18
 
16
19
  </div>
17
20
 
@@ -317,7 +320,7 @@ import { handlePush } from "easy-ping/sw";
317
320
  self.addEventListener("push", (event) => event.waitUntil(handlePush(event)));
318
321
  ```
319
322
 
320
- **React Native (beta, under testing).** The same client ships as `easy-ping/react-native`: `useNotifications` wired to `AppState`, a live stream when you pass `fetch` from `expo/fetch`, polling otherwise, and `registerMobilePushDevice` for native push. `examples/expo` is a complete screen.
323
+ **React Native (beta, under testing).** The same client ships as `easy-ping/react-native`: `useNotifications` wired to `AppState`, a live stream when you pass `fetch` from `expo/fetch`, polling otherwise, and `registerMobilePushDevice` for native push.
321
324
 
322
325
  ### 7. Wire the cron
323
326
 
@@ -463,6 +466,8 @@ Defaults to the last 24 hours, capped at 1000 rows. Wire it to an admin page or
463
466
 
464
467
  ## Security notes
465
468
 
469
+ Found a vulnerability? Report it privately; see [SECURITY.md](https://github.com/teklumt/easy-ping/blob/main/SECURITY.md).
470
+
466
471
  - **`session.getUserId` is mandatory.** There is no default and no dev bypass — an insecure default ships, a startup crash doesn't. Returning `null` yields 401; *throwing* yields 500, because a broken session store and an absent session are different bugs.
467
472
  - **Every query is scoped server-side.** No route accepts a user id from the client. Marking someone else's notification read returns 404, not 403 — a 403 confirms the row exists.
468
473
  - **`cron.secret` is required** for modes that rely on the sweep. Unauthenticated, that endpoint is a free flush-everything trigger against your email provider. Compared in constant time. Plugin machine routes (`/push/prune`, `/digests/cron`) accept it too unless you set `machineSecret`, which keeps the scheduler's credential to `/cron` alone. One call drains at most `cron.maxSweeps` sweeps (default 50).
@@ -442,5 +442,3 @@ var schema = createSchema();
442
442
  exports.createSchema = createSchema;
443
443
  exports.drizzleAdapter = drizzleAdapter;
444
444
  exports.schema = schema;
445
- //# sourceMappingURL=drizzle.cjs.map
446
- //# sourceMappingURL=drizzle.cjs.map
@@ -1,6 +1,6 @@
1
- import { isOperator } from '../chunk-O2PBBL5X.js';
2
- import { toSnakeCase } from '../chunk-AEYYTE5I.js';
3
- import { decodeBase64Url, encodeBase64Url } from '../chunk-PTGHMCCG.js';
1
+ import { isOperator } from '../chunk-7C4K5WKW.js';
2
+ import { toSnakeCase } from '../chunk-JRZ2U4IT.js';
3
+ import { decodeBase64Url, encodeBase64Url } from '../chunk-D3UX3WWD.js';
4
4
  import { sql } from 'drizzle-orm';
5
5
  import { pgTable, timestamp, text, jsonb, index, uniqueIndex, integer, boolean, primaryKey } from 'drizzle-orm/pg-core';
6
6
 
@@ -411,5 +411,3 @@ function createSchema(prefix = "") {
411
411
  var schema = createSchema();
412
412
 
413
413
  export { createSchema, drizzleAdapter, schema };
414
- //# sourceMappingURL=drizzle.js.map
415
- //# sourceMappingURL=drizzle.js.map
@@ -598,5 +598,3 @@ exports.createMongoIndexes = createMongoIndexes;
598
598
  exports.createPluginIndexes = createPluginIndexes;
599
599
  exports.mongoAdapter = mongoAdapter;
600
600
  exports.mongoSignals = mongoSignals;
601
- //# sourceMappingURL=mongodb.cjs.map
602
- //# sourceMappingURL=mongodb.cjs.map
@@ -1,7 +1,7 @@
1
- import { createBridgedSignals } from '../chunk-ORZKH224.js';
2
- import { isOperator } from '../chunk-O2PBBL5X.js';
3
- import { coreSchema } from '../chunk-AEYYTE5I.js';
4
- import { decodeBase64Url, encodeBase64Url } from '../chunk-PTGHMCCG.js';
1
+ import { createBridgedSignals } from '../chunk-G32BYQAT.js';
2
+ import { isOperator } from '../chunk-7C4K5WKW.js';
3
+ import { coreSchema } from '../chunk-JRZ2U4IT.js';
4
+ import { decodeBase64Url, encodeBase64Url } from '../chunk-D3UX3WWD.js';
5
5
 
6
6
  // src/adapters/mongodb/adapter.ts
7
7
  var str = (value) => String(value);
@@ -445,5 +445,3 @@ function mongoSignals(db, options = {}) {
445
445
  }
446
446
 
447
447
  export { createMongoIndexes, createPluginIndexes, mongoAdapter, mongoSignals };
448
- //# sourceMappingURL=mongodb.js.map
449
- //# sourceMappingURL=mongodb.js.map
@@ -604,5 +604,3 @@ exports.createMysqlTables = createMysqlTables;
604
604
  exports.mysql2Query = mysql2Query;
605
605
  exports.mysqlAdapter = mysqlAdapter;
606
606
  exports.mysqlTransaction = mysqlTransaction;
607
- //# sourceMappingURL=mysql.cjs.map
608
- //# sourceMappingURL=mysql.cjs.map
@@ -1,9 +1,9 @@
1
- import { createSqlAdapter, mysqlDialect } from '../chunk-CMWOIYVQ.js';
2
- import '../chunk-CK5UPVYP.js';
3
- import { renderMysqlDdl } from '../chunk-UM2L26PV.js';
4
- import '../chunk-O2PBBL5X.js';
5
- import { coreSchema } from '../chunk-AEYYTE5I.js';
6
- import '../chunk-PTGHMCCG.js';
1
+ import { createSqlAdapter, mysqlDialect } from '../chunk-EN3NMHSI.js';
2
+ import '../chunk-CRSGL5SG.js';
3
+ import { renderMysqlDdl } from '../chunk-KOS3YZMZ.js';
4
+ import '../chunk-7C4K5WKW.js';
5
+ import { coreSchema } from '../chunk-JRZ2U4IT.js';
6
+ import '../chunk-D3UX3WWD.js';
7
7
 
8
8
  // src/adapters/mysql/adapter.ts
9
9
  function mysqlAdapter(query, options = {}) {
@@ -47,5 +47,3 @@ async function createMysqlTables(query, options = {}) {
47
47
  }
48
48
 
49
49
  export { createMysqlTables, mysql2Query, mysqlAdapter, mysqlTransaction };
50
- //# sourceMappingURL=mysql.js.map
51
- //# sourceMappingURL=mysql.js.map
@@ -634,5 +634,3 @@ exports.pgListenNotify = pgListenNotify;
634
634
  exports.pgTransaction = pgTransaction;
635
635
  exports.postgresAdapter = postgresAdapter;
636
636
  exports.postgresSignals = postgresSignals;
637
- //# sourceMappingURL=postgres.cjs.map
638
- //# sourceMappingURL=postgres.cjs.map
@@ -1,11 +1,11 @@
1
- import { quote, Statement } from '../chunk-CK5UPVYP.js';
2
- import { renderPostgresDdl } from '../chunk-A4HX5YTG.js';
3
- import '../chunk-UM2L26PV.js';
4
- import '../chunk-HSB5T3LD.js';
5
- import { createBridgedSignals } from '../chunk-ORZKH224.js';
6
- import { isOperator } from '../chunk-O2PBBL5X.js';
7
- import { toSnakeCase, coreSchema } from '../chunk-AEYYTE5I.js';
8
- import { decodeBase64Url, encodeBase64Url } from '../chunk-PTGHMCCG.js';
1
+ import { quote, Statement } from '../chunk-CRSGL5SG.js';
2
+ import { renderPostgresDdl } from '../chunk-IXXPJMYS.js';
3
+ import '../chunk-KOS3YZMZ.js';
4
+ import '../chunk-OKIQ5BEV.js';
5
+ import { createBridgedSignals } from '../chunk-G32BYQAT.js';
6
+ import { isOperator } from '../chunk-7C4K5WKW.js';
7
+ import { toSnakeCase, coreSchema } from '../chunk-JRZ2U4IT.js';
8
+ import { decodeBase64Url, encodeBase64Url } from '../chunk-D3UX3WWD.js';
9
9
 
10
10
  // src/adapters/postgres/adapter.ts
11
11
  var str = (value) => String(value);
@@ -396,5 +396,3 @@ function pgListenNotify(client) {
396
396
  }
397
397
 
398
398
  export { createPostgresTables, pgListenNotify, pgTransaction, postgresAdapter, postgresSignals };
399
- //# sourceMappingURL=postgres.js.map
400
- //# sourceMappingURL=postgres.js.map
@@ -592,5 +592,3 @@ exports.createSqliteTables = createSqliteTables;
592
592
  exports.sqliteAdapter = sqliteAdapter;
593
593
  exports.sqliteQuery = sqliteQuery;
594
594
  exports.sqliteTransaction = sqliteTransaction;
595
- //# sourceMappingURL=sqlite.cjs.map
596
- //# sourceMappingURL=sqlite.cjs.map
@@ -1,9 +1,9 @@
1
- import { createSqlAdapter, sqliteDialect } from '../chunk-CMWOIYVQ.js';
2
- import '../chunk-CK5UPVYP.js';
3
- import { renderSqliteDdl } from '../chunk-HSB5T3LD.js';
4
- import '../chunk-O2PBBL5X.js';
5
- import { coreSchema } from '../chunk-AEYYTE5I.js';
6
- import '../chunk-PTGHMCCG.js';
1
+ import { createSqlAdapter, sqliteDialect } from '../chunk-EN3NMHSI.js';
2
+ import '../chunk-CRSGL5SG.js';
3
+ import { renderSqliteDdl } from '../chunk-OKIQ5BEV.js';
4
+ import '../chunk-7C4K5WKW.js';
5
+ import { coreSchema } from '../chunk-JRZ2U4IT.js';
6
+ import '../chunk-D3UX3WWD.js';
7
7
 
8
8
  // src/adapters/sqlite/adapter.ts
9
9
  function sqliteAdapter(query, options = {}) {
@@ -49,5 +49,3 @@ async function createSqliteTables(query, options = {}) {
49
49
  }
50
50
 
51
51
  export { createSqliteTables, sqliteAdapter, sqliteQuery, sqliteTransaction };
52
- //# sourceMappingURL=sqlite.js.map
53
- //# sourceMappingURL=sqlite.js.map
package/dist/browser.cjs CHANGED
@@ -92,5 +92,3 @@ exports.decodeVapidKey = decodeVapidKey;
92
92
  exports.isPushSupported = isPushSupported;
93
93
  exports.subscribeToPush = subscribeToPush;
94
94
  exports.unsubscribeFromPush = unsubscribeFromPush;
95
- //# sourceMappingURL=browser.cjs.map
96
- //# sourceMappingURL=browser.cjs.map
package/dist/browser.js CHANGED
@@ -85,5 +85,3 @@ async function unsubscribeFromPush(options) {
85
85
  }
86
86
 
87
87
  export { PushPermissionError, PushUnsupportedError, decodeVapidKey, isPushSupported, subscribeToPush, unsubscribeFromPush };
88
- //# sourceMappingURL=browser.js.map
89
- //# sourceMappingURL=browser.js.map
@@ -1,4 +1,4 @@
1
- import { DELIVERIES_CHANNEL } from './chunk-ORZKH224.js';
1
+ import { DELIVERIES_CHANNEL } from './chunk-G32BYQAT.js';
2
2
 
3
3
  // src/core/backoff.ts
4
4
  var SCHEDULE_MS = [3e4, 12e4, 48e4, 192e4];
@@ -247,5 +247,3 @@ function createRunner(deps) {
247
247
  }
248
248
 
249
249
  export { createRunner, redactErrorMessage };
250
- //# sourceMappingURL=chunk-JKTMUMQK.js.map
251
- //# sourceMappingURL=chunk-JKTMUMQK.js.map
@@ -9,5 +9,3 @@ var ESCAPES = {
9
9
  var escapeHtml = (value) => String(value ?? "").replace(/[&<>"']/g, (char) => ESCAPES[char] ?? char);
10
10
 
11
11
  export { escapeHtml };
12
- //# sourceMappingURL=chunk-R3BE67L7.js.map
13
- //# sourceMappingURL=chunk-R3BE67L7.js.map
@@ -1,4 +1,4 @@
1
- import { toSnakeCase } from './chunk-AEYYTE5I.js';
1
+ import { toSnakeCase } from './chunk-JRZ2U4IT.js';
2
2
 
3
3
  // src/core/errors.ts
4
4
  var EasyPingError = class extends Error {
@@ -176,5 +176,3 @@ function createPluginStore(pluginId, schema, storage, prefix) {
176
176
  }
177
177
 
178
178
  export { ConfigError, EasyPingError, ValidationError, consoleLogger, createPluginStore, isOperator };
179
- //# sourceMappingURL=chunk-O2PBBL5X.js.map
180
- //# sourceMappingURL=chunk-O2PBBL5X.js.map
@@ -44,5 +44,3 @@ var quoteWith = (quoteChar) => (identifier) => `${quoteChar}${identifier.split(q
44
44
  var quote = quoteWith('"');
45
45
 
46
46
  export { Statement, quote, quoteWith };
47
- //# sourceMappingURL=chunk-CK5UPVYP.js.map
48
- //# sourceMappingURL=chunk-CK5UPVYP.js.map
@@ -19,5 +19,3 @@ function decodeBase64Url(value) {
19
19
  }
20
20
 
21
21
  export { decodeBase64Url, decodeBase64UrlBytes, encodeBase64Url };
22
- //# sourceMappingURL=chunk-PTGHMCCG.js.map
23
- //# sourceMappingURL=chunk-PTGHMCCG.js.map
@@ -1,7 +1,7 @@
1
- import { quoteWith, Statement } from './chunk-CK5UPVYP.js';
2
- import { isOperator } from './chunk-O2PBBL5X.js';
3
- import { toSnakeCase } from './chunk-AEYYTE5I.js';
4
- import { decodeBase64Url, encodeBase64Url } from './chunk-PTGHMCCG.js';
1
+ import { quoteWith, Statement } from './chunk-CRSGL5SG.js';
2
+ import { isOperator } from './chunk-7C4K5WKW.js';
3
+ import { toSnakeCase } from './chunk-JRZ2U4IT.js';
4
+ import { decodeBase64Url, encodeBase64Url } from './chunk-D3UX3WWD.js';
5
5
 
6
6
  // src/adapters/sql/adapter.ts
7
7
  var str = (value) => String(value);
@@ -389,5 +389,3 @@ var sqliteDialect = {
389
389
  };
390
390
 
391
391
  export { createSqlAdapter, mysqlDialect, sqliteDialect };
392
- //# sourceMappingURL=chunk-CMWOIYVQ.js.map
393
- //# sourceMappingURL=chunk-CMWOIYVQ.js.map
@@ -71,5 +71,3 @@ function createBridgedSignals(transport, onError) {
71
71
  }
72
72
 
73
73
  export { DELIVERIES_CHANNEL, createBridgedSignals, createMemorySignals, inboxChannel };
74
- //# sourceMappingURL=chunk-ORZKH224.js.map
75
- //# sourceMappingURL=chunk-ORZKH224.js.map
@@ -1,6 +1,6 @@
1
- import { renderMysqlDdl, mysqlColumnDefinition } from './chunk-UM2L26PV.js';
2
- import { renderSqliteDdl, sqliteColumnDefinition, SQLITE_TYPE } from './chunk-HSB5T3LD.js';
3
- import { toSnakeCase } from './chunk-AEYYTE5I.js';
1
+ import { renderMysqlDdl, mysqlColumnDefinition } from './chunk-KOS3YZMZ.js';
2
+ import { renderSqliteDdl, sqliteColumnDefinition, SQLITE_TYPE } from './chunk-OKIQ5BEV.js';
3
+ import { toSnakeCase } from './chunk-JRZ2U4IT.js';
4
4
 
5
5
  // src/schema/migrate-mysql.ts
6
6
  var MYSQL_INTROSPECT_COLUMNS_SQL = `
@@ -409,5 +409,3 @@ ${body}
409
409
  }
410
410
 
411
411
  export { INTROSPECT_SQL, MYSQL_INTROSPECT_COLUMNS_SQL, MYSQL_INTROSPECT_INDEXES_SQL, SQLITE_INTROSPECT_SQL, planMysqlMigration, planPostgresMigration, planSqliteMigration, renderDrizzleSchema, renderPostgresDdl };
412
- //# sourceMappingURL=chunk-A4HX5YTG.js.map
413
- //# sourceMappingURL=chunk-A4HX5YTG.js.map
@@ -1,5 +1,5 @@
1
- import { inboxChannel } from './chunk-ORZKH224.js';
2
- import { encodeBase64Url, decodeBase64UrlBytes, decodeBase64Url } from './chunk-PTGHMCCG.js';
1
+ import { inboxChannel } from './chunk-G32BYQAT.js';
2
+ import { encodeBase64Url, decodeBase64UrlBytes, decodeBase64Url } from './chunk-D3UX3WWD.js';
3
3
 
4
4
  // src/core/tokens.ts
5
5
  var encoder = new TextEncoder();
@@ -461,5 +461,3 @@ function createHandler(deps) {
461
461
  }
462
462
 
463
463
  export { DEFAULT_TOKEN_TTL_SECONDS, MAX_BODY_BYTES, MAX_TOKEN_TTL_SECONDS, createHandler, createScopedSigner, expiresIn, readJsonBody, signToken, verifyToken };
464
- //# sourceMappingURL=chunk-CFLVAF2R.js.map
465
- //# sourceMappingURL=chunk-CFLVAF2R.js.map
@@ -59,5 +59,3 @@ var coreSchema = {
59
59
  };
60
60
 
61
61
  export { coreSchema, toSnakeCase };
62
- //# sourceMappingURL=chunk-AEYYTE5I.js.map
63
- //# sourceMappingURL=chunk-AEYYTE5I.js.map
@@ -1,4 +1,4 @@
1
- import { toSnakeCase } from './chunk-AEYYTE5I.js';
1
+ import { toSnakeCase } from './chunk-JRZ2U4IT.js';
2
2
 
3
3
  // src/schema/render-mysql.ts
4
4
  var quote = (value) => `\`${value.split("`").join("``")}\``;
@@ -63,5 +63,3 @@ ${lines.join(",\n")}
63
63
  }
64
64
 
65
65
  export { mysqlColumnDefinition, renderMysqlDdl };
66
- //# sourceMappingURL=chunk-UM2L26PV.js.map
67
- //# sourceMappingURL=chunk-UM2L26PV.js.map
@@ -1,4 +1,4 @@
1
- import { toSnakeCase } from './chunk-AEYYTE5I.js';
1
+ import { toSnakeCase } from './chunk-JRZ2U4IT.js';
2
2
 
3
3
  // src/schema/render-sqlite.ts
4
4
  var SQLITE_TYPE = {
@@ -51,5 +51,3 @@ ${columns.join(",\n")}
51
51
  }
52
52
 
53
53
  export { SQLITE_TYPE, renderSqliteDdl, sqliteColumnDefinition };
54
- //# sourceMappingURL=chunk-HSB5T3LD.js.map
55
- //# sourceMappingURL=chunk-HSB5T3LD.js.map
@@ -7,5 +7,3 @@ function defineClientPlugin(plugin) {
7
7
  }
8
8
 
9
9
  export { defineClientPlugin, definePlugin };
10
- //# sourceMappingURL=chunk-JN3UCQBP.js.map
11
- //# sourceMappingURL=chunk-JN3UCQBP.js.map
@@ -96,5 +96,3 @@ function telegramBot(options) {
96
96
  }
97
97
 
98
98
  export { telegramBot, telegramStartLink };
99
- //# sourceMappingURL=chunk-SSHVZHSJ.js.map
100
- //# sourceMappingURL=chunk-SSHVZHSJ.js.map
package/dist/client.cjs CHANGED
@@ -439,5 +439,3 @@ function createNotifyClient(options = {}) {
439
439
  }
440
440
 
441
441
  exports.createNotifyClient = createNotifyClient;
442
- //# sourceMappingURL=client.cjs.map
443
- //# sourceMappingURL=client.cjs.map
package/dist/client.js CHANGED
@@ -437,5 +437,3 @@ function createNotifyClient(options = {}) {
437
437
  }
438
438
 
439
439
  export { createNotifyClient };
440
- //# sourceMappingURL=client.js.map
441
- //# sourceMappingURL=client.js.map
package/dist/index.cjs CHANGED
@@ -1567,5 +1567,3 @@ exports.readJsonBody = readJsonBody;
1567
1567
  exports.redactErrorMessage = redactErrorMessage;
1568
1568
  exports.signToken = signToken;
1569
1569
  exports.verifyToken = verifyToken;
1570
- //# sourceMappingURL=index.cjs.map
1571
- //# sourceMappingURL=index.cjs.map
package/dist/index.js CHANGED
@@ -1,15 +1,15 @@
1
- import { createRunner } from './chunk-JKTMUMQK.js';
2
- export { createRunner, redactErrorMessage } from './chunk-JKTMUMQK.js';
3
- export { escapeHtml } from './chunk-R3BE67L7.js';
4
- export { defineClientPlugin, definePlugin } from './chunk-JN3UCQBP.js';
5
- import { createHandler, createScopedSigner } from './chunk-CFLVAF2R.js';
6
- export { DEFAULT_TOKEN_TTL_SECONDS, MAX_BODY_BYTES, MAX_TOKEN_TTL_SECONDS, expiresIn, readJsonBody, signToken, verifyToken } from './chunk-CFLVAF2R.js';
7
- import { createMemorySignals, inboxChannel, DELIVERIES_CHANNEL } from './chunk-ORZKH224.js';
8
- export { DELIVERIES_CHANNEL, createBridgedSignals, createMemorySignals, inboxChannel } from './chunk-ORZKH224.js';
9
- import { consoleLogger, ConfigError, createPluginStore, ValidationError } from './chunk-O2PBBL5X.js';
10
- export { ConfigError, EasyPingError, ValidationError, consoleLogger } from './chunk-O2PBBL5X.js';
11
- import './chunk-AEYYTE5I.js';
12
- export { decodeBase64Url, encodeBase64Url } from './chunk-PTGHMCCG.js';
1
+ import { createRunner } from './chunk-2UOEAG6H.js';
2
+ export { createRunner, redactErrorMessage } from './chunk-2UOEAG6H.js';
3
+ export { escapeHtml } from './chunk-74KSKP6B.js';
4
+ export { defineClientPlugin, definePlugin } from './chunk-SZWEW3WN.js';
5
+ import { createHandler, createScopedSigner } from './chunk-JDR3U7X4.js';
6
+ export { DEFAULT_TOKEN_TTL_SECONDS, MAX_BODY_BYTES, MAX_TOKEN_TTL_SECONDS, expiresIn, readJsonBody, signToken, verifyToken } from './chunk-JDR3U7X4.js';
7
+ import { createMemorySignals, inboxChannel, DELIVERIES_CHANNEL } from './chunk-G32BYQAT.js';
8
+ export { DELIVERIES_CHANNEL, createBridgedSignals, createMemorySignals, inboxChannel } from './chunk-G32BYQAT.js';
9
+ import { consoleLogger, ConfigError, createPluginStore, ValidationError } from './chunk-7C4K5WKW.js';
10
+ export { ConfigError, EasyPingError, ValidationError, consoleLogger } from './chunk-7C4K5WKW.js';
11
+ import './chunk-JRZ2U4IT.js';
12
+ export { decodeBase64Url, encodeBase64Url } from './chunk-D3UX3WWD.js';
13
13
 
14
14
  // src/core/config.ts
15
15
  var INBOX_VERSION_HEADER = "x-easy-ping-inbox";
@@ -559,5 +559,3 @@ function easyPing(config) {
559
559
  }
560
560
 
561
561
  export { INBOX_VERSION_HEADER, MIN_SECRET_LENGTH, createRateLimiter, defineNotification, easyPing };
562
- //# sourceMappingURL=index.js.map
563
- //# sourceMappingURL=index.js.map
package/dist/node.cjs CHANGED
@@ -99,5 +99,3 @@ function toNodeHandler(handler, options = {}) {
99
99
 
100
100
  exports.toNodeHandler = toNodeHandler;
101
101
  exports.toWebRequest = toWebRequest;
102
- //# sourceMappingURL=node.cjs.map
103
- //# sourceMappingURL=node.cjs.map
package/dist/node.js CHANGED
@@ -1,6 +1,6 @@
1
- import { MAX_BODY_BYTES } from './chunk-CFLVAF2R.js';
2
- import './chunk-ORZKH224.js';
3
- import './chunk-PTGHMCCG.js';
1
+ import { MAX_BODY_BYTES } from './chunk-JDR3U7X4.js';
2
+ import './chunk-G32BYQAT.js';
3
+ import './chunk-D3UX3WWD.js';
4
4
 
5
5
  // src/node/index.ts
6
6
  var BodyTooLargeError = class extends Error {
@@ -96,5 +96,3 @@ function toNodeHandler(handler, options = {}) {
96
96
  }
97
97
 
98
98
  export { toNodeHandler, toWebRequest };
99
- //# sourceMappingURL=node.js.map
100
- //# sourceMappingURL=node.js.map
@@ -206,5 +206,3 @@ exports.digests = digests;
206
206
  exports.isDue = isDue;
207
207
  exports.localMoment = localMoment;
208
208
  exports.periodKey = periodKey;
209
- //# sourceMappingURL=digests.cjs.map
210
- //# sourceMappingURL=digests.cjs.map
@@ -1,4 +1,4 @@
1
- import { coreSchema } from '../chunk-AEYYTE5I.js';
1
+ import { coreSchema } from '../chunk-JRZ2U4IT.js';
2
2
 
3
3
  // src/plugins/digests/schedule.ts
4
4
  var WEEKDAYS = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
@@ -187,5 +187,3 @@ function digests(options = {}) {
187
187
  }
188
188
 
189
189
  export { digests, isDue, localMoment, periodKey };
190
- //# sourceMappingURL=digests.js.map
191
- //# sourceMappingURL=digests.js.map
@@ -304,5 +304,3 @@ function mobilePush(options) {
304
304
 
305
305
  exports.mobilePush = mobilePush;
306
306
  exports.mobilePushSchema = mobilePushSchema;
307
- //# sourceMappingURL=mobile-push.cjs.map
308
- //# sourceMappingURL=mobile-push.cjs.map
@@ -1,6 +1,6 @@
1
- import { readJsonBody } from '../chunk-CFLVAF2R.js';
2
- import '../chunk-ORZKH224.js';
3
- import '../chunk-PTGHMCCG.js';
1
+ import { readJsonBody } from '../chunk-JDR3U7X4.js';
2
+ import '../chunk-G32BYQAT.js';
3
+ import '../chunk-D3UX3WWD.js';
4
4
 
5
5
  // src/plugins/mobile-push/index.ts
6
6
  var DEVICE = "notification_mobile_push_device";
@@ -258,5 +258,3 @@ function mobilePush(options) {
258
258
  }
259
259
 
260
260
  export { mobilePush, mobilePushSchema };
261
- //# sourceMappingURL=mobile-push.js.map
262
- //# sourceMappingURL=mobile-push.js.map
@@ -19,5 +19,3 @@ var preferencesClient = () => defineClientPlugin({
19
19
  });
20
20
 
21
21
  exports.preferencesClient = preferencesClient;
22
- //# sourceMappingURL=preferences-client.cjs.map
23
- //# sourceMappingURL=preferences-client.cjs.map
@@ -1,4 +1,4 @@
1
- import { defineClientPlugin } from '../chunk-JN3UCQBP.js';
1
+ import { defineClientPlugin } from '../chunk-SZWEW3WN.js';
2
2
 
3
3
  // src/plugins/preferences/client.ts
4
4
  var preferencesClient = () => defineClientPlugin({
@@ -14,5 +14,3 @@ var preferencesClient = () => defineClientPlugin({
14
14
  });
15
15
 
16
16
  export { preferencesClient };
17
- //# sourceMappingURL=preferences-client.js.map
18
- //# sourceMappingURL=preferences-client.js.map
@@ -122,4 +122,3 @@ function usePreferences(options = {}) {
122
122
  0 && (module.exports = {
123
123
  usePreferences
124
124
  });
125
- //# sourceMappingURL=preferences-react.cjs.map
@@ -98,4 +98,3 @@ function usePreferences(options = {}) {
98
98
  export {
99
99
  usePreferences
100
100
  };
101
- //# sourceMappingURL=preferences-react.js.map
@@ -235,5 +235,3 @@ function preferences(options = {}) {
235
235
  exports.UNSUBSCRIBE_PURPOSE = UNSUBSCRIBE_PURPOSE;
236
236
  exports.buildUnsubscribeToken = buildUnsubscribeToken;
237
237
  exports.preferences = preferences;
238
- //# sourceMappingURL=preferences.cjs.map
239
- //# sourceMappingURL=preferences.cjs.map
@@ -1,6 +1,6 @@
1
- import { DEFAULT_TOKEN_TTL_SECONDS, signToken, expiresIn, readJsonBody } from '../chunk-CFLVAF2R.js';
2
- import '../chunk-ORZKH224.js';
3
- import '../chunk-PTGHMCCG.js';
1
+ import { DEFAULT_TOKEN_TTL_SECONDS, signToken, expiresIn, readJsonBody } from '../chunk-JDR3U7X4.js';
2
+ import '../chunk-G32BYQAT.js';
3
+ import '../chunk-D3UX3WWD.js';
4
4
 
5
5
  // src/plugins/preferences/index.ts
6
6
  var UNSUBSCRIBE_PURPOSE = "unsubscribe";
@@ -151,5 +151,3 @@ function preferences(options = {}) {
151
151
  }
152
152
 
153
153
  export { UNSUBSCRIBE_PURPOSE, buildUnsubscribeToken, preferences };
154
- //# sourceMappingURL=preferences.js.map
155
- //# sourceMappingURL=preferences.js.map
@@ -302,5 +302,3 @@ exports.push = push;
302
302
  exports.pushSchema = pushSchema;
303
303
  exports.validateEndpoint = validateEndpoint;
304
304
  exports.validateSubscriptionKeys = validateSubscriptionKeys;
305
- //# sourceMappingURL=push.cjs.map
306
- //# sourceMappingURL=push.cjs.map
@@ -1,7 +1,7 @@
1
- import { redactErrorMessage } from '../chunk-JKTMUMQK.js';
2
- import { readJsonBody } from '../chunk-CFLVAF2R.js';
3
- import '../chunk-ORZKH224.js';
4
- import { decodeBase64UrlBytes } from '../chunk-PTGHMCCG.js';
1
+ import { redactErrorMessage } from '../chunk-2UOEAG6H.js';
2
+ import { readJsonBody } from '../chunk-JDR3U7X4.js';
3
+ import '../chunk-G32BYQAT.js';
4
+ import { decodeBase64UrlBytes } from '../chunk-D3UX3WWD.js';
5
5
 
6
6
  // src/plugins/push/index.ts
7
7
  var DEVICE = "notification_push_device";
@@ -242,5 +242,3 @@ function push(options) {
242
242
  }
243
243
 
244
244
  export { push, pushSchema, validateEndpoint, validateSubscriptionKeys };
245
- //# sourceMappingURL=push.js.map
246
- //# sourceMappingURL=push.js.map
@@ -396,5 +396,3 @@ function telegram(options) {
396
396
  exports.isButtonUrlAllowed = isButtonUrlAllowed;
397
397
  exports.telegram = telegram;
398
398
  exports.telegramSchema = telegramSchema;
399
- //# sourceMappingURL=telegram.cjs.map
400
- //# sourceMappingURL=telegram.cjs.map
@@ -1,8 +1,8 @@
1
- import { telegramStartLink } from '../chunk-SSHVZHSJ.js';
2
- import { escapeHtml } from '../chunk-R3BE67L7.js';
3
- import { readJsonBody } from '../chunk-CFLVAF2R.js';
4
- import '../chunk-ORZKH224.js';
5
- import { encodeBase64Url } from '../chunk-PTGHMCCG.js';
1
+ import { telegramStartLink } from '../chunk-VA4W4UFI.js';
2
+ import { escapeHtml } from '../chunk-74KSKP6B.js';
3
+ import { readJsonBody } from '../chunk-JDR3U7X4.js';
4
+ import '../chunk-G32BYQAT.js';
5
+ import { encodeBase64Url } from '../chunk-D3UX3WWD.js';
6
6
 
7
7
  // src/plugins/telegram/index.ts
8
8
  var CHAT = "notification_telegram_chat";
@@ -330,5 +330,3 @@ function telegram(options) {
330
330
  }
331
331
 
332
332
  export { isButtonUrlAllowed, telegram, telegramSchema };
333
- //# sourceMappingURL=telegram.js.map
334
- //# sourceMappingURL=telegram.js.map
@@ -110,5 +110,3 @@ exports.EXPO_RECEIPT_BATCH = EXPO_RECEIPT_BATCH;
110
110
  exports.EXPO_SEND_BATCH = EXPO_SEND_BATCH;
111
111
  exports.expoPush = expoPush;
112
112
  exports.isExpoPushToken = isExpoPushToken;
113
- //# sourceMappingURL=expo-push.cjs.map
114
- //# sourceMappingURL=expo-push.cjs.map
@@ -105,5 +105,3 @@ function expoPush(options = {}) {
105
105
  }
106
106
 
107
107
  export { EXPO_RECEIPT_BATCH, EXPO_SEND_BATCH, expoPush, isExpoPushToken };
108
- //# sourceMappingURL=expo-push.js.map
109
- //# sourceMappingURL=expo-push.js.map
@@ -65,5 +65,3 @@ function resend(options) {
65
65
 
66
66
  exports.ResendError = ResendError;
67
67
  exports.resend = resend;
68
- //# sourceMappingURL=resend.cjs.map
69
- //# sourceMappingURL=resend.cjs.map
@@ -62,5 +62,3 @@ function resend(options) {
62
62
  }
63
63
 
64
64
  export { ResendError, resend };
65
- //# sourceMappingURL=resend.js.map
66
- //# sourceMappingURL=resend.js.map
@@ -99,5 +99,3 @@ function telegramBot(options) {
99
99
 
100
100
  exports.telegramBot = telegramBot;
101
101
  exports.telegramStartLink = telegramStartLink;
102
- //# sourceMappingURL=telegram.cjs.map
103
- //# sourceMappingURL=telegram.cjs.map
@@ -1,3 +1 @@
1
- export { telegramBot, telegramStartLink } from '../chunk-SSHVZHSJ.js';
2
- //# sourceMappingURL=telegram.js.map
3
- //# sourceMappingURL=telegram.js.map
1
+ export { telegramBot, telegramStartLink } from '../chunk-VA4W4UFI.js';