@spytecgps/nova-orm 1.4.299 → 1.4.300
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.
|
@@ -14,7 +14,7 @@ export type ReferralCreditType = (typeof typeArray)[number];
|
|
|
14
14
|
* total earned = SUM(amountCents) WHERE type = 'earned'
|
|
15
15
|
* credit applied = -SUM(amountCents) WHERE type = 'applied'
|
|
16
16
|
* A negative overall balance is meaningful — it is a clawback of credit that an invoice had already
|
|
17
|
-
* consumed, and is settled by pushing a positive (debit) transaction
|
|
17
|
+
* consumed, and is settled by pushing a positive (debit) transaction to Stripe.
|
|
18
18
|
*/
|
|
19
19
|
export declare class ReferralCredit {
|
|
20
20
|
id: number;
|
|
@@ -30,9 +30,18 @@ export declare class ReferralCredit {
|
|
|
30
30
|
/** `issuedAt + 12 months`. Set on `earned` rows only. */
|
|
31
31
|
expiresAt: Date | null;
|
|
32
32
|
/**
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
33
|
+
* @deprecated Superseded by `externalCreditRef`. Dropped in a follow-up schema deploy.
|
|
34
|
+
*
|
|
35
|
+
* PlanetScale does not support column renames, so the two columns coexist for one release: this
|
|
36
|
+
* one is no longer written, and nothing needs copying because the table is empty. Remove this
|
|
37
|
+
* property once `externalCreditRef` has deployed.
|
|
38
|
+
*/
|
|
39
|
+
stripeBalanceTxId: string | null;
|
|
40
|
+
/**
|
|
41
|
+
* The provider's own reference for this movement, and the reason a retried drip cannot
|
|
42
|
+
* double-apply — it is uniquely indexed. A Stripe customer balance transaction id on the Stripe
|
|
43
|
+
* path, including the debit id when a clawback is settled; the discount id Loop returns on the
|
|
44
|
+
* Loop path.
|
|
36
45
|
*
|
|
37
46
|
* Deliberately not named for Stripe: the referrer's platform decides which sink is used, and a
|
|
38
47
|
* Loop-billed referrer is paid with a subscription discount rather than a balance transaction.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e=require("../node_modules/tslib/tslib.es6.js"),t=require("typeorm");exports.ReferralCredit=class ReferralCredit{id;referralId;clientId;customerId;type;amountCents;issuedAt;expiresAt;externalCreditRef;appliedInvoiceId;appliedAt;adjustedByUsername;note;createdAt;updatedAt},e.__decorate([t.PrimaryGeneratedColumn({type:"int",name:"id"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"id",void 0),e.__decorate([t.Column("int",{name:"referralId",nullable:!0}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"referralId",void 0),e.__decorate([t.Column("int",{name:"clientId"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"clientId",void 0),e.__decorate([t.Column("varchar",{name:"customerId",nullable:!0,length:50}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"customerId",void 0),e.__decorate([t.Column("enum",{enum:["earned","applied","expired","clawback","manual_adjustment"],name:"type"}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"type",void 0),e.__decorate([t.Column("int",{name:"amountCents"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"amountCents",void 0),e.__decorate([t.Column("datetime",{name:"issuedAt"}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"issuedAt",void 0),e.__decorate([t.Column("datetime",{name:"expiresAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"expiresAt",void 0),e.__decorate([t.Column("varchar",{name:"externalCreditRef",nullable:!0,length:100}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"externalCreditRef",void 0),e.__decorate([t.Column("varchar",{name:"appliedInvoiceId",nullable:!0,length:100}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"appliedInvoiceId",void 0),e.__decorate([t.Column("datetime",{name:"appliedAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"appliedAt",void 0),e.__decorate([t.Column("varchar",{name:"adjustedByUsername",nullable:!0,length:255}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"adjustedByUsername",void 0),e.__decorate([t.Column("varchar",{name:"note",nullable:!0,length:500}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"note",void 0),e.__decorate([t.Column("datetime",{name:"createdAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"createdAt",void 0),e.__decorate([t.Column("datetime",{name:"updatedAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"updatedAt",void 0),exports.ReferralCredit=e.__decorate([t.Index("ixuReferralCreditExternalRef",["externalCreditRef"],{unique:!0}),t.Index("ixReferralCreditClientType",["clientId","type"],{}),t.Index("ixReferralCreditReferral",["referralId"],{}),t.Index("ixReferralCreditExpiresAt",["expiresAt"],{}),t.Index("ixReferralCreditClientIssuedAt",["clientId","issuedAt"],{}),t.Entity("referralCredit",{schema:"nova"})],exports.ReferralCredit);
|
|
1
|
+
"use strict";var e=require("../node_modules/tslib/tslib.es6.js"),t=require("typeorm");exports.ReferralCredit=class ReferralCredit{id;referralId;clientId;customerId;type;amountCents;issuedAt;expiresAt;stripeBalanceTxId;externalCreditRef;appliedInvoiceId;appliedAt;adjustedByUsername;note;createdAt;updatedAt},e.__decorate([t.PrimaryGeneratedColumn({type:"int",name:"id"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"id",void 0),e.__decorate([t.Column("int",{name:"referralId",nullable:!0}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"referralId",void 0),e.__decorate([t.Column("int",{name:"clientId"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"clientId",void 0),e.__decorate([t.Column("varchar",{name:"customerId",nullable:!0,length:50}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"customerId",void 0),e.__decorate([t.Column("enum",{enum:["earned","applied","expired","clawback","manual_adjustment"],name:"type"}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"type",void 0),e.__decorate([t.Column("int",{name:"amountCents"}),e.__metadata("design:type",Number)],exports.ReferralCredit.prototype,"amountCents",void 0),e.__decorate([t.Column("datetime",{name:"issuedAt"}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"issuedAt",void 0),e.__decorate([t.Column("datetime",{name:"expiresAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"expiresAt",void 0),e.__decorate([t.Column("varchar",{name:"stripeBalanceTxId",nullable:!0,length:100}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"stripeBalanceTxId",void 0),e.__decorate([t.Column("varchar",{name:"externalCreditRef",nullable:!0,length:100}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"externalCreditRef",void 0),e.__decorate([t.Column("varchar",{name:"appliedInvoiceId",nullable:!0,length:100}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"appliedInvoiceId",void 0),e.__decorate([t.Column("datetime",{name:"appliedAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"appliedAt",void 0),e.__decorate([t.Column("varchar",{name:"adjustedByUsername",nullable:!0,length:255}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"adjustedByUsername",void 0),e.__decorate([t.Column("varchar",{name:"note",nullable:!0,length:500}),e.__metadata("design:type",String)],exports.ReferralCredit.prototype,"note",void 0),e.__decorate([t.Column("datetime",{name:"createdAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"createdAt",void 0),e.__decorate([t.Column("datetime",{name:"updatedAt",nullable:!0}),e.__metadata("design:type",Date)],exports.ReferralCredit.prototype,"updatedAt",void 0),exports.ReferralCredit=e.__decorate([t.Index("ixuReferralCreditStripeTx",["stripeBalanceTxId"],{unique:!0}),t.Index("ixuReferralCreditExternalRef",["externalCreditRef"],{unique:!0}),t.Index("ixReferralCreditClientType",["clientId","type"],{}),t.Index("ixReferralCreditReferral",["referralId"],{}),t.Index("ixReferralCreditExpiresAt",["expiresAt"],{}),t.Index("ixReferralCreditClientIssuedAt",["clientId","issuedAt"],{}),t.Entity("referralCredit",{schema:"nova"})],exports.ReferralCredit);
|
package/package.json
CHANGED
package/schema.sql
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
-- nova-orm-schema-checksum:
|
|
1
|
+
-- nova-orm-schema-checksum: c975efa248fad5e33398cdadc89287b8
|
|
2
2
|
-- Nova ORM Schema Dump
|
|
3
|
-
-- Generated at: 2026-09-
|
|
3
|
+
-- Generated at: 2026-09-02T23:17:24.498Z
|
|
4
4
|
|
|
5
5
|
SET FOREIGN_KEY_CHECKS = 0;
|
|
6
6
|
|
|
@@ -2941,6 +2941,7 @@ CREATE TABLE `referralCredit` (
|
|
|
2941
2941
|
`amountCents` int NOT NULL,
|
|
2942
2942
|
`issuedAt` datetime NOT NULL,
|
|
2943
2943
|
`expiresAt` datetime DEFAULT NULL,
|
|
2944
|
+
`stripeBalanceTxId` varchar(100) DEFAULT NULL,
|
|
2944
2945
|
`externalCreditRef` varchar(100) DEFAULT NULL,
|
|
2945
2946
|
`appliedInvoiceId` varchar(100) DEFAULT NULL,
|
|
2946
2947
|
`appliedAt` datetime DEFAULT NULL,
|
|
@@ -2950,6 +2951,7 @@ CREATE TABLE `referralCredit` (
|
|
|
2950
2951
|
`updatedAt` datetime DEFAULT NULL,
|
|
2951
2952
|
PRIMARY KEY (`id`),
|
|
2952
2953
|
UNIQUE KEY `ixuReferralCreditExternalRef` (`externalCreditRef`),
|
|
2954
|
+
UNIQUE KEY `ixuReferralCreditStripeTx` (`stripeBalanceTxId`),
|
|
2953
2955
|
KEY `ixReferralCreditClientIssuedAt` (`clientId`,`issuedAt`),
|
|
2954
2956
|
KEY `ixReferralCreditExpiresAt` (`expiresAt`),
|
|
2955
2957
|
KEY `ixReferralCreditReferral` (`referralId`),
|