sinfactura-types 1.10.511 → 1.10.513
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/account.d.ts +10 -0
- package/dist/cart.d.ts +1 -1
- package/dist/cjs/favorite.js +2 -2
- package/dist/customer.d.ts +48 -27
- package/dist/favorite.js +2 -2
- package/package.json +1 -1
package/dist/account.d.ts
CHANGED
|
@@ -114,6 +114,16 @@ declare global {
|
|
|
114
114
|
* cash row written while today's default drawer was unavailable (no mirror was written).
|
|
115
115
|
*/
|
|
116
116
|
cashMirrorOutcome?: number;
|
|
117
|
+
/**
|
|
118
|
+
* ms epoch at which a customer erasure (or a merge cancel) confirmed this
|
|
119
|
+
* movement's CAJA mirror carries no customer name: rewritten, already clean,
|
|
120
|
+
* not the subject's, or gone. Server-owned bookkeeping, published to NO wire:
|
|
121
|
+
* both projections withhold it and `DELETE /account`'s echo of the deleted
|
|
122
|
+
* row strips it. Its readers are that walk, which skips a row carrying it (so
|
|
123
|
+
* a re-issue resumes instead of restarting and a settled mirror is never
|
|
124
|
+
* rewritten), and the ledger name scrub, which then lets the row's name go.
|
|
125
|
+
*/
|
|
126
|
+
cashMirrorSettledAt?: number;
|
|
117
127
|
/**
|
|
118
128
|
* @deprecated Unix ms at which `currencyValue` was effective (ADR-0013) —
|
|
119
129
|
* but NO writer stamps it on ACCOUNT rows: only the parallel Cash mirror
|
package/dist/cart.d.ts
CHANGED
|
@@ -59,7 +59,7 @@ declare global {
|
|
|
59
59
|
lines: CartLine[];
|
|
60
60
|
/**
|
|
61
61
|
* Save-for-later: a quantity-bearing list held on the CART row, distinct from
|
|
62
|
-
* `
|
|
62
|
+
* the favorites list (`GET /favorites`), which is quantity-less and keyed by customer.
|
|
63
63
|
*
|
|
64
64
|
* ⚠️ OPTIONAL, and it must stay optional. This repo is forward-only and never
|
|
65
65
|
* backfills, so every row written before this shipped has no such attribute.
|
package/dist/cjs/favorite.js
CHANGED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
// A shopper's saved ("hearted") products, one row per product.
|
|
3
3
|
//
|
|
4
4
|
// ⚠️ Forward-only. A customer whose favorites were written before these rows
|
|
5
|
-
// existed still carries the LEGACY `
|
|
6
|
-
//
|
|
5
|
+
// existed still carries the LEGACY `favorites` array on the CUSTOMER row
|
|
6
|
+
// (storage-only, never published); `GET /favorites` reads both (rows win on a shared `productId`) and the
|
|
7
7
|
// first `add`/`remove`/`merge` for that customer materializes the array into
|
|
8
8
|
// rows and then drops it. Nothing backfills, and nothing writes the array any
|
|
9
9
|
// more — the mode-less whole-array `POST /favorites` is retired (400).
|
package/dist/customer.d.ts
CHANGED
|
@@ -251,21 +251,6 @@ declare global {
|
|
|
251
251
|
* already revoked.
|
|
252
252
|
*/
|
|
253
253
|
appleRelayEmail?: string;
|
|
254
|
-
/**
|
|
255
|
-
* @deprecated The LEGACY whole-array wishlist, superseded by the
|
|
256
|
-
* `FAVORITE#` rows (`GET /favorites`). Nothing writes it any more, and
|
|
257
|
-
* `sanitizeCustomerRow` strips it at every CUSTOMER wire boundary, so it
|
|
258
|
-
* never arrives — it survives only as storage on rows not yet
|
|
259
|
-
* materialized, read raw by the favorites dual reader.
|
|
260
|
-
*
|
|
261
|
-
* ⚠️ Still PUBLISHED, as the one exception to "a field the sanitizer
|
|
262
|
-
* strips moves to `CustomerRow`": the storefront's `useFavorites` still
|
|
263
|
-
* reads `AuthCustomer.favorites` as a fallback, and moving the field
|
|
264
|
-
* would break its typecheck on the next types bump. Once that fallback is
|
|
265
|
-
* gone the field moves to `CustomerRow`.
|
|
266
|
-
* TODO(storefront#686): move to `CustomerRow` after the fallback is dropped.
|
|
267
|
-
*/
|
|
268
|
-
favorites?: Partial<Product>[];
|
|
269
254
|
fullName: string;
|
|
270
255
|
lastBuy?: number;
|
|
271
256
|
/**
|
|
@@ -385,6 +370,10 @@ declare global {
|
|
|
385
370
|
*
|
|
386
371
|
* ⚠️ Forward-only: nothing backfills it, and a duplicate that was never
|
|
387
372
|
* merged carries nothing.
|
|
373
|
+
*
|
|
374
|
+
* It SURVIVES a Ley 25.326 erasure of this row (an id, not personal data):
|
|
375
|
+
* the erasure walks the survivor's rows that came from here, and a re-issue
|
|
376
|
+
* needs it to find them again.
|
|
388
377
|
*/
|
|
389
378
|
mergedInto?: string;
|
|
390
379
|
/**
|
|
@@ -960,8 +949,8 @@ declare global {
|
|
|
960
949
|
/**
|
|
961
950
|
* The subject's favorites, newest first. On BOTH surfaces — it is the
|
|
962
951
|
* subject's own data. Read from the `FAVORITE#` rows UNIONED with a legacy
|
|
963
|
-
* `
|
|
964
|
-
* `customer` object above
|
|
952
|
+
* `favorites` array on the CUSTOMER row not yet materialized (rows win), because the
|
|
953
|
+
* `customer` object above never carries that array.
|
|
965
954
|
*/
|
|
966
955
|
favorites: CustomerFavoriteExportEntry[];
|
|
967
956
|
/**
|
|
@@ -1050,11 +1039,40 @@ declare global {
|
|
|
1050
1039
|
*/
|
|
1051
1040
|
ledgerRowsScrubbed: number;
|
|
1052
1041
|
/**
|
|
1053
|
-
* `false` when the ledger could not be read to the end,
|
|
1054
|
-
*
|
|
1055
|
-
*
|
|
1042
|
+
* `false` when the ledger could not be read to the end, or the erasure ran
|
|
1043
|
+
* out of time before every row was written, so rows carrying the name may
|
|
1044
|
+
* remain — including a movement whose CAJA mirror the scrub did not reach,
|
|
1045
|
+
* whose ledger name is kept as the proof the next pass needs. The
|
|
1046
|
+
* CUSTOMER row IS anonymised either way; a caller must surface this rather
|
|
1047
|
+
* than implying a clean scrub.
|
|
1056
1048
|
*/
|
|
1057
1049
|
ledgerScrubComplete: boolean;
|
|
1050
|
+
/**
|
|
1051
|
+
* `CASH#{storeId}` drawer rows — the CAJA mirror `POST /account` writes for a
|
|
1052
|
+
* cash movement — whose `description` this erasure rewrote to the movement's
|
|
1053
|
+
* motivo alone, taking the customer's name off `GET /cash`. Only rows this
|
|
1054
|
+
* call CHANGED are counted. A mirror once settled is marked on its ledger row
|
|
1055
|
+
* and never visited again, so a re-issue counts only the mirrors earlier
|
|
1056
|
+
* passes did not reach, and reads `0` once every mirror is settled. The
|
|
1057
|
+
* amounts are not touched.
|
|
1058
|
+
*/
|
|
1059
|
+
cashMirrorsScrubbed?: number;
|
|
1060
|
+
/**
|
|
1061
|
+
* `false` when a mirror may still carry the name: the subject's cash
|
|
1062
|
+
* movements could not be read to the end, a read or write failed, the
|
|
1063
|
+
* erasure ran out of time, or a row at a movement's key could not be proven
|
|
1064
|
+
* to be that movement's mirror and was left untouched. BOTH erasure handlers
|
|
1065
|
+
* write an `ERROR` row (`CUSTOMER_ANONYMIZE_CASH_MIRROR_INCOMPLETE`), deduped
|
|
1066
|
+
* per customer per day, naming the unproven drawer rows by `cashId`;
|
|
1067
|
+
* re-issuing the erasure resumes the scrub where it stopped. An unproven
|
|
1068
|
+
* row stays reported until it is gone or its `description` is empty or the
|
|
1069
|
+
* movement's motivo alone (an operator's `POST /cash` edit). For a
|
|
1070
|
+
* merged-away customer it also covers the mirrors of the movements the
|
|
1071
|
+
* merge moved to the survivor.
|
|
1072
|
+
* Optional only so the field is additive — every erasure from this version
|
|
1073
|
+
* on sets it.
|
|
1074
|
+
*/
|
|
1075
|
+
cashMirrorScrubComplete?: boolean;
|
|
1058
1076
|
/**
|
|
1059
1077
|
* Operator notes about this customer (`CUSTOMER_NOTE#{storeId}#{customerId}`)
|
|
1060
1078
|
* DELETED by this erasure. Unlike the ledger, notes are not a fiscal record:
|
|
@@ -1115,7 +1133,10 @@ declare global {
|
|
|
1115
1133
|
* `cancellationReason`) removed, a MercadoLibre row's `buyerNickname`
|
|
1116
1134
|
* removed, the `search` name dropped, `recipientAnonymizedAt` stamped. The
|
|
1117
1135
|
* row itself is kept (it is a sale); the retained fiscal receptor lives on
|
|
1118
|
-
* `INVOICE#`. Survey rows are not counted here.
|
|
1136
|
+
* `INVOICE#`. Survey rows are not counted here. Only rows THIS call wrote
|
|
1137
|
+
* are counted: a re-issue reads only the orders not stamped yet, so it
|
|
1138
|
+
* counts the ones an earlier pass did not reach and reads `0` once every
|
|
1139
|
+
* order is scrubbed.
|
|
1119
1140
|
*/
|
|
1120
1141
|
orderRowsScrubbed: number;
|
|
1121
1142
|
/**
|
|
@@ -1123,7 +1144,10 @@ declare global {
|
|
|
1123
1144
|
* `comment` the same step blanks — could not be read or written to the end,
|
|
1124
1145
|
* so a row carrying the name or the subject's free text may remain. BOTH
|
|
1125
1146
|
* erasure handlers write an un-deduped `ERROR` row
|
|
1126
|
-
* (`CUSTOMER_ANONYMIZE_ORDERS_INCOMPLETE`).
|
|
1147
|
+
* (`CUSTOMER_ANONYMIZE_ORDERS_INCOMPLETE`). ALWAYS `false` for a merged-away
|
|
1148
|
+
* customer (`mergedInto`): the merge re-pointed their orders to the survivor
|
|
1149
|
+
* with no provenance to find them by, so only erasing the survivor reaches
|
|
1150
|
+
* those orders' frozen recipient.
|
|
1127
1151
|
*/
|
|
1128
1152
|
orderScrubComplete: boolean;
|
|
1129
1153
|
}
|
|
@@ -1138,11 +1162,8 @@ declare global {
|
|
|
1138
1162
|
* are dropped there too, and neither is declared on `Customer` any more —
|
|
1139
1163
|
* they live on the api-internal `CustomerRow`, because a field this body
|
|
1140
1164
|
* never carries has no business being published.
|
|
1141
|
-
*
|
|
1142
|
-
*
|
|
1143
|
-
* and so never arrives, yet stays declared on `Customer` until the
|
|
1144
|
-
* storefront's `useFavorites` fallback that reads it is removed; the field
|
|
1145
|
-
* then moves to `CustomerRow` (the follow-up is tracked on that docblock).
|
|
1165
|
+
* The deprecated legacy `favorites` array is on `CustomerRow` for the same
|
|
1166
|
+
* reason: stripped there too, so never on this body.
|
|
1146
1167
|
*/
|
|
1147
1168
|
interface AuthCustomer extends Customer {
|
|
1148
1169
|
accessToken: string;
|
package/dist/favorite.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
// A shopper's saved ("hearted") products, one row per product.
|
|
2
2
|
//
|
|
3
3
|
// ⚠️ Forward-only. A customer whose favorites were written before these rows
|
|
4
|
-
// existed still carries the LEGACY `
|
|
5
|
-
//
|
|
4
|
+
// existed still carries the LEGACY `favorites` array on the CUSTOMER row
|
|
5
|
+
// (storage-only, never published); `GET /favorites` reads both (rows win on a shared `productId`) and the
|
|
6
6
|
// first `add`/`remove`/`merge` for that customer materializes the array into
|
|
7
7
|
// rows and then drops it. Nothing backfills, and nothing writes the array any
|
|
8
8
|
// more — the mode-less whole-array `POST /favorites` is retired (400).
|