@kernhq/module-billing 0.5.8 → 0.5.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAWvB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,mBAAmB,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AAiBnD,eAAO,MAAM,aAAa,gHAkRxB,CAAA;AAEF,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAWvB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,mBAAmB,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AAiBnD,eAAO,MAAM,aAAa,gHAwRxB,CAAA;AAEF,eAAe,aAAa,CAAA"}
@@ -214,6 +214,13 @@ export const billingModule = defineServerModule({
214
214
  catch (err) {
215
215
  kernel.log.warn({ err: String(err), workspaceId }, 'billing: reconcile failed');
216
216
  }
217
+ // Invoices a webhook missed — the first one of a subscription used to be lost every time
218
+ try {
219
+ await stripeSvc.backfillInvoices(kernel, workspaceId);
220
+ }
221
+ catch (err) {
222
+ kernel.log.warn({ err: String(err), workspaceId }, 'billing: invoice backfill failed');
223
+ }
217
224
  }
218
225
  },
219
226
  },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AACxC,OAAO,EAAkB,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/D,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,aAAa,EACb,SAAS,EAET,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,aAAa,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAA;AAC9F,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AACnD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAC9E,OAAO,KAAK,YAAY,MAAM,4BAA4B,CAAA;AAC1D,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,SAAS,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,OAAO,MAAM,6BAA6B,CAAA;AACtD,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAC3C,cAAc,aAAa,CAAA;AAC3B,OAAO,KAAK,mBAAmB,MAAM,4BAA4B,CAAA;AACjE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AACnD,OAAO,KAAK,aAAa,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,oBAAoB,MAAM,6BAA6B,CAAA;AACnE,OAAO,KAAK,YAAY,MAAM,qBAAqB,CAAA;AAEnD;;;;GAIG;AACH,SAAS,cAAc,CAAC,SAAoB;IAC1C,IAAI,SAAS,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,aAAa;QAAE,MAAM,SAAS,CAAC,SAAS,EAAE,CAAA;AAC3F,CAAC;AAED,0FAA0F;AAC1F,KAAK,UAAU,eAAe,CAAC,MAAc;IAC3C,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,CAAwB,sBAAsB,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAA;IAChG,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;AAC9B,CAAC;AAED,MAAM,CAAC,MAAM,aAAa,GAAG,kBAAkB,CAAC;IAC9C,UAAU,EAAE,YAAY,CAAC;QACvB,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,cAAc,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACxC,WAAW,EAAE,oFAAoF;QACjG,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,kBAAkB;QAC/B,MAAM,EAAE,aAAa;KACtB,CAAC;IACF,MAAM;IACN,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,kBAAkB,CAAC;IACnF,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE,aAAa;IAErB;;;;;;;;;;;;OAYG;IACH,UAAU,EAAE;QACV;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,IAAI;YACT,2FAA2F;YAC3F,qEAAqE;YACrE,SAAS,EAAE,IAAI,GAAG,IAAI;YACtB,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE;gBAClD,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAA;gBACrD,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,CAAC,SAAS;oBAC7C,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qCAAqC,EAAE,CAAC,CAAA;gBACjF,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,IAAc,EAAE,SAAS,CAAC,CAAA;oBAC/E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAA;gBACtC,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,uFAAuF;oBACvF,wFAAwF;oBACxF,yFAAyF;oBACzF,uFAAuF;oBACvF,IAAI,GAAG,YAAY,SAAS,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,aAAa,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,CAAC,EAAE,CAAC;wBACxF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,mCAAmC,CAAC,CAAA;wBAC1E,OAAO,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;oBAC3E,CAAC;oBACD;;;;;;;;;;;;uBAYG;oBACH,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,qDAAqD,CAAC,CAAA;oBAC7F,OAAO,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,kCAAkC,EAAE,CAAC,CAAA;gBAC9E,CAAC;YACH,CAAC;SACF;KACF;IAED;;;;OAIG;IACH,MAAM,EAAE,KAAK,EAAE,MAAc,EAAE,EAAE;QAC/B,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,iBAAiB,CAAC,MAAM,CAAC,CAAA;IACjC,CAAC;IAED,UAAU,EAAE;QACV;;;;WAIG;QACH,kBAAkB,EAAE;YAClB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;YAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;gBAC9C,cAAc,CAAC,SAAS,CAAC,CAAA;gBACzB,OAAO,YAAY,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;YACxD,CAAC;SACF;QACD,wFAAwF;QACxF,iBAAiB,EAAE;YACjB,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;YAC7C,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE;gBAC9C,cAAc,CAAC,SAAS,CAAC,CAAA;gBACzB,OAAO,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;YACtD,CAAC;SACF;KACF;IAED,aAAa,EAAE;QACb;;;;;;;;WAQG;QACH,eAAe,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAmC,CAAA;YAC/C,IAAI,CAAC,CAAC,CAAC,WAAW;gBAAE,OAAM;YAC1B,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,CAAC,CAAA;YAChE,MAAM,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;QACzD,CAAC;QACD,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAiD,CAAA;YAC7D,IAAI,OAAO,CAAC,CAAC,IAAI,KAAK,QAAQ;gBAAE,OAAM;YACtC,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACtE,CAAC;QACD,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE;YACvC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAgD,CAAA;YAC5D,MAAM,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACvE,CAAC;QACD;;;;WAIG;QACH,wBAAwB,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE;YAC5C,MAAM,CAAC,GAAG,CAAC,CAAC,OAAkC,CAAA;YAC9C,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAA;YAC/C,IAAI,CAAC,IAAI;gBAAE,OAAM;YACjB,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;YAChD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,OAAO,GAAG,0CAA0C,IAAI,yCAAyC,CAAA;gBACvG,2FAA2F;gBAC3F,4FAA4F;gBAC5F,mFAAmF;gBACnF,oFAAoF;gBACpF,IAAI,SAAS,CAAC,eAAe,EAAE,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,CAAA;oBAC/D,MAAM,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,8BAA8B,CAAC,CAAA;gBACnE,CAAC;gBACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;gBAClC,OAAM;YACR,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,IAAI,EAAE,CAAA;YAC9B,WAAW,CAAC,UAAU,CAAC,WAAW,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,CAAA;YACjE,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,WAAW,EAAE;gBAC1C,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,MAAM,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;gBAClD,WAAW,EAAE,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI;aACrD,CAAC,CAAA;QACJ,CAAC;KACF;IAED,IAAI,EAAE;QACJ;YACE,IAAI,EAAE,yBAAyB;YAC/B,mFAAmF;YACnF,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;gBACjE,KAAK,MAAM,WAAW,IAAI,MAAM,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;oBACxD,IAAI,CAAC;wBACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;wBAC/D,qFAAqF;wBACrF,oFAAoF;wBACpF,wBAAwB;wBACxB,IAAI,KAAK,CAAC,KAAK,KAAK,CAAC,IAAI,KAAK,CAAC,YAAY,KAAK,CAAC;4BAC/C,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,qCAAqC,CAAC,CAAA;oBAClF,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,EAAE,2BAA2B,CAAC,CAAA;oBACjF,CAAC;gBACH,CAAC;YACH,CAAC;SACF;QACD;YACE;;;;;;;;;;eAUG;YACH,IAAI,EAAE,uBAAuB;YAC7B,IAAI,EAAE,YAAY;YAClB,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;gBACjE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;qBACjC,MAAM,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;qBAClD,IAAI,CAAC,aAAa,CAAC;qBACnB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,EACpC,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC,EACpC,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,EAC1C,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC,CAC3C,CACF,CAAA;gBACH,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;oBACtB,yFAAyF;oBACzF,uFAAuF;oBACvF,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;oBACzF,MAAM,MAAM,CAAC,IAAI,CACf,aAAa,CAAC,qBAAqB,EACnC;wBACE,WAAW,EAAE,GAAG,CAAC,WAA0B;wBAC3C,MAAM,EAAE,iDAAiD;qBAC1D,EACD,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CACjC,CAAA;oBACD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,2CAA2C,CAAC,CAAA;gBAChG,CAAC;YACH,CAAC;SACF;QACD;YACE,IAAI,EAAE,6BAA6B;YACnC,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,KAAK,EAAE,MAAe,EAAE,EAAE,MAAM,EAAsB,EAAE,EAAE;gBACjE;;;;;mBAKG;gBACH,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;qBACrC,MAAM,CAAC,aAAa,CAAC;qBACrB,GAAG,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC;qBAClE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC,CAAC;qBACnF,SAAS,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC,CAAA;gBACxD,IAAI,OAAO,CAAC,MAAM;oBAChB,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,EACjD,yEAAyE,CAC1E,CAAA;gBAEH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;qBACjC,MAAM,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;qBAClD,IAAI,CAAC,aAAa,CAAC;qBACnB,KAAK,CACJ,GAAG,CACD,EAAE,CAAC,aAAa,CAAC,MAAM,EAAE,UAAU,CAAC,EACpC,SAAS,CAAC,aAAa,CAAC,WAAW,CAAC,EACpC,GAAG,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,CAC3C,CACF,CAAA;gBACH,KAAK,MAAM,GAAG,IAAI,GAAG,EAAE,CAAC;oBACtB,MAAM,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAA;oBACzF,MAAM,MAAM,CAAC,IAAI,CACf,aAAa,CAAC,qBAAqB,EACnC;wBACE,WAAW,EAAE,GAAG,CAAC,WAA0B;wBAC3C,MAAM,EAAE,+CAA+C;qBACxD,EACD,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,CACjC,CAAA;oBACD,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,WAAW,EAAE,GAAG,CAAC,WAAW,EAAE,EAChC,kDAAkD,CACnD,CAAA;gBACH,CAAC;YACH,CAAC;SACF;KACF;CACF,CAAC,CAAA;AAEF,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/server/index.ts"],"names":[],"mappings":"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"}
