@antelopejs/interface-dms-saas 0.2.4 → 0.2.6

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
@@ -51,6 +51,15 @@ package is released. The runtime implements this interface, so it caps the range
51
51
  below the next minor: a breaking minor of this package never reaches an older
52
52
  dms-saas.
53
53
 
54
+ ## Writing plans
55
+
56
+ A module may seed plans straight into the `db` plan table. It leaves
57
+ `Plan.paymentProviderRefs` empty on creation and never rewrites it: dms-saas
58
+ links every plan billed through Stripe to a matching Stripe product and price,
59
+ at startup and whenever the plan is offered or billed, and records what it
60
+ synced in `paymentProviderRefs.stripeSyncedTerms`. See
61
+ [Plans and Stripe](../dms-saas/README.md#plans-and-stripe).
62
+
54
63
  ## Upgrading
55
64
 
56
65
  ### Rows written by earlier builds
@@ -1,6 +1,6 @@
1
1
  import { Table } from "@antelopejs/interface-database-decorators";
2
2
  export declare const creditNotesTableName = "credit_notes";
3
- export declare const CREDIT_NOTE_TYPES: readonly ["pre_payment", "post_payment", "credit_to_balance", "refund"];
3
+ export declare const CREDIT_NOTE_TYPES: readonly ["pre_payment", "post_payment", "credit_to_balance", "refund", "mixed"];
4
4
  export type CreditNoteType = (typeof CREDIT_NOTE_TYPES)[number];
5
5
  export declare const CREDIT_NOTE_STATUSES: readonly ["issued", "void"];
6
6
  export type CreditNoteStatus = (typeof CREDIT_NOTE_STATUSES)[number];
@@ -20,6 +20,7 @@ exports.CREDIT_NOTE_TYPES = [
20
20
  "post_payment",
21
21
  "credit_to_balance",
22
22
  "refund",
23
+ "mixed",
23
24
  ];
24
25
  exports.CREDIT_NOTE_STATUSES = ["issued", "void"];
25
26
  let CreditNote = class CreditNote extends interface_database_decorators_1.Table {
@@ -1 +1 @@
1
- {"version":3,"file":"creditNotes.table.js","sourceRoot":"","sources":["../../../src/db/tables/creditNotes.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAQmD;AACnD,mEAAyE;AACzE,qDAA2C;AAK3C,mDAAyC;AAE5B,QAAA,oBAAoB,GAAG,cAAc,CAAC;AAEtC,QAAA,iBAAiB,GAAG;IAC/B,aAAa;IACb,cAAc;IACd,mBAAmB;IACnB,QAAQ;CACA,CAAC;AAGE,QAAA,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAU,CAAC;AAKzD,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,qCAAK;CA6DpC,CAAA;AA7DY,gCAAU;AAEb;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;uCACI;AAKZ;IAHP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,wBAAO,EAAE,CAAC;;6CACN;AAIlB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sDACmB;AAG3B;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;4CACS;AAGjB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACY;AAGpB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACa;AAIrB;IAFP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,sBAAM,EAAE,CAAC;;4CACC;AAGxB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;6CACiB;AAGzB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACc;AAGtB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACiB;AAIzB;IAFP,IAAA,qCAAK,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACI,IAAI;4CAAC;AAGf;IADP,IAAA,qCAAK,EAAC,MAAM,CAAC;;4CACgB;AAGtB;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;4CAC6B;AAIlC;IAFP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;6CAAC;AAIhB;IAFP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;6CAAC;qBA5Db,UAAU;IADtB,IAAA,6CAAa,EAAC,4BAAoB,EAAE,8BAAkB,CAAC;GAC3C,UAAU,CA6DtB"}
1
+ {"version":3,"file":"creditNotes.table.js","sourceRoot":"","sources":["../../../src/db/tables/creditNotes.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAQmD;AACnD,mEAAyE;AACzE,qDAA2C;AAK3C,mDAAyC;AAE5B,QAAA,oBAAoB,GAAG,cAAc,CAAC;AAEtC,QAAA,iBAAiB,GAAG;IAC/B,aAAa;IACb,cAAc;IACd,mBAAmB;IACnB,QAAQ;IACR,OAAO;CACC,CAAC;AAGE,QAAA,oBAAoB,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAU,CAAC;AAKzD,IAAM,UAAU,GAAhB,MAAM,UAAW,SAAQ,qCAAK;CA6DpC,CAAA;AA7DY,gCAAU;AAEb;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;uCACI;AAKZ;IAHP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,wBAAO,EAAE,CAAC;;6CACN;AAIlB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sDACmB;AAG3B;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;4CACS;AAGjB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACO;AAGf;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACY;AAGpB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACa;AAIrB;IAFP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,sBAAM,EAAE,CAAC;;4CACC;AAGxB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;6CACiB;AAGzB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACc;AAGtB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;0CACiB;AAIzB;IAFP,IAAA,qCAAK,EAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC;IAC9B,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACI,IAAI;4CAAC;AAGf;IADP,IAAA,qCAAK,EAAC,MAAM,CAAC;;4CACgB;AAGtB;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;4CAC6B;AAIlC;IAFP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;6CAAC;AAIhB;IAFP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;6CAAC;qBA5Db,UAAU;IADtB,IAAA,6CAAa,EAAC,4BAAoB,EAAE,8BAAkB,CAAC;GAC3C,UAAU,CA6DtB"}
@@ -10,9 +10,25 @@ export interface PlanFeatureValue {
10
10
  featureId: string;
11
11
  value: unknown;
12
12
  }
13
+ export interface PlanStripeProductTerms {
14
+ name: string;
15
+ description: string;
16
+ taxCode: string;
17
+ }
18
+ export interface PlanStripePriceTerms {
19
+ unitAmount: number;
20
+ currency: string;
21
+ interval: PlanInterval;
22
+ billingMode: PlanBillingMode;
23
+ }
24
+ export interface PlanStripeSyncedTerms {
25
+ product: PlanStripeProductTerms;
26
+ price: PlanStripePriceTerms;
27
+ }
13
28
  export interface PlanProviderRefs {
14
29
  stripeProductId?: string;
15
30
  stripePriceId?: string;
31
+ stripeSyncedTerms?: PlanStripeSyncedTerms;
16
32
  }
17
33
  export declare class Plan extends Table {
18
34
  _id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"plans.table.js","sourceRoot":"","sources":["../../../src/db/tables/plans.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAQmD;AACnD,mEAAuE;AAE1D,QAAA,cAAc,GAAG,OAAO,CAAC;AAEzB,QAAA,cAAc,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAU,CAAC;AAG5D,QAAA,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAU,CAAC;AAG5C,QAAA,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AAerD,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,qCAAK;CA8E9B,CAAA;AA9EY,oBAAI;AAEP;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;iCACI;AAGZ;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;kCACK;AAIb;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;kCACK;AAGb;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACY;AAIpB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACe;AAGvB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACM;AAGd;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACS;AAGjB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACe;AAGvB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACqB;AAG7B;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;sCACwB;AAG7B;IADP,IAAA,qCAAK,EAAC,CAAC,QAAQ,CAAC,CAAC;;yCACY;AAItB;IAFP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;;gDACa;AAGlC;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;uCACU;AAIlB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACW;AAInB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,SAAS,CAAC;;sCACS;AAGlB;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;iDACiC;AAGtC;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACmB;AAG3B;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACmB;AAI3B;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACM;AAId;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,SAAS,CAAC;;sCACS;AAGlB;IADP,IAAA,qCAAK,EAAC,SAAS,CAAC;;uCACU;AAInB;IAFP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;uCAAC;AAIhB;IAFP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;uCAAC;eA7Eb,IAAI;IADhB,IAAA,6CAAa,EAAC,sBAAc,EAAE,4BAAgB,CAAC;GACnC,IAAI,CA8EhB"}
1
+ {"version":3,"file":"plans.table.js","sourceRoot":"","sources":["../../../src/db/tables/plans.table.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6FAQmD;AACnD,mEAAuE;AAE1D,QAAA,cAAc,GAAG,OAAO,CAAC;AAEzB,QAAA,cAAc,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,UAAU,CAAU,CAAC;AAG5D,QAAA,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAU,CAAC;AAG5C,QAAA,kBAAkB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AA6CrD,IAAM,IAAI,GAAV,MAAM,IAAK,SAAQ,qCAAK;CA8E9B,CAAA;AA9EY,oBAAI;AAEP;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;iCACI;AAGZ;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;kCACK;AAIb;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;kCACK;AAGb;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACY;AAIpB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACe;AAGvB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACM;AAGd;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACS;AAGjB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;sCACe;AAGvB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACqB;AAG7B;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;sCACwB;AAG7B;IADP,IAAA,qCAAK,EAAC,CAAC,QAAQ,CAAC,CAAC;;yCACY;AAItB;IAFP,IAAA,qCAAK,EAAC,QAAQ,CAAC;IACf,IAAA,wCAAQ,EAAC,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;;gDACa;AAGlC;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;uCACU;AAIlB;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;wCACW;AAInB;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,SAAS,CAAC;;sCACS;AAGlB;IADP,IAAA,qCAAK,EAAC,KAAK,CAAC;;iDACiC;AAGtC;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACmB;AAG3B;IADP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;yCACmB;AAI3B;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,QAAQ,CAAC;;mCACM;AAId;IAFP,IAAA,qCAAK,GAAE;IACP,IAAA,qCAAK,EAAC,SAAS,CAAC;;sCACS;AAGlB;IADP,IAAA,qCAAK,EAAC,SAAS,CAAC;;uCACU;AAInB;IAFP,IAAA,4CAAY,GAAE;IACd,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;uCAAC;AAIhB;IAFP,IAAA,0CAAU,GAAE;IACZ,IAAA,qCAAK,EAAC,MAAM,CAAC;8BACK,IAAI;uCAAC;eA7Eb,IAAI;IADhB,IAAA,6CAAa,EAAC,sBAAc,EAAE,4BAAgB,CAAC;GACnC,IAAI,CA8EhB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antelopejs/interface-dms-saas",
3
- "version": "0.2.4",
3
+ "version": "0.2.6",
4
4
  "description": "Public interfaces for the DMS SaaS module",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {