vintasend 0.9.0 → 0.10.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/README.md CHANGED
@@ -587,7 +587,7 @@ VintaSend has many backend, adapter, and template renderer implementations. If y
587
587
 
588
588
  ##### Backends
589
589
 
590
- * **[vintasend-prisma](https://github.com/vintasoftware/vintasend-prisma/)**: Uses Prisma Client to manage the notifications in the database.
590
+ * **[vintasend-prisma](https://github.com/vintasoftware/vintasend-ts-prisma/)**: Uses Prisma Client to manage the notifications in the database.
591
591
  * **[vintasend-medplum](https://github.com/vintasoftware/vintasend-medplum/)**: Uses Medplum FHIR resources (Communication, Binary, Media) to manage notifications in healthcare applications.
592
592
 
593
593
  ##### Adapters
@@ -605,6 +605,7 @@ VintaSend has many backend, adapter, and template renderer implementations. If y
605
605
 
606
606
  ##### Template Renderers
607
607
  * **[vintasend-pug](https://github.com/vintasoftware/vintasend-pug/)**: Renders emails using Pug.
608
+ * **[vintasend-react-email](https://github.com/vintasoftware/vintasend-react-email/)**: Renders emails using React Email, including uncompiled TS/TSX template support.
608
609
 
609
610
  ##### Loggers
610
611
  * **[vintasend-winston](https://github.com/vintasoftware/vintasend-winston/)**: Uses Winston to allow `NotificationService` to create log entries.
@@ -642,6 +643,11 @@ This project uses a two-step automated release process:
642
643
  2. **Update CHANGELOG.md**: Edit manually
643
644
  3. **Publish**: `npm run release:publish`
644
645
 
646
+ Optional publish skips:
647
+ - `npm run release:publish -- --skip=vintasend-medplum,vintasend-ts-twilio`
648
+ - `npm run release:publish -- --skip-root`
649
+ - `npm run release:publish -- --skip=root,vintasend-medplum`
650
+
645
651
  For detailed instructions, see:
646
652
  - [Release Guide](RELEASE_GUIDE.md) - Complete walkthrough with examples
647
653
  - [Quick Reference](RELEASE_QUICK_REF.md) - Command cheatsheet
@@ -0,0 +1,21 @@
1
+ import type { Buffer } from 'node:buffer';
2
+ import type { JsonObject } from '../../types/json-values';
3
+ import type { AnyNotification } from '../../types/notification';
4
+ import type { BaseNotificationTypeConfig } from '../../types/notification-type-config';
5
+ import type { BaseLogger } from '../loggers/base-logger';
6
+ import type { BaseNotificationTemplateRenderer } from './base-notification-template-renderer';
7
+ export type Attachment = File | Buffer | string;
8
+ export type TextNotificationTemplate = {
9
+ text: string;
10
+ };
11
+ export type TextNotificationTemplateContent = {
12
+ text: string;
13
+ };
14
+ export interface BaseTextNotificationTemplateRenderer<Config extends BaseNotificationTypeConfig> extends BaseNotificationTemplateRenderer<Config, TextNotificationTemplate> {
15
+ render(notification: AnyNotification<Config>, context: JsonObject): Promise<TextNotificationTemplate>;
16
+ renderFromTemplateContent(notification: AnyNotification<Config>, templateContent: TextNotificationTemplateContent, context: JsonObject): Promise<TextNotificationTemplate>;
17
+ /**
18
+ * Inject logger into the template renderer (optional - called by VintaSend when logger exists)
19
+ */
20
+ injectLogger?(logger: BaseLogger): void;
21
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vintasend",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "main": "dist/index.js",
5
5
  "files": [
6
6
  "dist"
@@ -13,9 +13,10 @@
13
13
  "check": "biome check --write .",
14
14
  "build": "tsc",
15
15
  "prepublishOnly": "npm run build",
16
- "test": "jest",
17
- "test:watch": "jest --watch",
18
- "test:coverage": "jest --coverage",
16
+ "test": "vitest run",
17
+ "test:watch": "vitest",
18
+ "test:coverage": "vitest run --coverage",
19
+ "implementation:generate": "node scripts/generate-implementation.js",
19
20
  "test:implementations:local": "node scripts/test-implementations-local.js",
20
21
  "release:bump": "node scripts/release-bump.js",
21
22
  "release:bump:patch": "node scripts/release-bump.js --bump=patch",
@@ -26,12 +27,11 @@
26
27
  },
27
28
  "devDependencies": {
28
29
  "@biomejs/biome": "^2.3.11",
29
- "@types/jest": "^30.0.0",
30
30
  "@types/mime-types": "^3.0.1",
31
31
  "@types/node": "^25.0.8",
32
- "jest": "^30.2.0",
33
- "ts-jest": "^29.4.6",
34
- "typescript": "^5.9.3"
32
+ "@vitest/coverage-v8": "4.0.18",
33
+ "typescript": "^5.9.3",
34
+ "vitest": "4.0.18"
35
35
  },
36
36
  "dependencies": {
37
37
  "mime-types": "^3.0.2"