@@ -60,6 +60,21 @@ export declare function portal(kernel: Kernel, input: {
60
60
  export declare function syncSeats(kernel: Kernel, workspaceId: string, seats: number): Promise<void>;
61
61
  /** A grace clock `GRACE_DAYS` from now. */
62
62
  export declare function graceFrom(now?: Date): Date;
63
+ /**
64
+ * Mirror every invoice Stripe holds for a subscription or a customer.
65
+ *
66
+ * Webhooks are the normal path; this is the repair for the ones that were lost — the first invoice
67
+ * of every subscription created before `workspaceOfInvoice` existed, and any delivery an instance
68
+ * missed while it was down. It runs after checkout completes and once a night for every workspace
69
+ * with a Stripe customer, and is idempotent: `applyInvoice` upserts on the Stripe invoice id.
70
+ */
71
+ export declare function syncInvoices(kernel: Kernel, by: {
72
+ subscription: string;
73
+ } | {
74
+ customer: string;
75
+ }): Promise<number>;
76
+ /** `syncInvoices` for a workspace, when it has a Stripe customer; a no-op otherwise. */
77
+ export declare function backfillInvoices(kernel: Kernel, workspaceId: string): Promise<number>;
63
78
  /**
64
79
  * Apply one webhook.
65
80
  *
@@ -1 +1 @@
1
- {"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../../../src/server/services/stripe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvD,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAK3D;;;;;;GAMG;AACH,wBAAgB,MAAM,IAAI,MAAM,GAAG,IAAI,CAYtC;AAqBD,eAAO,MAAM,eAAe,eAA+C,CAAA;AAY3E,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,kBAAkB,CA2B3E;AAyBD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxG;AAED,wFAAwF;AACxF,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGtF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IACL,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GACA,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAgD5C;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAU1B;AAED,uFAAuF;AACvF,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcjG;AAiDD,2CAA2C;AAC3C,wBAAgB,SAAS,CAAC,GAAG,OAAa,GAAG,IAAI,CAIhD;AAyFD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA2B7C;AAsED,gEAAgE;AAChE,eAAO,MAAM,UAAU,KAAK,CAAA"}
1
+ {"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../../../src/server/services/stripe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAEvD,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAA;AAK3D;;;;;;GAMG;AACH,wBAAgB,MAAM,IAAI,MAAM,GAAG,IAAI,CAYtC;AAqBD,eAAO,MAAM,eAAe,eAA+C,CAAA;AAY3E,mFAAmF;AACnF,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,kBAAkB,CA2B3E;AAyBD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAWxG;AAED,wFAAwF;AACxF,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAGtF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,QAAQ,CAC5B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IACL,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,GACA,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAgD5C;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,MAAM,EACd,KAAK,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAChD,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAA;CAAE,CAAC,CAU1B;AAED,uFAAuF;AACvF,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAcjG;AAiDD,2CAA2C;AAC3C,wBAAgB,SAAS,CAAC,GAAG,OAAa,GAAG,IAAI,CAIhD;AAwGD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,MAAM,EACd,EAAE,EAAE;IAAE,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,GAClD,OAAO,CAAC,MAAM,CAAC,CASjB;AAED,wFAAwF;AACxF,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAS3F;AAiCD;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,MAAM,EACd,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CA2B7C;AAgFD,gEAAgE;AAChE,eAAO,MAAM,UAAU,KAAK,CAAA"}
@@ -311,18 +311,85 @@ async function applySubscription(kernel, s) {
311
311
  graceEndsAt,
312
312
  });
313
313
  }
314
- async function applyInvoice(kernel, inv) {
314
+ /**
315
+ * Which workspace an invoice belongs to.
316
+ *
317
+ * This used to be one lookup — the subscription row whose Stripe customer matches — and `return`
318
+ * when it found nothing. The first invoice of a new subscription is exactly the case where it finds
319
+ * nothing: Stripe sends `invoice.paid` for it *before* `checkout.session.completed`, so no row has
320
+ * the customer yet, the event was recorded as applied, Stripe never retried, and the invoice was
321
+ * gone for good. The cloud's first real purchase lost its invoice this way.
322
+ *
323
+ * The invoice itself says where it belongs: `parent.subscription_details.metadata` is a snapshot of
324
+ * the subscription's metadata, which carries `kern_workspace_id`. That is read first; the customer
325
+ * row second; and when neither answers, the subscription is fetched from Stripe — a fetch that
326
+ * fails is *not* caught, so the route answers 500, the claim is released and Stripe delivers the
327
+ * event again, by which time the subscription has usually arrived. An invoice with no subscription
328
+ * behind it and a customer nobody here knows is not a Kern invoice, and is skipped, loudly.
329
+ */
330
+ async function workspaceOfInvoice(kernel, stripe, inv) {
331
+ const details = inv.parent?.subscription_details;
332
+ const fromSnapshot = details?.metadata?.kern_workspace_id;
333
+ if (fromSnapshot)
334
+ return fromSnapshot;
315
335
  const customer = typeof inv.customer === 'string' ? inv.customer : inv.customer?.id;
316
- if (!customer)
317
- return;
336
+ if (customer) {
337
+ const [row] = await kernel.database.db
338
+ .select({ workspaceId: subscriptions.workspaceId })
339
+ .from(subscriptions)
340
+ .where(eq(subscriptions.stripeCustomerId, customer))
341
+ .limit(1);
342
+ if (row)
343
+ return row.workspaceId;
344
+ }
345
+ const subId = typeof details?.subscription === 'string' ? details.subscription : details?.subscription?.id;
346
+ if (subId) {
347
+ const remote = await stripe.subscriptions.retrieve(subId);
348
+ const workspaceId = workspaceOf(remote);
349
+ if (workspaceId) {
350
+ // The subscription event has not arrived yet; writing it now is what lets the invoice land.
351
+ await applySubscription(kernel, remote);
352
+ return workspaceId;
353
+ }
354
+ }
355
+ kernel.log.warn({ invoice: inv.id, customer, subscription: subId }, 'billing: Stripe invoice belongs to no workspace here; skipped');
356
+ return null;
357
+ }
358
+ /**
359
+ * Mirror every invoice Stripe holds for a subscription or a customer.
360
+ *
361
+ * Webhooks are the normal path; this is the repair for the ones that were lost — the first invoice
362
+ * of every subscription created before `workspaceOfInvoice` existed, and any delivery an instance
363
+ * missed while it was down. It runs after checkout completes and once a night for every workspace
364
+ * with a Stripe customer, and is idempotent: `applyInvoice` upserts on the Stripe invoice id.
365
+ */
366
+ export async function syncInvoices(kernel, by) {
367
+ const stripe = required();
368
+ const list = await stripe.invoices.list({ ...by, limit: 100 });
369
+ let n = 0;
370
+ for (const inv of list.data) {
371
+ await applyInvoice(kernel, stripe, inv);
372
+ n += 1;
373
+ }
374
+ return n;
375
+ }
376
+ /** `syncInvoices` for a workspace, when it has a Stripe customer; a no-op otherwise. */
377
+ export async function backfillInvoices(kernel, workspaceId) {
378
+ if (!paymentsEnabled())
379
+ return 0;
318
380
  const [row] = await kernel.database.db
319
- .select({ workspaceId: subscriptions.workspaceId })
381
+ .select({ customer: subscriptions.stripeCustomerId })
320
382
  .from(subscriptions)
321
- .where(eq(subscriptions.stripeCustomerId, customer))
383
+ .where(eq(subscriptions.workspaceId, workspaceId))
322
384
  .limit(1);
323
- if (!row)
385
+ if (!row?.customer)
386
+ return 0;
387
+ return syncInvoices(kernel, { customer: row.customer });
388
+ }
389
+ async function applyInvoice(kernel, stripe, inv) {
390
+ const workspaceId = await workspaceOfInvoice(kernel, stripe, inv);
391
+ if (!workspaceId)
324
392
  return;
325
- const workspaceId = row.workspaceId;
326
393
  const line = inv.lines?.data?.[0];
327
394
  await kernel.database.withWorkspace(workspaceId, async (tx) => {
328
395
  await tx
@@ -418,14 +485,22 @@ async function apply(kernel, stripe, event) {
418
485
  kernel.log.warn({ err: String(err), workspaceId }, 'billing: could not sync seats after checkout; the nightly reconcile will correct it');
419
486
  }
420
487
  }
488
+ // The first invoice was paid before this event was sent, and its own webhook may have arrived
489
+ // before the subscription existed here. Same rule as the seats: never fail the event over it.
490
+ try {
491
+ await syncInvoices(kernel, { subscription: subId });
492
+ }
493
+ catch (err) {
494
+ kernel.log.warn({ err: String(err), subscription: subId }, 'billing: could not mirror invoices after checkout; the nightly backfill will');
495
+ }
421
496
  break;
422
497
  }
423
498
  case 'invoice.paid':
424
- await applyInvoice(kernel, event.data.object);
499
+ await applyInvoice(kernel, stripe, event.data.object);
425
500
  break;
426
501
  case 'invoice.payment_failed': {
427
502
  const inv = event.data.object;
428
- await applyInvoice(kernel, inv);
503
+ await applyInvoice(kernel, stripe, inv);
429
504
  const customer = typeof inv.customer === 'string' ? inv.customer : inv.customer?.id;
430
505
  if (customer) {
431
506
  const [row] = await kernel.database.db
@@ -1 +1 @@
1
- {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../../../src/server/services/stripe.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../../../src/server/services/stripe.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAe,MAAM,gBAAgB,CAAA;AACvD,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAChC,OAAO,MAAM,MAAM,QAAQ,CAAA;AAE3B,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC5E,OAAO,KAAK,IAAI,MAAM,oBAAoB,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC;;;;;;GAMG;AACH,MAAM,UAAU,MAAM;IACpB,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAA;IACzC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAA;IACrB,OAAO,IAAI,MAAM,CAAC,GAAG,EAAE;QACrB,6FAA6F;QAC7F,2FAA2F;QAC3F,yEAAyE;QACzE,UAAU,EAAE,mBAAmB;QAC/B,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,qBAAqB,EAAE;QACrD,iBAAiB,EAAE,CAAC;QACpB,GAAG,OAAO,EAAE;KACb,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAS,OAAO;IACd,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAA;IACxC,IAAI,CAAC,IAAI;QAAE,OAAO,EAAE,CAAA;IACpB,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAA;IACzB,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;IAC7D,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAA;AACtG,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;AAE3E,SAAS,QAAQ;IACf,MAAM,CAAC,GAAG,MAAM,EAAE,CAAA;IAClB,IAAI,CAAC,CAAC;QACJ,MAAM,SAAS,CAAC,QAAQ,CACtB,kDAAkD,EAClD,+BAA+B,CAChC,CAAA;IACH,OAAO,CAAC,CAAA;AACV,CAAC;AAED,mFAAmF;AACnF,MAAM,UAAU,SAAS,CAAC,CAA6B;IACrD,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,UAAU;YACb,OAAO,UAAU,CAAA;QACnB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAA;QACjB,KAAK,UAAU;YACb,OAAO,UAAU,CAAA;QACnB;;;;;;WAMG;QACH,KAAK,QAAQ;YACX,OAAO,WAAW,CAAA;QACpB,KAAK,UAAU,CAAC;QAChB,KAAK,oBAAoB;YACvB,OAAO,UAAU,CAAA;QACnB,+FAA+F;QAC/F,KAAK,YAAY,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,WAAW,CAAA;QACpB;YACE,OAAO,WAAW,CAAA;IACtB,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,KAAK,UAAU,WAAW,CAAC,MAAc,EAAE,WAAmB,EAAE,KAAc;IAC5E,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IACpD,IAAI,QAAQ,EAAE,gBAAgB;QAAE,OAAO,QAAQ,CAAC,gBAAgB,CAAA;IAChE,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAA;IACzB,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC;QAC7C,KAAK;QACL,4FAA4F;QAC5F,yEAAyE;QACzE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,WAAW,EAAE;KAC7C,CAAC,CAAA;IACF,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;IACzE,OAAO,QAAQ,CAAC,EAAE,CAAA;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,WAAW,GAA4C,IAAI,GAAG,CAAC,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC,CAAA;AAExG;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,MAAc,EAAE,WAAmB,EAAE,KAAc;IACrF,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAClD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,KAAK,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;IACnE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,EACjC,yEAAyE,CAC1E,CAAA;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAA;IACnE,CAAC;AACH,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,UAAkB,EAAE,OAAe;IAC5E,MAAM,GAAG,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,UAAU,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,EAAE,CAAA;IACxG,OAAO,GAAG,GAAG,GAAG,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,YAAY,OAAO,EAAE,CAAA;AACpE,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,MAAc,EACd,KAOC;IAED,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAA;IACzB,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;IAC3G,IAAI,CAAC,IAAI;QAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;IAC3C,IAAI,CAAC,IAAI,CAAC,aAAa;QACrB,MAAM,SAAS,CAAC,QAAQ,CAAC,wCAAwC,EAAE,uBAAuB,CAAC,CAAA;IAE7F,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC/F,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,IAAI,GAAG,CAAA;IAEpC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;IAC1D,IAAI,QAAQ,EAAE,oBAAoB,EAAE,CAAC;QACnC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAA;QACnG,MAAM,IAAI,GAAG,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAClC,IAAI,MAAM,IAAI,IAAI,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACrD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE;gBAC3D,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,CAAC;gBAC7D,6EAA6E;gBAC7E,kBAAkB,EAAE,mBAAmB;gBACvC,2FAA2F;gBAC3F,oBAAoB,EAAE,KAAK;gBAC3B,sFAAsF;gBACtF,gFAAgF;gBAChF,QAAQ,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE;aAC1E,CAAC,CAAA;YACF,6FAA6F;YAC7F,6FAA6F;YAC7F,MAAM,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;YACxC,OAAO,EAAE,GAAG,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;QAC1E,CAAC;IACH,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;IAC1E,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QACpD,IAAI,EAAE,cAAc;QACpB,QAAQ;QACR,UAAU,EAAE,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,aAAa,EAAE,QAAQ,EAAE,CAAC;QACrD,iBAAiB,EAAE;YACjB,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACpE,QAAQ,EAAE,EAAE,iBAAiB,EAAE,KAAK,CAAC,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC,EAAE,EAAE;SAC1E;QACD,+FAA+F;QAC/F,yBAAyB,EAAE,QAAQ;QACnC,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC;QACnD,UAAU,EAAE,SAAS,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,CAAC;KACxD,CAAC,CAAA;IACF,IAAI,CAAC,OAAO,CAAC,GAAG;QAAE,MAAM,SAAS,CAAC,QAAQ,CAAC,sCAAsC,EAAE,uBAAuB,CAAC,CAAA;IAC3G,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAA;AAC7C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,MAAc,EACd,KAAiD;IAEjD,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAA;IACzB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,WAAW,CAAC,CAAA;IACrD,IAAI,CAAC,GAAG,EAAE,gBAAgB;QACxB,MAAM,SAAS,CAAC,QAAQ,CAAC,2CAA2C,EAAE,4BAA4B,CAAC,CAAA;IACrG,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QACzD,QAAQ,EAAE,GAAG,CAAC,gBAAgB;QAC9B,UAAU,EAAE,KAAK,CAAC,SAAS;KAC5B,CAAC,CAAA;IACF,OAAO,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAA;AAC7B,CAAC;AAED,uFAAuF;AACvF,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,WAAmB,EAAE,KAAa;IAChF,MAAM,MAAM,GAAG,MAAM,EAAE,CAAA;IACvB,IAAI,CAAC,MAAM;QAAE,OAAM;IACnB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAA;IAC/C,IAAI,CAAC,GAAG,EAAE,oBAAoB;QAAE,OAAM;IACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAA;IAC5E,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,KAAK,KAAK;QAAE,OAAM;IAC5C,MAAM,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,EAAE;QAC1D,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QACzC,2FAA2F;QAC3F,kBAAkB,EAAE,mBAAmB;KACxC,CAAC,CAAA;IACF,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAA;AACnE,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,KAAK,CAAC,MAAc,EAAE,EAAU,EAAE,IAAY;IAC3D,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;SAClC,MAAM,CAAC,aAAa,CAAC;SACrB,MAAM,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;SACpB,mBAAmB,EAAE;SACrB,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,EAAE,EAAE,CAAC,CAAA;IACtC,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAA;AACxB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,OAAO,CAAC,MAAc,EAAE,EAAU;IAC/C,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;SACrB,MAAM,CAAC,aAAa,CAAC;SACrB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;SAC/B,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE,CACtB,MAAM,CAAC,GAAG,CAAC,KAAK,CACd,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAC/B,wFAAwF,CACzF,CACF,CAAA;AACL,CAAC;AAED,2FAA2F;AAC3F,SAAS,WAAW,CAAC,CAAwC;IAC3D,OAAO,CAAC,CAAC,QAAQ,EAAE,iBAAiB,IAAI,IAAI,CAAA;AAC9C,CAAC;AAED,2CAA2C;AAC3C,MAAM,UAAU,SAAS,CAAC,GAAG,GAAG,IAAI,IAAI,EAAE;IACxC,MAAM,KAAK,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,CAAA;IAC3B,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,UAAU,CAAC,CAAA;IACjD,OAAO,KAAK,CAAA;AACd,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,KAAK,UAAU,iBAAiB,CAAC,MAAc,EAAE,CAAsB;IACrE,MAAM,WAAW,GAAG,WAAW,CAAC,CAAC,CAAC,CAAA;IAClC,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,qDAAqD,CAAC,CAAA;QAC9F,OAAM;IACR,CAAC;IACD,MAAM,MAAM,GAAG,CAAC,CAAC,QAAQ,EAAE,YAAY,IAAI,IAAI,CAAA;IAC/C,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IAC5B,MAAM,SAAS,GAAG,IAAI,EAAE,kBAAkB,IAAI,IAAI,CAAA;IAClD,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAA;IAElC,IAAI,WAAW,GAAgB,IAAI,CAAA;IACnC,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;QAC1B,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;aACnC,MAAM,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;aAClD,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;aACjD,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,WAAW,GAAG,GAAG,EAAE,WAAW,IAAI,SAAS,EAAE,CAAA;IAC/C,CAAC;IAED,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE;QACrC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,MAAM;QACN,cAAc,EAAE,IAAI,EAAE,QAAQ,IAAI,CAAC;QACnC,oBAAoB,EAAE,CAAC,CAAC,EAAE;QAC1B,gBAAgB,EAAE,OAAO,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE;QAC7E,iBAAiB,EAAE,CAAC,CAAC,oBAAoB;QACzC,WAAW,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QAC9D,gBAAgB,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;QAC/D,WAAW;KACZ,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,kBAAkB,CAC/B,MAAc,EACd,MAAc,EACd,GAAmB;IAEnB,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAA;IAChD,MAAM,YAAY,GAAG,OAAO,EAAE,QAAQ,EAAE,iBAAiB,CAAA;IACzD,IAAI,YAAY;QAAE,OAAO,YAAY,CAAA;IAErC,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAA;IACnF,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;aACnC,MAAM,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;aAClD,IAAI,CAAC,aAAa,CAAC;aACnB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;aACnD,KAAK,CAAC,CAAC,CAAC,CAAA;QACX,IAAI,GAAG;YAAE,OAAO,GAAG,CAAC,WAAW,CAAA;IACjC,CAAC;IAED,MAAM,KAAK,GAAG,OAAO,OAAO,EAAE,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,CAAA;IAC1G,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;QACzD,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;QACvC,IAAI,WAAW,EAAE,CAAC;YAChB,4FAA4F;YAC5F,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACvC,OAAO,WAAW,CAAA;QACpB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,EAAE,EAClD,+DAA+D,CAChE,CAAA;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAAc,EACd,EAAmD;IAEnD,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAA;IACzB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;IAC9D,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,MAAM,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;QACvC,CAAC,IAAI,CAAC,CAAA;IACR,CAAC;IACD,OAAO,CAAC,CAAA;AACV,CAAC;AAED,wFAAwF;AACxF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,MAAc,EAAE,WAAmB;IACxE,IAAI,CAAC,eAAe,EAAE;QAAE,OAAO,CAAC,CAAA;IAChC,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;SACnC,MAAM,CAAC,EAAE,QAAQ,EAAE,aAAa,CAAC,gBAAgB,EAAE,CAAC;SACpD,IAAI,CAAC,aAAa,CAAC;SACnB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;SACjD,KAAK,CAAC,CAAC,CAAC,CAAA;IACX,IAAI,CAAC,GAAG,EAAE,QAAQ;QAAE,OAAO,CAAC,CAAA;IAC5B,OAAO,YAAY,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAA;AACzD,CAAC;AAED,KAAK,UAAU,YAAY,CAAC,MAAc,EAAE,MAAc,EAAE,GAAmB;IAC7E,MAAM,WAAW,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;IACjE,IAAI,CAAC,WAAW;QAAE,OAAM;IACxB,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;IACjC,MAAM,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE;QAC5D,MAAM,EAAE;aACL,MAAM,CAAC,QAAQ,CAAC;aAChB,MAAM,CAAC;YACN,WAAW;YACX,eAAe,EAAE,GAAG,CAAC,EAAE,IAAI,IAAI;YAC/B,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI;YAC1B,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,OAAO;YAC7B,UAAU,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;YAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,KAAK;YAC/B,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YAC5E,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;YACtE,SAAS,EAAE,GAAG,CAAC,kBAAkB,IAAI,IAAI;YACzC,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;SAChC,CAAC;aACD,kBAAkB,CAAC;YAClB,MAAM,EAAE,QAAQ,CAAC,eAAe;YAChC,GAAG,EAAE;gBACH,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,OAAO;gBAC7B,UAAU,EAAE,GAAG,CAAC,KAAK,IAAI,CAAC;gBAC1B,SAAS,EAAE,GAAG,CAAC,kBAAkB,IAAI,IAAI;gBACzC,MAAM,EAAE,GAAG,CAAC,WAAW,IAAI,IAAI;aAChC;SACF,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAAc,EACd,GAAoB,EACpB,SAAiB;IAEjB,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAA;IACzB,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAA;IAChD,IAAI,CAAC,MAAM;QACT,MAAM,SAAS,CAAC,QAAQ,CAAC,wCAAwC,EAAE,kCAAkC,CAAC,CAAA;IAExG,IAAI,KAAmB,CAAA;IACvB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAA;IAChE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,SAAS,CAAC,UAAU,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACrF,CAAC;IAED,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACjD,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,kCAAkC,CAAC,CAAA;QAC1F,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;IAC7C,CAAC;IAED,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,CAAA;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,+FAA+F;QAC/F,sFAAsF;QACtF,MAAM,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;QAC/B,MAAM,GAAG,CAAA;IACX,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,CAAA;AAC5C,CAAC;AAED,KAAK,UAAU,KAAK,CAAC,MAAc,EAAE,MAAc,EAAE,KAAmB;IACtE,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,+BAA+B,CAAC;QACrC,KAAK,+BAA+B,CAAC;QACrC,KAAK,+BAA+B;YAClC,MAAM,iBAAiB,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YAClD,MAAK;QACP,KAAK,4BAA4B,CAAC,CAAC,CAAC;YAClC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;YACjC,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAA;YACxG,IAAI,CAAC,KAAK;gBAAE,MAAK;YACjB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;YACzD,MAAM,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;YACvC;;;;;;;;;;eAUG;YACH,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;YACvC,IAAI,WAAW,EAAE,CAAC;gBAChB,IAAI,CAAC;oBACH,MAAM,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAA;gBAChF,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,WAAW,EAAE,EACjC,qFAAqF,CACtF,CAAA;gBACH,CAAC;YACH,CAAC;YACD,8FAA8F;YAC9F,8FAA8F;YAC9F,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAA;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,IAAI,CACb,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,YAAY,EAAE,KAAK,EAAE,EACzC,8EAA8E,CAC/E,CAAA;YACH,CAAC;YACD,MAAK;QACP,CAAC;QACD,KAAK,cAAc;YACjB,MAAM,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACrD,MAAK;QACP,KAAK,wBAAwB,CAAC,CAAC,CAAC;YAC9B,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAA;YAC7B,MAAM,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;YACvC,MAAM,QAAQ,GAAG,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAA;YACnF,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,EAAE;qBACnC,MAAM,CAAC,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE,CAAC;qBAC1F,IAAI,CAAC,aAAa,CAAC;qBACnB,KAAK,CAAC,EAAE,CAAC,aAAa,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAC;qBACnD,KAAK,CAAC,CAAC,CAAC,CAAA;gBACX,IAAI,GAAG,EAAE,CAAC;oBACR,0FAA0F;oBAC1F,qFAAqF;oBACrF,sFAAsF;oBACtF,2CAA2C;oBAC3C,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,WAAW,EAAE;wBACzC,MAAM,EAAE,UAAU;wBAClB,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI,SAAS,EAAE;qBAC5C,CAAC,CAAA;gBACJ,CAAC;YACH,CAAC;YACD,MAAK;QACP,CAAC;QACD;YACE,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,iCAAiC,CAAC,CAAA;IAC7E,CAAC;AACH,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,MAAM,UAAU,GAAG,EAAE,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kernhq/module-billing",
3
- "version": "0.5.8",
3
+ "version": "0.5.10",
4
4
  "description": "Kern billing module: plans, entitlements, subscriptions and Stripe — the mechanism that lets any Kern instance sell seats on itself",
5
5
  "homepage": "https://github.com/KernAIO/module-billing#readme",
6
6
  "license": "AGPL-3.0-only",
@@ -128,6 +128,7 @@ export const en: Record<string, Message> = {
128
128
  'billing.invoice_date': 'Date',
129
129
  'billing.invoice_number': 'Invoice',
130
130
  'billing.invoice_view': 'View',
131
+ 'billing.invoice_pdf': 'PDF',
131
132
  'billing.invoices_empty': 'No invoices yet',
132
133
  'billing.invoices_empty_hint': 'An invoice appears here after the first payment.',
133
134
  'billing.invoices_section': 'Invoices',
@@ -287,6 +288,7 @@ const ar: Record<string, Message> = {
287
288
  'billing.invoice_date': 'التاريخ',
288
289
  'billing.invoice_number': 'الفاتورة',
289
290
  'billing.invoice_view': 'عرض',
291
+ 'billing.invoice_pdf': 'PDF',
290
292
  'billing.invoices_empty': 'لا فواتير بعد',
291
293
  'billing.invoices_empty_hint': 'تظهر الفاتورة هنا بعد أول عملية دفع.',
292
294
  'billing.invoices_section': 'الفواتير',
@@ -453,6 +455,7 @@ const de: Record<string, Message> = {
453
455
  'billing.invoice_date': 'Datum',
454
456
  'billing.invoice_number': 'Rechnung',
455
457
  'billing.invoice_view': 'Ansehen',
458
+ 'billing.invoice_pdf': 'PDF',
456
459
  'billing.invoices_empty': 'Noch keine Rechnungen',
457
460
  'billing.invoices_empty_hint': 'Nach der ersten Zahlung erscheint hier eine Rechnung.',
458
461
  'billing.invoices_section': 'Rechnungen',
@@ -612,6 +615,7 @@ const fa: Record<string, Message> = {
612
615
  'billing.invoice_date': 'تاریخ',
613
616
  'billing.invoice_number': 'صورتحساب',
614
617
  'billing.invoice_view': 'نمایش',
618
+ 'billing.invoice_pdf': 'PDF',
615
619
  'billing.invoices_empty': 'هنوز صورتحسابی نیست',
616
620
  'billing.invoices_empty_hint': 'پس از نخستین پرداخت، صورتحساب اینجا می‌آید.',
617
621
  'billing.invoices_section': 'صورتحساب‌ها',
@@ -770,6 +774,7 @@ const tr: Record<string, Message> = {
770
774
  'billing.invoice_date': 'Tarih',
771
775
  'billing.invoice_number': 'Fatura',
772
776
  'billing.invoice_view': 'Görüntüle',
777
+ 'billing.invoice_pdf': 'PDF',
773
778
  'billing.invoices_empty': 'Henüz fatura yok',
774
779
  'billing.invoices_empty_hint': 'İlk ödemeden sonra burada bir fatura görünür.',
775
780
  'billing.invoices_section': 'Faturalar',
@@ -514,16 +514,31 @@ function once(run: () => void) {
514
514
  <TableCell>{day(inv.createdAt)}</TableCell>
515
515
  <TableCell end>{formatMoney(inv.totalMinor, inv.currency, locale)}</TableCell>
516
516
  <TableCell end>
517
- {#if inv.hostedUrl}
518
- <a
519
- class="text-[13px] text-[var(--kern-accent-deep)] underline-offset-2 hover:underline"
520
- href={inv.hostedUrl}
521
- target="_blank"
522
- rel="noreferrer noopener"
523
- >
524
- {t('invoice_view')}
525
- </a>
526
- {/if}
517
+ <!-- Both links Stripe gives us: the hosted page (pay, see the receipt) and the PDF
518
+ an accountant files. Neither is ours to render, so nothing is shown when
519
+ Stripe sent none. -->
520
+ <span class="inline-flex items-center gap-3">
521
+ {#if inv.hostedUrl}
522
+ <a
523
+ class="text-[13px] text-[var(--kern-accent-deep)] underline-offset-2 hover:underline"
524
+ href={inv.hostedUrl}
525
+ target="_blank"
526
+ rel="noreferrer noopener"
527
+ >
528
+ {t('invoice_view')}
529
+ </a>
530
+ {/if}
531
+ {#if inv.pdfUrl}
532
+ <a
533
+ class="text-[13px] text-[var(--kern-accent-deep)] underline-offset-2 hover:underline"
534
+ href={inv.pdfUrl}
535
+ target="_blank"
536
+ rel="noreferrer noopener"
537
+ >
538
+ {t('invoice_pdf')}
539
+ </a>
540
+ {/if}
541
+ </span>
527
542
  </TableCell>
528
543
  </TableRow>
529
544
  {/each}