@softure-ai/billing 0.1.7 → 0.1.8

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 (97) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/README.md +75 -16
  3. package/dist/contract.d.ts +19 -0
  4. package/dist/contract.d.ts.map +1 -1
  5. package/dist/contract.js +1 -0
  6. package/dist/contract.js.map +1 -1
  7. package/dist/fields.d.ts +2 -0
  8. package/dist/fields.d.ts.map +1 -1
  9. package/dist/fields.js +2 -0
  10. package/dist/fields.js.map +1 -1
  11. package/dist/index.d.ts +19 -2
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +4 -4
  14. package/dist/index.js.map +1 -1
  15. package/dist/messages/en.d.ts +17 -0
  16. package/dist/messages/en.d.ts.map +1 -1
  17. package/dist/messages/en.js +17 -0
  18. package/dist/messages/en.js.map +1 -1
  19. package/dist/messages/index.d.ts +36 -2
  20. package/dist/messages/index.d.ts.map +1 -1
  21. package/dist/messages/index.js.map +1 -1
  22. package/dist/messages/pl.d.ts.map +1 -1
  23. package/dist/messages/pl.js +17 -0
  24. package/dist/messages/pl.js.map +1 -1
  25. package/dist/next/actions.d.ts +8 -1
  26. package/dist/next/actions.d.ts.map +1 -1
  27. package/dist/next/actions.js +37 -1
  28. package/dist/next/actions.js.map +1 -1
  29. package/dist/next/index.d.ts +1 -1
  30. package/dist/next/index.d.ts.map +1 -1
  31. package/dist/next/index.js +1 -1
  32. package/dist/next/index.js.map +1 -1
  33. package/dist/next/pages.d.ts +13 -3
  34. package/dist/next/pages.d.ts.map +1 -1
  35. package/dist/next/pages.js +25 -8
  36. package/dist/next/pages.js.map +1 -1
  37. package/dist/schema.d.ts +109 -0
  38. package/dist/schema.d.ts.map +1 -1
  39. package/dist/schema.js +10 -2
  40. package/dist/schema.js.map +1 -1
  41. package/dist/scripts/entitlement-scripts.d.ts +2 -0
  42. package/dist/scripts/entitlement-scripts.d.ts.map +1 -1
  43. package/dist/scripts/entitlement-scripts.js +17 -5
  44. package/dist/scripts/entitlement-scripts.js.map +1 -1
  45. package/dist/server/entitlements.d.ts +23 -6
  46. package/dist/server/entitlements.d.ts.map +1 -1
  47. package/dist/server/entitlements.js +37 -6
  48. package/dist/server/entitlements.js.map +1 -1
  49. package/dist/server/grants.d.ts +13 -2
  50. package/dist/server/grants.d.ts.map +1 -1
  51. package/dist/server/grants.js +11 -2
  52. package/dist/server/grants.js.map +1 -1
  53. package/dist/server/health.d.ts.map +1 -1
  54. package/dist/server/health.js +2 -1
  55. package/dist/server/health.js.map +1 -1
  56. package/dist/server/index.d.ts +3 -2
  57. package/dist/server/index.d.ts.map +1 -1
  58. package/dist/server/index.js +1 -0
  59. package/dist/server/index.js.map +1 -1
  60. package/dist/server/privacy.d.ts +9 -0
  61. package/dist/server/privacy.d.ts.map +1 -1
  62. package/dist/server/privacy.js +19 -6
  63. package/dist/server/privacy.js.map +1 -1
  64. package/dist/server/trials.d.ts +22 -0
  65. package/dist/server/trials.d.ts.map +1 -0
  66. package/dist/server/trials.js +60 -0
  67. package/dist/server/trials.js.map +1 -0
  68. package/dist/ui/index.d.ts +1 -0
  69. package/dist/ui/index.d.ts.map +1 -1
  70. package/dist/ui/index.js +1 -0
  71. package/dist/ui/index.js.map +1 -1
  72. package/dist/ui/trial-form.d.ts +16 -0
  73. package/dist/ui/trial-form.d.ts.map +1 -0
  74. package/dist/ui/trial-form.js +25 -0
  75. package/dist/ui/trial-form.js.map +1 -0
  76. package/migrations/0010_record_trial_extensions_and_index_foreign_keys.sql +27 -0
  77. package/module.json +2 -2
  78. package/package.json +1 -1
  79. package/src/contract.ts +28 -0
  80. package/src/fields.ts +2 -0
  81. package/src/index.ts +7 -3
  82. package/src/messages/en.ts +17 -0
  83. package/src/messages/index.ts +2 -2
  84. package/src/messages/pl.ts +17 -0
  85. package/src/next/actions.ts +35 -2
  86. package/src/next/index.ts +9 -1
  87. package/src/next/pages.tsx +41 -6
  88. package/src/schema.ts +11 -2
  89. package/src/scripts/entitlement-scripts.ts +18 -5
  90. package/src/server/entitlements.ts +60 -6
  91. package/src/server/grants.ts +24 -3
  92. package/src/server/health.ts +2 -1
  93. package/src/server/index.ts +3 -0
  94. package/src/server/privacy.ts +29 -6
  95. package/src/server/trials.ts +70 -0
  96. package/src/ui/index.ts +1 -0
  97. package/src/ui/trial-form.tsx +80 -0
