@frigear-nu/subscriptions 0.1.0 → 0.1.1

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/dist/module.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@frigear-nu/subscriptions",
3
3
  "configKey": "subscriptions",
4
- "version": "0.1.0",
4
+ "version": "0.1.1",
5
5
  "builder": {
6
6
  "@nuxt/module-builder": "1.0.3",
7
7
  "unbuild": "unknown"
package/dist/module.mjs CHANGED
@@ -21,6 +21,8 @@ const module$1 = defineNuxtModule({
21
21
  "@frigear-nu/auth": { version: ">=0.0.1" },
22
22
  "@frigear-nu/mcp": { version: ">=0.0.1" },
23
23
  "@frigear-nu/users": { version: ">=0.0.1" },
24
+ // The payment link email is dispatched through it.
25
+ "@frigear-nu/notify": { version: ">=0.0.1" },
24
26
  "@frigear-nu/stripe": { version: ">=0.0.1" },
25
27
  // The pages and admin pieces are built from its components and composables (`SectionCard`, `useFormat`, ...).
26
28
  "@frigear-nu/ui": { version: ">=0.0.1" },
@@ -128,6 +130,7 @@ const module$1 = defineNuxtModule({
128
130
  span: 2
129
131
  }
130
132
  });
133
+ nuxt.hook("notify:email:templates", (sources) => sources.push({ dir: resolver.resolve("./runtime/emails") }));
131
134
  addServerImportsDir(resolver.resolve("./runtime/server/utils"));
132
135
  inlineModuleRuntime(nuxt, resolver);
133
136
  if (settings.mcp === true) addMcpDefinitions(nuxt, resolver.resolve("./runtime/server/mcp"));
@@ -0,0 +1,8 @@
1
+ type __VLS_Props = {
2
+ name: string;
3
+ label: string;
4
+ url: string;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
@@ -0,0 +1,34 @@
1
+ <script setup>
2
+ import { EmailButton, EmailDivider, EmailHeading, EmailLayout, EmailLinkFallback, EmailText } from "@frigear-nu/email-templates/components";
3
+ defineProps({
4
+ name: { type: String, required: true },
5
+ label: { type: String, required: true },
6
+ url: { type: String, required: true }
7
+ });
8
+ </script>
9
+
10
+ <template>
11
+ <EmailLayout preview="Complete your membership">
12
+ <ESubject>Complete your {{ label }} membership</ESubject>
13
+ <EmailHeading>
14
+ Complete your {{ label }} membership
15
+ </EmailHeading>
16
+ <EmailDivider />
17
+ <EmailText>
18
+ Hi {{ name }},
19
+ </EmailText>
20
+ <EmailText>
21
+ Use the button below to complete your {{ label }} membership. The link is valid for 24 hours.
22
+ </EmailText>
23
+ <EmailButton
24
+ :href="url"
25
+ >
26
+ Complete membership
27
+ </EmailButton>
28
+ <EmailLinkFallback :href="url" />
29
+ <EmailDivider />
30
+ <EmailText>
31
+ If you weren’t expecting this email, you can safely ignore it.
32
+ </EmailText>
33
+ </EmailLayout>
34
+ </template>
@@ -0,0 +1,8 @@
1
+ type __VLS_Props = {
2
+ name: string;
3
+ label: string;
4
+ url: string;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
7
+ declare const _default: typeof __VLS_export;
8
+ export default _default;
@@ -38,7 +38,8 @@ export default defineEventHandler(async (event) => {
38
38
  body: `<p>Hi ${escapeHtml(target.name)},</p><p>Use the link below to complete your ${escapeHtml(label)} membership. The link is valid for 24 hours.</p><p><a href="${escapeHtml(session.url)}">${escapeHtml(session.url)}</a></p>`,
39
39
  text: `Hi ${target.name},
40
40
 
41
- Complete your ${label} membership (valid for 24 hours): ${session.url}`
41
+ Complete your ${label} membership (valid for 24 hours): ${session.url}`,
42
+ template: { name: "subscriptions-payment-link", props: { name: target.name, label, url: session.url } }
42
43
  });
43
44
  emailed = true;
44
45
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@frigear-nu/subscriptions",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Recurring subscriptions (plans, checkout, upgrade/downgrade, billing portal and entitlements) for the frigear ecosystem, built on @frigear-nu/stripe.",
5
5
  "homepage": "https://docs.frigear.dev/modules/subscriptions",
6
6
  "repository": {
@@ -30,12 +30,13 @@
30
30
  "playground"
31
31
  ],
32
32
  "dependencies": {
33
- "@frigear-nu/auth": "0.1.0",
34
- "@frigear-nu/mcp": "0.1.0",
35
- "@frigear-nu/module-kit": "1.1.0",
36
- "@frigear-nu/stripe": "0.1.0",
37
- "@frigear-nu/ui": "0.1.0",
38
- "@frigear-nu/users": "1.1.0",
33
+ "@frigear-nu/auth": "0.1.2",
34
+ "@frigear-nu/mcp": "0.1.1",
35
+ "@frigear-nu/module-kit": "1.1.1",
36
+ "@frigear-nu/notify": "0.1.1",
37
+ "@frigear-nu/stripe": "0.1.1",
38
+ "@frigear-nu/ui": "0.1.1",
39
+ "@frigear-nu/users": "1.1.2",
39
40
  "@libsql/client": "^0.18.0",
40
41
  "@nuxt/kit": "^4.6.1",
41
42
  "@vueuse/core": "^15.0.0",
@@ -47,12 +48,16 @@
47
48
  "zod": "^4.6.5"
48
49
  },
49
50
  "peerDependencies": {
50
- "@frigear-nu/menu": "0.1.0",
51
- "@frigear-nu/widget": "0.1.0",
51
+ "@frigear-nu/email-templates": "0.1.0",
52
+ "@frigear-nu/menu": "0.1.1",
53
+ "@frigear-nu/widget": "0.1.1",
52
54
  "@nuxt/ui": "^4.11.2",
53
55
  "@nuxthub/core": "^0.10.8"
54
56
  },
55
57
  "peerDependenciesMeta": {
58
+ "@frigear-nu/email-templates": {
59
+ "optional": true
60
+ },
56
61
  "@frigear-nu/menu": {
57
62
  "optional": true
58
63
  },
@@ -64,8 +69,9 @@
64
69
  }
65
70
  },
66
71
  "devDependencies": {
67
- "@frigear-nu/menu": "0.1.0",
68
- "@frigear-nu/widget": "0.1.0",
72
+ "@frigear-nu/email-templates": "0.1.0",
73
+ "@frigear-nu/menu": "0.1.1",
74
+ "@frigear-nu/widget": "0.1.1",
69
75
  "@nuxt/devtools": "^3.4.2",
70
76
  "@nuxt/eslint-config": "^1.17.0",
71
77
  "@nuxt/module-builder": "^1.0.3",