@@ -1,4 +1,4 @@
1
- import type { AdminActionErrorCode, BillingFormErrorCode, GrantFormErrorCode, PaymentFormErrorCode } from "../contract.js";
1
+ import type { AdminActionErrorCode, BillingFormErrorCode, GrantFormErrorCode, PaymentFormErrorCode, TrialFormErrorCode } from "../contract.js";
2
2
  import { en } from "./en.js";
3
3
  export type BillingMessages = typeof en;
4
4
  /** Complete default dictionaries; apps pass partial overrides per locale. */
@@ -76,6 +76,7 @@ export declare const billingMessages: {
76
76
  empty: string;
77
77
  };
78
78
  payment: {
79
+ heading: string;
79
80
  title: string;
80
81
  lead: string;
81
82
  plansLabel: string;
@@ -97,6 +98,7 @@ export declare const billingMessages: {
97
98
  lifetime: string;
98
99
  };
99
100
  admin: {
101
+ heading: string;
100
102
  title: string;
101
103
  lead: string;
102
104
  email: string;
@@ -106,6 +108,15 @@ export declare const billingMessages: {
106
108
  granted: string;
107
109
  grantedUntil: string;
108
110
  noPlans: string;
111
+ trial: {
112
+ title: string;
113
+ lead: string;
114
+ email: string;
115
+ lastDay: string;
116
+ submit: string;
117
+ pending: string;
118
+ extended: string;
119
+ };
109
120
  requests: {
110
121
  title: string;
111
122
  lead: string;
@@ -149,6 +160,10 @@ export declare const billingMessages: {
149
160
  revoke: string;
150
161
  revoking: string;
151
162
  revokeLabel: string;
163
+ trialExtended: string;
164
+ trialUntil: string;
165
+ extendedOn: string;
166
+ trialWasUntil: string;
152
167
  };
153
168
  };
154
169
  errors: {
@@ -165,6 +180,8 @@ export declare const billingMessages: {
165
180
  lifetime_active: string;
166
181
  request_closed: string;
167
182
  grant_revoked: string;
183
+ trial_not_extended: string;
184
+ day_invalid: string;
168
185
  };
169
186
  security: {
170
187
  rate_limited: string;
@@ -251,6 +268,7 @@ export declare const billingMessages: {
251
268
  empty: string;
252
269
  };
253
270
  payment: {
271
+ heading: string;
254
272
  title: string;
255
273
  lead: string;
256
274
  plansLabel: string;
@@ -272,6 +290,7 @@ export declare const billingMessages: {
272
290
  lifetime: string;
273
291
  };
274
292
  admin: {
293
+ heading: string;
275
294
  title: string;
276
295
  lead: string;
277
296
  email: string;
@@ -281,6 +300,15 @@ export declare const billingMessages: {
281
300
  granted: string;
282
301
  grantedUntil: string;
283
302
  noPlans: string;
303
+ trial: {
304
+ title: string;
305
+ lead: string;
306
+ email: string;
307
+ lastDay: string;
308
+ submit: string;
309
+ pending: string;
310
+ extended: string;
311
+ };
284
312
  requests: {
285
313
  title: string;
286
314
  lead: string;
@@ -324,6 +352,10 @@ export declare const billingMessages: {
324
352
  revoke: string;
325
353
  revoking: string;
326
354
  revokeLabel: string;
355
+ trialExtended: string;
356
+ trialUntil: string;
357
+ extendedOn: string;
358
+ trialWasUntil: string;
327
359
  };
328
360
  };
329
361
  errors: {
@@ -340,6 +372,8 @@ export declare const billingMessages: {
340
372
  lifetime_active: string;
341
373
  request_closed: string;
342
374
  grant_revoked: string;
375
+ trial_not_extended: string;
376
+ day_invalid: string;
343
377
  };
344
378
  security: {
345
379
  rate_limited: string;
@@ -355,5 +389,5 @@ export declare const billingMessages: {
355
389
  };
356
390
  };
357
391
  /** The copy for an error code; an unknown code gets the generic failure. */
358
- export declare function getBillingErrorMessage(messages: BillingMessages, code: BillingFormErrorCode | PaymentFormErrorCode | GrantFormErrorCode | AdminActionErrorCode): string;
392
+ export declare function getBillingErrorMessage(messages: BillingMessages, code: BillingFormErrorCode | PaymentFormErrorCode | GrantFormErrorCode | TrialFormErrorCode | AdminActionErrorCode): string;
359
393
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/messages/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC3H,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAG7B,MAAM,MAAM,eAAe,GAAG,OAAO,EAAE,CAAC;AAExC,6EAA6E;AAC7E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAa,CAAC;AAE1C,4EAA4E;AAC5E,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,oBAAoB,GAAG,MAAM,CAOvK"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/messages/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAC/I,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAG7B,MAAM,MAAM,eAAe,GAAG,OAAO,EAAE,CAAC;AAExC,6EAA6E;AAC7E,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAAa,CAAC;AAE1C,4EAA4E;AAC5E,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,eAAe,EAAE,IAAI,EAAE,oBAAoB,GAAG,oBAAoB,GAAG,kBAAkB,GAAG,kBAAkB,GAAG,oBAAoB,GAAG,MAAM,CAO5L"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/messages/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAI7B,6EAA6E;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAE1C,4EAA4E;AAC5E,MAAM,UAAU,sBAAsB,CAAC,QAAyB,EAAE,IAA6F;IAC7J,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAoE,CAAC;IAC7F,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AAC1H,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/messages/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAC7B,OAAO,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAI7B,6EAA6E;AAC7E,MAAM,CAAC,MAAM,eAAe,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;AAE1C,4EAA4E;AAC5E,MAAM,UAAU,sBAAsB,CAAC,QAAyB,EAAE,IAAkH;IAClL,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;IAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAoE,CAAC;IAC7F,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,OAAO,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC;AAC1H,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"pl.d.ts","sourceRoot":"","sources":["../../src/messages/pl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAElC,eAAO,MAAM,EAAE,EAAE,OAAO,EAqJvB,CAAC"}
1
+ {"version":3,"file":"pl.d.ts","sourceRoot":"","sources":["../../src/messages/pl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAElC,eAAO,MAAM,EAAE,EAAE,OAAO,EAsKvB,CAAC"}
@@ -46,6 +46,7 @@ export const pl = {
46
46
  empty: "Nie ma jeszcze dostępnych planów.",
47
47
  },
48
48
  payment: {
49
+ heading: "Płatność",
49
50
  title: "Wybierz plan",
50
51
  lead: "Wybierz plan dla siebie. Płatny dostęp zaczyna się, gdy skończy się obecny.",
51
52
  plansLabel: "Plany",
@@ -67,6 +68,7 @@ export const pl = {
67
68
  lifetime: "Masz dostęp dożywotni: nie ma już za co płacić.",
68
69
  },
69
70
  admin: {
71
+ heading: "Rozliczenia",
70
72
  title: "Nadaj dostęp",
71
73
  lead: "Nadaj plan kontu, gdy wpłynie płatność. Płatny okres zaczyna się, gdy skończy się obecny dostęp konta.",
72
74
  email: "E-mail konta",
@@ -76,6 +78,15 @@ export const pl = {
76
78
  granted: "{email} ma teraz {plan}.",
77
79
  grantedUntil: "{email} ma teraz {plan}, z dostępem do {date}.",
78
80
  noPlans: "Nie ma planów do nadania: dodaj je w billing({ plans }).",
81
+ trial: {
82
+ title: "Przedłuż okres próbny",
83
+ lead: "Daj kontu dłuższy okres próbny za darmo, np. zaproszonej osobie. To nie jest płatny dostęp: konto zachowuje opłacone okresy, a okres próbny trwa do końca wybranego dnia.",
84
+ email: "E-mail konta do przedłużenia",
85
+ lastDay: "Ostatni dzień okresu próbnego",
86
+ submit: "Przedłuż okres próbny",
87
+ pending: "Przedłużanie…",
88
+ extended: "{email} ma teraz okres próbny do {date}.",
89
+ },
79
90
  requests: {
80
91
  title: "Prośby o fakturę",
81
92
  lead: "Prośby wysłane ze strony płatności. Nadaj plan, gdy faktura zostanie opłacona, albo odrzuć prośbę.",
@@ -119,6 +130,10 @@ export const pl = {
119
130
  revoke: "Cofnij",
120
131
  revoking: "Cofanie…",
121
132
  revokeLabel: "Cofnij {plan} nadany {date}",
133
+ trialExtended: "Przedłużony okres próbny",
134
+ trialUntil: "Okres próbny do {date}",
135
+ extendedOn: "Przedłużono {date}",
136
+ trialWasUntil: "Wcześniej okres próbny do {date}",
122
137
  },
123
138
  },
124
139
  errors: {
@@ -135,6 +150,8 @@ export const pl = {
135
150
  lifetime_active: "To konto ma już dostęp dożywotni: nie ma za co płacić ani czego nadawać.",
136
151
  request_closed: "Ta prośba została już obsłużona lub odrzucona.",
137
152
  grant_revoked: "Ten dostęp został już cofnięty.",
153
+ trial_not_extended: "Okres próbny trwa już do tego dnia albo dłużej.",
154
+ day_invalid: "Wpisz datę, np. 2026-11-30.",
138
155
  },
139
156
  security: {
140
157
  rate_limited: "Zbyt wiele prób. Spróbuj później.",
@@ -1 +1 @@
1
- {"version":3,"file":"pl.js","sourceRoot":"","sources":["../../src/messages/pl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pl.js","sourceRoot":"","sources":["../../src/messages/pl.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { AdminActionState, GrantFormState, PaymentFormState } from "../contract.js";
1
+ import type { AdminActionState, GrantFormState, PaymentFormState, TrialFormState } from "../contract.js";
2
2
  /**
3
3
  * Starts paying for the plan of the form. Without a session it redirects to the login page and
4
4
  * back to the payment page. A hosted checkout is a redirect; a manual request answers `requested`.
@@ -10,6 +10,13 @@ export declare function startPaymentAction(_previous: PaymentFormState, formData
10
10
  * before the form is read. An account with lifetime access is refused.
11
11
  */
12
12
  export declare function grantPlanAction(_previous: GrantFormState, formData: FormData): Promise<GrantFormState>;
13
+ /**
14
+ * Extends the trial of the account with the form's email through the form's last day (the trial
15
+ * ends at the start of the next day in the app's time zone) and records it in the account's history.
16
+ * Only for the role of `billing({ adminRole })`, checked from the session before the form is read.
17
+ * Never writes paid access.
18
+ */
19
+ export declare function extendTrialAction(_previous: TrialFormState, formData: FormData): Promise<TrialFormState>;
13
20
  /** Grants the plan of the form's open request and closes it (admin role). */
14
21
  export declare function grantRequestAction(_previous: AdminActionState, formData: FormData): Promise<AdminActionState>;
15
22
  /** Closes the form's open request without a grant (admin role). */
@@ -1 +1 @@
1
- {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/next/actions.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAwB,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAwB/G;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAiBnH;AAWD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAiC5G;AAyBD,6EAA6E;AAC7E,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAMnH;AAED,mEAAmE;AACnE,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAErH;AAED,oFAAoF;AACpF,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAMlH;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAelH"}
1
+ {"version":3,"file":"actions.d.ts","sourceRoot":"","sources":["../../src/next/actions.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAwB,gBAAgB,EAAE,cAAc,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAyB/H;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAiBnH;AAWD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAiC5G;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,CAuB9G;AAyBD,6EAA6E;AAC7E,wBAAsB,kBAAkB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAMnH;AAED,mEAAmE;AACnE,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAErH;AAED,oFAAoF;AACpF,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAMlH;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAelH"}
@@ -4,12 +4,14 @@ import { errorLogLabel, formatMessage, safeError } from "@softure-ai/core";
4
4
  import { getSoftureConfig } from "@softure-ai/core/next";
5
5
  import { revalidatePath } from "next/cache";
6
6
  import { redirect } from "next/navigation";
7
- import { ACCOUNT_PARAM, EMAIL_FIELD, GRANT_FIELD, INVOICE_FIELDS, PLAN_FIELD, REQUEST_FIELD } from "../fields.js";
7
+ import { getStartOfDay, parseDay } from "../calendar.js";
8
+ import { ACCOUNT_PARAM, EMAIL_FIELD, GRANT_FIELD, INVOICE_FIELDS, PLAN_FIELD, REQUEST_FIELD, TRIAL_LAST_DAY_FIELD } from "../fields.js";
8
9
  import { findPlan, getLocalizedText } from "../plans.js";
9
10
  import { grantPaymentRequest, grantPlanManually, revokeManualGrant } from "../server/grants.js";
10
11
  import { getBillingMessages, getBillingOptions, getBillingRoutes } from "../server/options.js";
11
12
  import { findAccountByEmail, getBillingPlans, startPayment } from "../server/plans.js";
12
13
  import { dismissPaymentRequest } from "../server/requests.js";
14
+ import { extendTrialManually } from "../server/trials.js";
13
15
  import { formatLastDay } from "../ui/format.js";
14
16
  import { getBillingContext } from "./context.js";
15
17
  /** Longer values are cut: the server functions refuse them anyway, and nothing huge is echoed back. */
@@ -94,6 +96,40 @@ export async function grantPlanAction(_previous, formData) {
94
96
  const error = result.error === "billing.request_closed" ? "billing.account_unknown" : result.error;
95
97
  return { status: "error", error, ...echo };
96
98
  }
99
+ /**
100
+ * Extends the trial of the account with the form's email through the form's last day (the trial
101
+ * ends at the start of the next day in the app's time zone) and records it in the account's history.
102
+ * Only for the role of `billing({ adminRole })`, checked from the session before the form is read.
103
+ * Never writes paid access.
104
+ */
105
+ export async function extendTrialAction(_previous, formData) {
106
+ const config = getSoftureConfig();
107
+ const admin = await authorizeAdmin(config);
108
+ if (!admin.ok)
109
+ return { status: "error", error: admin.error };
110
+ const email = readText(formData, EMAIL_FIELD).trim();
111
+ const lastDay = readText(formData, TRIAL_LAST_DAY_FIELD).trim();
112
+ const echo = { email, lastDay };
113
+ const day = parseDay(lastDay);
114
+ if (day === null)
115
+ return { status: "error", error: "billing.day_invalid", ...echo };
116
+ const until = getStartOfDay(day + 1, config.timezone);
117
+ try {
118
+ const ctx = await getBillingContext(config);
119
+ const account = await findAccountByEmail(ctx, email);
120
+ if (account === null)
121
+ return { status: "error", error: "billing.account_unknown", ...echo };
122
+ const result = await extendTrialManually(ctx, { userId: account.id, until, adminId: admin.value.id });
123
+ if (!result.ok)
124
+ return { status: "error", error: result.error, ...echo };
125
+ refreshAdminPage(config);
126
+ const notice = formatMessage(getBillingMessages(config).admin.trial.extended, { email: account.email, date: formatLastDay(until, config.locale, config.timezone) });
127
+ return { status: "extended", notice };
128
+ }
129
+ catch (error) {
130
+ return { status: "error", error: reportFailure("extending a trial", error), ...echo };
131
+ }
132
+ }
97
133
  /** Runs one admin change on the row the form names: role first, then the change, then a refresh. */
98
134
  async function runAdminChange(formData, { operation, field, change }) {
99
135
  const config = getSoftureConfig();
@@ -1 +1 @@
1
- {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/next/actions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actions.js","sourceRoot":"","sources":["../../src/next/actions.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export { CurrentAccessBadge, type CurrentAccessBadgeProps, CurrentAccessNotice, type CurrentAccessNoticeProps } from "./access.js";
2
- export { dismissRequestAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction } from "./actions.js";
2
+ export { dismissRequestAction, extendTrialAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction, } from "./actions.js";
3
3
  export { getBillingContext } from "./context.js";
4
4
  export { getCurrentEntitlement, requireWriteAccess, type WriteAccess } from "./current-entitlement.js";
5
5
  export { BillingAdminPage, type BillingAdminPageProps, PaymentPage, type PaymentPageProps } from "./pages.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACnI,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,mBAAmB,EAAE,KAAK,wBAAwB,EAAE,MAAM,aAAa,CAAC;AACnI,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,KAAK,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -3,7 +3,7 @@
3
3
  // their actions, and the Stripe webhook route, wired to the registered configuration
4
4
  // (docs/02-module-standard.md §8).
5
5
  export { CurrentAccessBadge, CurrentAccessNotice } from "./access.js";
6
- export { dismissRequestAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction } from "./actions.js";
6
+ export { dismissRequestAction, extendTrialAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction, } from "./actions.js";
7
7
  export { getBillingContext } from "./context.js";
8
8
  export { getCurrentEntitlement, requireWriteAccess } from "./current-entitlement.js";
9
9
  export { BillingAdminPage, PaymentPage } from "./pages.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,+FAA+F;AAC/F,qFAAqF;AACrF,mCAAmC;AACnC,OAAO,EAAE,kBAAkB,EAAgC,mBAAmB,EAAiC,MAAM,aAAa,CAAC;AACnI,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,eAAe,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACnJ,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAoB,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAA8B,WAAW,EAAyB,MAAM,YAAY,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/next/index.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,+FAA+F;AAC/F,qFAAqF;AACrF,mCAAmC;AACnC,OAAO,EAAE,kBAAkB,EAAgC,mBAAmB,EAAiC,MAAM,aAAa,CAAC;AACnI,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,kBAAkB,EAClB,iBAAiB,EACjB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAoB,MAAM,0BAA0B,CAAC;AACvG,OAAO,EAAE,gBAAgB,EAA8B,WAAW,EAAyB,MAAM,YAAY,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,OAAO,EAAqB,MAAM,cAAc,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC"}
@@ -1,6 +1,11 @@
1
1
  type SearchParams = Promise<Record<string, string | string[] | undefined>>;
2
2
  export interface PaymentPageProps {
3
3
  readonly searchParams?: SearchParams;
4
+ /**
5
+ * The page's `<h1>`, first in `<main>`: `payment.heading` of the messages by default, this text
6
+ * instead, or none with `null` (for an app whose frame renders the page heading).
7
+ */
8
+ readonly heading?: string | null;
4
9
  }
5
10
  /**
6
11
  * The plans and, with `?plan=<id>`, the order: the plan's price and the provider's form (the
@@ -9,16 +14,21 @@ export interface PaymentPageProps {
9
14
  * A hosted checkout comes back with `?checkout=success` or `?checkout=cancelled`, shown as a notice
10
15
  * (the access itself changes when the provider's webhook confirms the payment).
11
16
  */
12
- export declare function PaymentPage({ searchParams }: PaymentPageProps): Promise<import("react").JSX.Element>;
17
+ export declare function PaymentPage({ searchParams, heading }: PaymentPageProps): Promise<import("react").JSX.Element>;
13
18
  export interface BillingAdminPageProps {
14
19
  readonly searchParams?: SearchParams;
20
+ /**
21
+ * The page's `<h1>`, first in `<main>`: `admin.heading` of the messages by default, this text
22
+ * instead, or none with `null` (for an app whose frame renders the page heading).
23
+ */
24
+ readonly heading?: string | null;
15
25
  }
16
26
  /**
17
27
  * The admin page of manual payments: the open invoice requests (grant or dismiss each), the grant
18
- * form, and an account's history (`?account=<id>`, reached by the email lookup or a request's
28
+ * form, the trial form (a free, longer trial), and an account's history (`?account=<id>`, reached by the email lookup or a request's
19
29
  * link) with its access and a revoke button on each active manual grant. Anyone without the role
20
30
  * of `billing({ adminRole })`, signed in or not, gets Next's "not found".
21
31
  */
22
- export declare function BillingAdminPage({ searchParams }: BillingAdminPageProps): Promise<import("react").JSX.Element>;
32
+ export declare function BillingAdminPage({ searchParams, heading }: BillingAdminPageProps): Promise<import("react").JSX.Element>;
23
33
  export {};
24
34
  //# sourceMappingURL=pages.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../src/next/pages.tsx"],"names":[],"mappings":"AA+BA,KAAK,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAiBD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,EAAE,YAAY,EAAE,EAAE,gBAAgB,wCAqEnE;AAqFD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;CACtC;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,YAAY,EAAE,EAAE,qBAAqB,wCA2C7E"}
1
+ {"version":3,"file":"pages.d.ts","sourceRoot":"","sources":["../../src/next/pages.tsx"],"names":[],"mappings":"AAgCA,KAAK,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC;AAE3E,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAkBD;;;;;;GAMG;AACH,wBAAsB,WAAW,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,gBAAgB,wCAsE5E;AAuGD,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IACrC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,qBAAqB,wCA+CtF"}
@@ -22,13 +22,15 @@ import { AccountLookup, GrantHistory } from "../ui/grant-history.js";
22
22
  import { PaymentForm } from "../ui/payment-form.js";
23
23
  import { PaymentRequestList } from "../ui/payment-requests.js";
24
24
  import { PricingTiles } from "../ui/pricing-tiles.js";
25
+ import { TrialForm } from "../ui/trial-form.js";
25
26
  import { CurrentAccessBadge } from "./access.js";
26
- import { dismissRequestAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction } from "./actions.js";
27
+ import { dismissRequestAction, extendTrialAction, findAccountAction, grantPlanAction, grantRequestAction, revokeGrantAction, startPaymentAction } from "./actions.js";
27
28
  import { getBillingContext } from "./context.js";
28
29
  import { getCurrentEntitlement } from "./current-entitlement.js";
29
30
  import { getPlanPaymentHref } from "./pricing.js";
30
31
  const LAYOUT_CLASS = "sft:mx-auto sft:box-border sft:flex sft:w-full sft:flex-col sft:gap-4 sft:sm:max-w-md sft:px-4 sft:py-4";
31
32
  const STACK_CLASS = "sft:flex sft:flex-col sft:gap-4";
33
+ const HEADING_CLASS = "sft:m-0 sft:font-heading sft:text-2xl sft:font-bold sft:text-foreground";
32
34
  const LEAD_CLASS = "sft:m-0 sft:font-sans sft:text-sm sft:text-muted";
33
35
  const NOTICE_CLASS = "sft:m-0 sft:rounded-control sft:border sft:border-border-strong sft:bg-surface-raised sft:px-4 sft:py-2.5 sft:font-sans sft:text-sm sft:text-foreground";
34
36
  async function readParam(searchParams, name) {
@@ -45,7 +47,7 @@ function isCheckoutResult(value) {
45
47
  * A hosted checkout comes back with `?checkout=success` or `?checkout=cancelled`, shown as a notice
46
48
  * (the access itself changes when the provider's webhook confirms the payment).
47
49
  */
48
- export async function PaymentPage({ searchParams }) {
50
+ export async function PaymentPage({ searchParams, heading }) {
49
51
  const config = getSoftureConfig();
50
52
  const route = getBillingRoutes(config).payment;
51
53
  const planId = await readParam(searchParams, PLAN_FIELD);
@@ -61,7 +63,11 @@ export async function PaymentPage({ searchParams }) {
61
63
  const entitlement = await getCurrentEntitlement();
62
64
  // Lifetime access leaves nothing to pay for: no order form (startPayment refuses it too).
63
65
  const hasLifetime = entitlement?.status === "paid" && entitlement.endsAt === null;
64
- return (_jsxs("main", { className: LAYOUT_CLASS, children: [_jsx(Card, { title: copy.title, subtitle: copy.lead, children: _jsxs("div", { className: STACK_CLASS, children: [checkoutNotice === null ? null : (_jsx("p", { role: "status", className: NOTICE_CLASS, "data-checkout": checkout, children: checkoutNotice })), _jsx("div", { children: _jsx(CurrentAccessBadge, {}) }), hasLifetime ? (_jsx("p", { role: "status", className: NOTICE_CLASS, "data-lifetime": "true", children: copy.lifetime })) : null, _jsx(PricingTiles, { plans: plans, messages: messages, locale: config.locale, getPlanHref: (candidate) => getPlanPaymentHref(route, candidate.id), selectedPlanId: plan?.id, label: copy.plansLabel })] }) }), plan === undefined || hasLifetime ? null : (_jsx(Card, { title: copy.orderTitle, subtitle: formatMessage(copy.orderLead, { plan: planName, price: formatPrice(plan.price, config.locale), period: formatPeriod(plan.period, config.locale, messages) }), children: _jsxs("div", { className: STACK_CLASS, children: [provider.collectsInvoiceDetails ? _jsx("p", { className: LEAD_CLASS, children: formatMessage(copy.invoiceLead, { email: user.email }) }) : null, _jsx(PaymentForm, { action: startPaymentAction, planId: plan.id, planName: planName, email: user.email, collectsInvoiceDetails: provider.collectsInvoiceDetails, messages: messages, locale: config.locale }), _jsx("div", { children: _jsx(ButtonLink, { href: route, variant: "ghost", size: "sm", children: copy.changePlan }) })] }) }))] }));
66
+ return (_jsxs("main", { className: LAYOUT_CLASS, children: [_jsx(PageHeading, { text: heading === undefined ? copy.heading : heading }), _jsx(Card, { title: copy.title, subtitle: copy.lead, children: _jsxs("div", { className: STACK_CLASS, children: [checkoutNotice === null ? null : (_jsx("p", { role: "status", className: NOTICE_CLASS, "data-checkout": checkout, children: checkoutNotice })), _jsx("div", { children: _jsx(CurrentAccessBadge, {}) }), hasLifetime ? (_jsx("p", { role: "status", className: NOTICE_CLASS, "data-lifetime": "true", children: copy.lifetime })) : null, _jsx(PricingTiles, { plans: plans, messages: messages, locale: config.locale, getPlanHref: (candidate) => getPlanPaymentHref(route, candidate.id), selectedPlanId: plan?.id, label: copy.plansLabel })] }) }), plan === undefined || hasLifetime ? null : (_jsx(Card, { title: copy.orderTitle, subtitle: formatMessage(copy.orderLead, { plan: planName, price: formatPrice(plan.price, config.locale), period: formatPeriod(plan.period, config.locale, messages) }), children: _jsxs("div", { className: STACK_CLASS, children: [provider.collectsInvoiceDetails ? _jsx("p", { className: LEAD_CLASS, children: formatMessage(copy.invoiceLead, { email: user.email }) }) : null, _jsx(PaymentForm, { action: startPaymentAction, planId: plan.id, planName: planName, email: user.email, collectsInvoiceDetails: provider.collectsInvoiceDetails, messages: messages, locale: config.locale }), _jsx("div", { children: _jsx(ButtonLink, { href: route, variant: "ghost", size: "sm", children: copy.changePlan }) })] }) }))] }));
67
+ }
68
+ /** The page's `<h1>`, or nothing for `null`. */
69
+ function PageHeading({ text }) {
70
+ return text === null ? null : _jsx("h1", { className: HEADING_CLASS, children: text });
65
71
  }
66
72
  /** The plan's name in the app's locale, or its id when the config no longer has it. */
67
73
  function getPlanName(plans, planId, locale) {
@@ -105,8 +111,19 @@ function describeGrant(grant, { config, messages }) {
105
111
  function toHistoryRow(entry, context) {
106
112
  const { config, messages, plans } = context;
107
113
  const copy = messages.admin.history;
108
- const plan = getPlanName(plans, entry.planId, config.locale);
109
114
  const formatDate = (date) => formatDay(date, config.locale, config.timezone);
115
+ if (entry.source === "trial") {
116
+ const formatEnd = (end) => formatLastDay(end, config.locale, config.timezone);
117
+ return {
118
+ id: entry.id,
119
+ title: copy.trialExtended,
120
+ statusText: formatMessage(copy.trialUntil, { date: formatEnd(entry.endsAt) }),
121
+ isCurrent: entry.endsAt > context.now,
122
+ details: [formatMessage(copy.extendedOn, { date: formatDate(entry.at) }), formatMessage(copy.trialWasUntil, { date: formatEnd(entry.previousEndsAt) })],
123
+ revokeLabel: null,
124
+ };
125
+ }
126
+ const plan = getPlanName(plans, entry.planId, config.locale);
110
127
  if (entry.source === "manual") {
111
128
  const isActive = entry.status === "active";
112
129
  return {
@@ -144,23 +161,23 @@ function toHistoryRow(entry, context) {
144
161
  }
145
162
  /**
146
163
  * The admin page of manual payments: the open invoice requests (grant or dismiss each), the grant
147
- * form, and an account's history (`?account=<id>`, reached by the email lookup or a request's
164
+ * form, the trial form (a free, longer trial), and an account's history (`?account=<id>`, reached by the email lookup or a request's
148
165
  * link) with its access and a revoke button on each active manual grant. Anyone without the role
149
166
  * of `billing({ adminRole })`, signed in or not, gets Next's "not found".
150
167
  */
151
- export async function BillingAdminPage({ searchParams }) {
168
+ export async function BillingAdminPage({ searchParams, heading }) {
152
169
  const config = getSoftureConfig();
153
170
  await requireRole(getBillingOptions(config).adminRole);
154
171
  const messages = getBillingMessages(config);
155
172
  const plans = getBillingPlans(config);
156
- const context = { config, messages, plans };
157
173
  const ctx = await getBillingContext(config);
174
+ const context = { config, messages, plans, now: ctx.clock.now() };
158
175
  const requests = (await listOpenRequests(ctx)).map((request) => toRequestRow(request, context));
159
176
  const accountId = await readParam(searchParams, ACCOUNT_PARAM);
160
177
  const account = accountId === undefined ? null : await findAccountById(ctx, accountId);
161
178
  const entitlement = account === null ? null : await getEntitlement(ctx, account.id);
162
179
  const history = account === null ? [] : (await getAccountHistory(ctx, account.id)).map((entry) => toHistoryRow(entry, context));
163
180
  const planOptions = plans.map((plan) => ({ value: plan.id, label: getLocalizedText(plan.name, config.locale) }));
164
- return (_jsxs("main", { className: LAYOUT_CLASS, children: [_jsx(Card, { title: messages.admin.requests.title, subtitle: messages.admin.requests.lead, children: _jsx(PaymentRequestList, { requests: requests, grantAction: grantRequestAction, dismissAction: dismissRequestAction, messages: messages }) }), _jsx(Card, { title: messages.admin.title, subtitle: messages.admin.lead, children: planOptions.length === 0 ? (_jsx(EmptyState, { title: messages.admin.noPlans })) : (_jsx(GrantForm, { action: grantPlanAction, plans: planOptions, messages: messages, locale: config.locale })) }), _jsx(Card, { title: messages.admin.history.title, subtitle: messages.admin.history.lead, children: _jsxs("div", { className: STACK_CLASS, children: [_jsx(AccountLookup, { action: findAccountAction, messages: messages, locale: config.locale }), account === null ? null : (_jsxs("section", { className: STACK_CLASS, "aria-label": formatMessage(messages.admin.history.accountTitle, { email: account.email }), children: [_jsx("p", { className: LEAD_CLASS, children: formatMessage(messages.admin.history.accountTitle, { email: account.email }) }), entitlement === null ? null : (_jsx("div", { children: _jsx(AccessBadge, { entitlement: entitlement, messages: messages, locale: config.locale, timezone: config.timezone }) })), _jsx(GrantHistory, { rows: history, revokeAction: revokeGrantAction, messages: messages })] }))] }) })] }));
181
+ return (_jsxs("main", { className: LAYOUT_CLASS, children: [_jsx(PageHeading, { text: heading === undefined ? messages.admin.heading : heading }), _jsx(Card, { title: messages.admin.requests.title, subtitle: messages.admin.requests.lead, children: _jsx(PaymentRequestList, { requests: requests, grantAction: grantRequestAction, dismissAction: dismissRequestAction, messages: messages }) }), _jsx(Card, { title: messages.admin.title, subtitle: messages.admin.lead, children: planOptions.length === 0 ? (_jsx(EmptyState, { title: messages.admin.noPlans })) : (_jsx(GrantForm, { action: grantPlanAction, plans: planOptions, messages: messages, locale: config.locale })) }), _jsx(Card, { title: messages.admin.trial.title, subtitle: messages.admin.trial.lead, children: _jsx(TrialForm, { action: extendTrialAction, messages: messages, locale: config.locale }) }), _jsx(Card, { title: messages.admin.history.title, subtitle: messages.admin.history.lead, children: _jsxs("div", { className: STACK_CLASS, children: [_jsx(AccountLookup, { action: findAccountAction, messages: messages, locale: config.locale }), account === null ? null : (_jsxs("section", { className: STACK_CLASS, "aria-label": formatMessage(messages.admin.history.accountTitle, { email: account.email }), children: [_jsx("p", { className: LEAD_CLASS, children: formatMessage(messages.admin.history.accountTitle, { email: account.email }) }), entitlement === null ? null : (_jsx("div", { children: _jsx(AccessBadge, { entitlement: entitlement, messages: messages, locale: config.locale, timezone: config.timezone }) })), _jsx(GrantHistory, { rows: history, revokeAction: revokeGrantAction, messages: messages })] }))] }) })] }));
165
182
  }
166
183
  //# sourceMappingURL=pages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../src/next/pages.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pages.js","sourceRoot":"","sources":["../../src/next/pages.tsx"],"names":[],"mappings":"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"}