@stapel/listings-react 0.14.0 → 0.15.0
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/CHANGELOG.md +67 -1
- package/dist/api/generated/schema.d.ts +158 -7
- package/dist/api/generated/schema.d.ts.map +1 -1
- package/dist/api/types.d.ts +29 -0
- package/dist/api/types.d.ts.map +1 -1
- package/dist/api/types.js.map +1 -1
- package/dist/default/ListingDetailPane.d.ts.map +1 -1
- package/dist/default/ListingDetailPane.js +18 -3
- package/dist/default/ListingDetailPane.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/model/features.d.ts +32 -0
- package/dist/model/features.d.ts.map +1 -1
- package/dist/model/features.js +121 -2
- package/dist/model/features.js.map +1 -1
- package/llms.txt +2 -2
- package/manifest.json +3 -2
- package/nav-manifest.json +1 -1
- package/package.json +5 -5
- package/src/analytics/generated/events.json +1 -1
- package/src/api/generated/schema.ts +158 -7
- package/src/api/types.ts +29 -0
- package/src/default/ListingDetailPane.tsx +19 -4
- package/src/index.ts +1 -0
- package/src/model/features.ts +125 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListingDetailPane.js","sourceRoot":"","sources":["../../src/default/ListingDetailPane.tsx"],"names":[],"mappings":";AAoCA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AACvE,OAAO,EACL,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,EACZ,SAAS,GACV,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,eAAe,EACf,SAAS,EACT,OAAO,EACP,IAAI,GACL,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AACzC,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"ListingDetailPane.js","sourceRoot":"","sources":["../../src/default/ListingDetailPane.tsx"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -72,7 +72,7 @@ export type { MyListingsSource } from "./model/mineSource.js";
|
|
|
72
72
|
export { myListingImages, myListingPrice, myListingTitle, showsDraft, } from "./model/mine.js";
|
|
73
73
|
export { EMPTY_LOCATION, createDraftBody, draftPatchFromValues, draftValuesFromDetail, draftValuesFromWire, droppedFeatureSlugs, emptyDraftValues, retainKnownFeatureValues, } from "./model/draft.js";
|
|
74
74
|
export type { EmptyDraftOptions, ListingDraftValues, ListingLocation, } from "./model/draft.js";
|
|
75
|
-
export { asFeatureDaoList, featureFromDao, featuresDtoFromDaoList, featuresFromDaoList, unreadableFeatureCount, } from "./model/features.js";
|
|
75
|
+
export { asFeatureDaoList, featureFromDao, featureValuesForDisplay, featuresDtoFromDaoList, featuresFromDaoList, unreadableFeatureCount, } from "./model/features.js";
|
|
76
76
|
export type { FeatureCopySource } from "./model/features.js";
|
|
77
77
|
export { CATEGORY_FIELD, DEFAULT_DRAFT_LIMITS, DESCRIPTION_FIELD, IMAGES_FIELD, LOCATION_FIELD, PRICE_FIELD, TITLE_FIELD, envelopeFieldErrors, failedResults, isBatchValid, listingFieldErrors, mirrorDraft, mirrorListingFields, publishRefusal, } from "./model/validation.js";
|
|
78
78
|
export type { ListingDraftLimits, PublishRefusal } from "./model/validation.js";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -72,7 +72,7 @@ export { myListingImages, myListingPrice, myListingTitle, showsDraft, } from "./
|
|
|
72
72
|
// ── model: the draft twin ────────────────────────────────────────────────────
|
|
73
73
|
export { EMPTY_LOCATION, createDraftBody, draftPatchFromValues, draftValuesFromDetail, draftValuesFromWire, droppedFeatureSlugs, emptyDraftValues, retainKnownFeatureValues, } from "./model/draft.js";
|
|
74
74
|
// ── model: the stored feature projection ─────────────────────────────────────
|
|
75
|
-
export { asFeatureDaoList, featureFromDao, featuresDtoFromDaoList, featuresFromDaoList, unreadableFeatureCount, } from "./model/features.js";
|
|
75
|
+
export { asFeatureDaoList, featureFromDao, featureValuesForDisplay, featuresDtoFromDaoList, featuresFromDaoList, unreadableFeatureCount, } from "./model/features.js";
|
|
76
76
|
// ── model: validation, the mirror and the publish-400 split ──────────────────
|
|
77
77
|
export { CATEGORY_FIELD, DEFAULT_DRAFT_LIMITS, DESCRIPTION_FIELD, IMAGES_FIELD, LOCATION_FIELD, PRICE_FIELD, TITLE_FIELD, envelopeFieldErrors, failedResults, isBatchValid, listingFieldErrors, mirrorDraft, mirrorListingFields, publishRefusal, } from "./model/validation.js";
|
|
78
78
|
// ── model: runtime wiring, query keys, context, hooks ────────────────────────
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AAEH,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAEzD,OAAO,EACL,wBAAwB,EACxB,gBAAgB,EAChB,mBAAmB,GACpB,MAAM,gBAAgB,CAAC;AA6BxB,gFAAgF;AAChF,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,GACN,MAAM,mBAAmB,CAAC;AAQ3B,OAAO,EAAE,mBAAmB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAEvF,gFAAgF;AAChF,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AAEhE,OAAO,EACL,eAAe,EACf,cAAc,EACd,cAAc,EACd,UAAU,GACX,MAAM,iBAAiB,CAAC;AAEzB,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,wBAAwB,GACzB,MAAM,kBAAkB,CAAC;AAO1B,gFAAgF;AAChF,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,uBAAuB,EACvB,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAG7B,gFAAgF;AAChF,OAAO,EACL,cAAc,EACd,oBAAoB,EACpB,iBAAiB,EACjB,YAAY,EACZ,cAAc,EACd,WAAW,EACX,WAAW,EACX,mBAAmB,EACnB,aAAa,EACb,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,mBAAmB,EACnB,cAAc,GACf,MAAM,uBAAuB,CAAC;AAG/B,gFAAgF;AAChF,OAAO,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAM3D,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,cAAc,EACd,kBAAkB,GACnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAElE,OAAO,EACL,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,YAAY,GACb,MAAM,sBAAsB,CAAC;AAG9B,gFAAgF;AAChF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOpE,gFAAgF;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAK9E,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAQpF,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAKrE,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAMrF,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGjE,gFAAgF;AAChF,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEhE,gFAAgF;AAChF,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,gBAAgB,CAAC;AAGxB,gFAAgF;AAChF,OAAO,EACL,eAAe,EACf,oBAAoB,EACpB,4BAA4B,EAC5B,0BAA0B,EAC1B,iBAAiB,EACjB,iCAAiC,EACjC,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC"}
|
package/dist/model/features.d.ts
CHANGED
|
@@ -138,8 +138,40 @@ export declare function unreadableFeatureCount(daos: readonly ListingFeatureDao[
|
|
|
138
138
|
* a composer reopening a PUBLISHED listing needs: `draftValuesFromDetail`
|
|
139
139
|
* seeds its editors from the published values, and the published values live
|
|
140
140
|
* only in the DAO list.
|
|
141
|
+
*
|
|
142
|
+
* ── Why a redacted stub is DROPPED here, and not passed through ────────────
|
|
143
|
+
*
|
|
144
|
+
* This is the EDIT envelope, and the only one that can destroy data. A stub
|
|
145
|
+
* has no value; seeding an editor from it would put `undefined` in the
|
|
146
|
+
* composer's draft under the seller's own slug, and the next save would write
|
|
147
|
+
* that back — blanking a stored VIN the seller never touched and cannot see
|
|
148
|
+
* was blanked. Dropping the row instead leaves the field empty in the form
|
|
149
|
+
* and untouched in the record, which is the recoverable failure.
|
|
150
|
+
*
|
|
151
|
+
* A composer reopening a listing belongs to its OWNER, whose read is
|
|
152
|
+
* unredacted, so a stub reaching this function means something upstream
|
|
153
|
+
* already went wrong — a cached anonymous payload, a viewer id that did not
|
|
154
|
+
* arrive, a host wiring the public detail into an edit form. It fails safe
|
|
155
|
+
* rather than fails loudly on purpose: there is no honest recovery from "the
|
|
156
|
+
* value was withheld from the person editing it", and refusing the whole seed
|
|
157
|
+
* would take the other twenty answers down with it.
|
|
158
|
+
*
|
|
159
|
+
* {@link featureValuesForDisplay} is the other half of this split: a spec
|
|
160
|
+
* table WANTS the stub, because "the seller answered this" is exactly what it
|
|
161
|
+
* has to say.
|
|
141
162
|
*/
|
|
142
163
|
export declare function featuresDtoFromDaoList(daos: readonly ListingFeatureDao[] | null | undefined): Readonly<Record<string, FeatureValueDto>>;
|
|
164
|
+
/**
|
|
165
|
+
* A stored projection → the envelope a DISPLAY component reads, redacted
|
|
166
|
+
* stubs and all.
|
|
167
|
+
*
|
|
168
|
+
* Same shape as {@link featuresDtoFromDaoList} and a different job, which is
|
|
169
|
+
* why it is a different function rather than a flag: a stub belongs in a spec
|
|
170
|
+
* table (in place, in order, saying the seller answered) and must never reach
|
|
171
|
+
* an editor. A boolean argument would put the destructive default one
|
|
172
|
+
* forgotten parameter away.
|
|
173
|
+
*/
|
|
174
|
+
export declare function featureValuesForDisplay(daos: readonly ListingFeatureDao[] | null | undefined, source?: FeatureCopySource): Readonly<Record<string, FeatureValueDto>>;
|
|
143
175
|
/**
|
|
144
176
|
* The `features` field of a detail response, typed.
|
|
145
177
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/model/features.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"features.d.ts","sourceRoot":"","sources":["../../src/model/features.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiGG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAE5E,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AA0F7E;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC;;;;;OAKG;IACH,QAAQ,CAAC,gBAAgB,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;CACnD;AAiID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,iBAAiB,EACtB,MAAM,GAAE,iBAAsB,GAC7B,kBAAkB,GAAG,SAAS,CAEhC;AAoED;;;mCAGmC;AACnC,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,GAAG,SAAS,EACrD,MAAM,GAAE,iBAAsB,GAC7B,SAAS,kBAAkB,EAAE,CAQ/B;AAED,qEAAqE;AACrE,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,GAAG,SAAS,GACpD,MAAM,CAER;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,GAAG,SAAS,GACpD,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAO3C;AAED;;;;;;;;;GASG;AACH,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,SAAS,iBAAiB,EAAE,GAAG,IAAI,GAAG,SAAS,EACrD,MAAM,GAAE,iBAAsB,GAC7B,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC,CAM3C;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,SAAS,iBAAiB,EAAE,CAE7E"}
|
package/dist/model/features.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { featureType } from "@stapel/attributes-react";
|
|
1
|
+
import { featureType, isRedactedValue } from "@stapel/attributes-react";
|
|
2
2
|
/**
|
|
3
3
|
* Keys that belong to the DAO envelope rather than to the type's config.
|
|
4
4
|
*
|
|
@@ -10,7 +10,30 @@ import { featureType } from "@stapel/attributes-react";
|
|
|
10
10
|
* two types print. For `select` the key is simply inert — its formatter reads
|
|
11
11
|
* `options` and nothing else — so carrying it costs a reference.
|
|
12
12
|
*/
|
|
13
|
-
const ENVELOPE = new Set([
|
|
13
|
+
const ENVELOPE = new Set([
|
|
14
|
+
"slug",
|
|
15
|
+
"value",
|
|
16
|
+
"name",
|
|
17
|
+
"order",
|
|
18
|
+
"title",
|
|
19
|
+
"badge",
|
|
20
|
+
// ── The visibility axis (stapel-attributes 0.8.1 / stapel-listings 0.12.0) ──
|
|
21
|
+
//
|
|
22
|
+
// These four are envelope for exactly the reason the six above are: they
|
|
23
|
+
// describe the ROW, not the type, and no formatter has ever read one. But
|
|
24
|
+
// they matter more than the others, because the alternative is not noise —
|
|
25
|
+
// it is a marker reaching the display BY ACCIDENT, through the index
|
|
26
|
+
// signature, with nothing stating that it did.
|
|
27
|
+
//
|
|
28
|
+
// `visibility` is a genuine `FeatureDef` field and is lifted onto the
|
|
29
|
+
// definition below; `redacted`/`present`/`verification` describe THIS
|
|
30
|
+
// reader's access to THIS stored value, so they ride the value envelope,
|
|
31
|
+
// which is where `@stapel/attributes-react`'s predicates read them.
|
|
32
|
+
"visibility",
|
|
33
|
+
"redacted",
|
|
34
|
+
"present",
|
|
35
|
+
"verification",
|
|
36
|
+
]);
|
|
14
37
|
/** The type whose stored `value` is a flat list of option keys rather than the
|
|
15
38
|
* things themselves, and whose copy therefore has to be repaired pairwise.
|
|
16
39
|
* `ref_select` is absent because it repairs itself: its `labels` snapshot has
|
|
@@ -34,6 +57,32 @@ const TREE_VALUED = new Set(["hierarchical_select"]);
|
|
|
34
57
|
function isTranslateMode(value) {
|
|
35
58
|
return value === "all" || value === "title" || value === "none";
|
|
36
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* The stamped `FeatureDef.visibility`, or `undefined` when the row is public.
|
|
62
|
+
*
|
|
63
|
+
* `public` is stamped as nothing at all upstream (`dataclass_to_dict_no_none`
|
|
64
|
+
* drops it), which is why an existing public row is byte-identical after the
|
|
65
|
+
* axis landed — so an absent key means public and is dropped here too.
|
|
66
|
+
*
|
|
67
|
+
* A string that is NOT one of the three becomes `"staff"`, the most
|
|
68
|
+
* restrictive one. Python raises `UnknownVisibility` on the same input; this
|
|
69
|
+
* side has nobody to raise at, so it takes the only direction that cannot
|
|
70
|
+
* leak — a typo must not publish a VIN. The engine normalizes at write time,
|
|
71
|
+
* so this is the belt on a stored row nobody expects to see.
|
|
72
|
+
*/
|
|
73
|
+
function storedVisibility(value) {
|
|
74
|
+
if (typeof value !== "string" || value.length === 0 || value === "public")
|
|
75
|
+
return undefined;
|
|
76
|
+
return value === "owner" || value === "staff" ? value : "staff";
|
|
77
|
+
}
|
|
78
|
+
/** A `verification` result, when the row carries one. An object and nothing
|
|
79
|
+
* else: the shape belongs to whichever product ran the check, and this
|
|
80
|
+
* projection passes it through rather than describing it. */
|
|
81
|
+
function storedVerification(value) {
|
|
82
|
+
if (value === null || typeof value !== "object" || Array.isArray(value))
|
|
83
|
+
return undefined;
|
|
84
|
+
return value;
|
|
85
|
+
}
|
|
37
86
|
function categoryDefs(source) {
|
|
38
87
|
const defs = source.categoryFeatures;
|
|
39
88
|
if (defs === undefined || defs.length === 0)
|
|
@@ -176,6 +225,7 @@ function featureView(dao, defs) {
|
|
|
176
225
|
const options = selectOptions(dao, config, categoryDef) ?? adoptedTree(dao, config, categoryDef);
|
|
177
226
|
if (options !== undefined)
|
|
178
227
|
config["options"] = options;
|
|
228
|
+
const visibility = storedVisibility(dao.visibility);
|
|
179
229
|
const feature = {
|
|
180
230
|
slug: dao.slug,
|
|
181
231
|
config,
|
|
@@ -185,7 +235,36 @@ function featureView(dao, defs) {
|
|
|
185
235
|
// the three is dropped rather than smuggled through: `FeatureDef`'s own
|
|
186
236
|
// default is `all`, which is what the engine falls back to anyway.
|
|
187
237
|
...(isTranslateMode(dao.translate) ? { translate: dao.translate } : {}),
|
|
238
|
+
// A genuine `FeatureDef` field, so it goes on the DEFINITION rather than
|
|
239
|
+
// into `config`: it is what `isPublicFeature` reads to keep a hidden
|
|
240
|
+
// value off a badge strip.
|
|
241
|
+
...(visibility !== undefined ? { visibility } : {}),
|
|
188
242
|
};
|
|
243
|
+
// A REDACTED STUB — a row this reader may not see — carries no `value` key
|
|
244
|
+
// at all, and this envelope must not invent one. What it carries instead is
|
|
245
|
+
// what the system honestly observed: `present` (did the seller answer) and,
|
|
246
|
+
// reserved for the day some product actually runs a VIN or an IMEI check,
|
|
247
|
+
// `verification`. `@stapel/attributes-react`'s `<FeatureValueList/>` reads
|
|
248
|
+
// exactly these and prints "provided by the seller" — never "verified".
|
|
249
|
+
//
|
|
250
|
+
// The row is built even when `type` is missing, which the normal path below
|
|
251
|
+
// refuses: an unkeyable value is a row a buyer cannot be told about, but a
|
|
252
|
+
// stub's whole content is "this field exists and was answered", and that is
|
|
253
|
+
// still true without a type slug.
|
|
254
|
+
if (dao.redacted === true) {
|
|
255
|
+
const verification = storedVerification(dao.verification);
|
|
256
|
+
const stub = {
|
|
257
|
+
type: typeof dao.type === "string" ? dao.type : "",
|
|
258
|
+
// No stored answer exists on this side of the wire. Spelled rather than
|
|
259
|
+
// omitted only because `FeatureValueDto.value` is a required key;
|
|
260
|
+
// `isBlank(undefined)` is true, so no formatter prints anything for it.
|
|
261
|
+
value: undefined,
|
|
262
|
+
redacted: true,
|
|
263
|
+
present: dao.present === true,
|
|
264
|
+
...(verification !== undefined ? { verification } : {}),
|
|
265
|
+
};
|
|
266
|
+
return { feature, value: stub };
|
|
267
|
+
}
|
|
189
268
|
const value = typeof dao.type === "string" && dao.type.length > 0
|
|
190
269
|
? { type: dao.type, value: dao.value }
|
|
191
270
|
: undefined;
|
|
@@ -214,10 +293,50 @@ export function unreadableFeatureCount(daos) {
|
|
|
214
293
|
* a composer reopening a PUBLISHED listing needs: `draftValuesFromDetail`
|
|
215
294
|
* seeds its editors from the published values, and the published values live
|
|
216
295
|
* only in the DAO list.
|
|
296
|
+
*
|
|
297
|
+
* ── Why a redacted stub is DROPPED here, and not passed through ────────────
|
|
298
|
+
*
|
|
299
|
+
* This is the EDIT envelope, and the only one that can destroy data. A stub
|
|
300
|
+
* has no value; seeding an editor from it would put `undefined` in the
|
|
301
|
+
* composer's draft under the seller's own slug, and the next save would write
|
|
302
|
+
* that back — blanking a stored VIN the seller never touched and cannot see
|
|
303
|
+
* was blanked. Dropping the row instead leaves the field empty in the form
|
|
304
|
+
* and untouched in the record, which is the recoverable failure.
|
|
305
|
+
*
|
|
306
|
+
* A composer reopening a listing belongs to its OWNER, whose read is
|
|
307
|
+
* unredacted, so a stub reaching this function means something upstream
|
|
308
|
+
* already went wrong — a cached anonymous payload, a viewer id that did not
|
|
309
|
+
* arrive, a host wiring the public detail into an edit form. It fails safe
|
|
310
|
+
* rather than fails loudly on purpose: there is no honest recovery from "the
|
|
311
|
+
* value was withheld from the person editing it", and refusing the whole seed
|
|
312
|
+
* would take the other twenty answers down with it.
|
|
313
|
+
*
|
|
314
|
+
* {@link featureValuesForDisplay} is the other half of this split: a spec
|
|
315
|
+
* table WANTS the stub, because "the seller answered this" is exactly what it
|
|
316
|
+
* has to say.
|
|
217
317
|
*/
|
|
218
318
|
export function featuresDtoFromDaoList(daos) {
|
|
219
319
|
const out = {};
|
|
220
320
|
for (const view of featuresFromDaoList(daos)) {
|
|
321
|
+
if (view.value === undefined || isRedactedValue(view.value))
|
|
322
|
+
continue;
|
|
323
|
+
out[view.feature.slug] = view.value;
|
|
324
|
+
}
|
|
325
|
+
return out;
|
|
326
|
+
}
|
|
327
|
+
/**
|
|
328
|
+
* A stored projection → the envelope a DISPLAY component reads, redacted
|
|
329
|
+
* stubs and all.
|
|
330
|
+
*
|
|
331
|
+
* Same shape as {@link featuresDtoFromDaoList} and a different job, which is
|
|
332
|
+
* why it is a different function rather than a flag: a stub belongs in a spec
|
|
333
|
+
* table (in place, in order, saying the seller answered) and must never reach
|
|
334
|
+
* an editor. A boolean argument would put the destructive default one
|
|
335
|
+
* forgotten parameter away.
|
|
336
|
+
*/
|
|
337
|
+
export function featureValuesForDisplay(daos, source = {}) {
|
|
338
|
+
const out = {};
|
|
339
|
+
for (const view of featuresFromDaoList(daos, source)) {
|
|
221
340
|
if (view.value !== undefined)
|
|
222
341
|
out[view.feature.slug] = view.value;
|
|
223
342
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/model/features.ts"],"names":[],"mappings":"AAmGA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"features.js","sourceRoot":"","sources":["../../src/model/features.ts"],"names":[],"mappings":"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"}
|
package/llms.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# @stapel/listings-react 0.
|
|
1
|
+
# @stapel/listings-react 0.15.0
|
|
2
2
|
|
|
3
|
-
Headless React flow pair for stapel-listings (contract >=0.
|
|
3
|
+
Headless React flow pair for stapel-listings (contract >=0.12 <0.13) — business + state, zero visual opinion.
|
|
4
4
|
Built on @stapel/core: typed client + StapelApiError envelope, auth token refresh,
|
|
5
5
|
verification-403 interception, i18n engine, analytics facade, TanStack Query layer.
|
|
6
6
|
|
package/manifest.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$generated": "by scripts/gen-manifest.mjs — do not edit; drift-gated (pnpm gen:manifest:check)",
|
|
3
3
|
"package": "@stapel/listings-react",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.15.0",
|
|
5
5
|
"backend": {
|
|
6
6
|
"module": "stapel-listings",
|
|
7
|
-
"contract": ">=0.
|
|
7
|
+
"contract": ">=0.12 <0.13"
|
|
8
8
|
},
|
|
9
9
|
"layers": [
|
|
10
10
|
"api",
|
|
@@ -1086,6 +1086,7 @@
|
|
|
1086
1086
|
"explainListingsError",
|
|
1087
1087
|
"failedResults",
|
|
1088
1088
|
"featureFromDao",
|
|
1089
|
+
"featureValuesForDisplay",
|
|
1089
1090
|
"featuresDtoFromDaoList",
|
|
1090
1091
|
"featuresFromDaoList",
|
|
1091
1092
|
"flowEndpoints",
|
package/nav-manifest.json
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stapel/listings-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.15.0",
|
|
4
4
|
"description": "Headless React pair for stapel-listings: a typed client over the draft twin, the composer that turns a category schema into a submittable listing, and the owner's dashboard. Two independent axes are rendered as two — lifecycle `status` decides visibility and `moderation_status` decides nothing about it, so an edit to a live listing stays live and says 'under review' instead of vanishing. Feature values are drawn and mirrored by @stapel/attributes-react; photos arrive as an injected upload bag whose `refs` ARE `images_draft` and whose `settled` gates the submit; a publish refusal is routed onto the control that caused it by slug. Zero visual opinion in the main entry; an opt-in /default subpath ships the antd skin.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
}
|
|
70
70
|
],
|
|
71
71
|
"peerDependencies": {
|
|
72
|
-
"@stapel/attributes-react": ">=0.
|
|
72
|
+
"@stapel/attributes-react": ">=0.10.0",
|
|
73
73
|
"@stapel/core": ">=0.19.0 <1.0.0",
|
|
74
74
|
"@stapel/currencies-react": ">=0.2.0",
|
|
75
75
|
"@stapel/image": ">=0.2.0",
|
|
@@ -102,13 +102,13 @@
|
|
|
102
102
|
"size-limit": "^11.2.0",
|
|
103
103
|
"typescript": "^5.8.3",
|
|
104
104
|
"vitest": "^3.2.4",
|
|
105
|
-
"@stapel/attributes-react": "^0.
|
|
106
|
-
"@stapel/core": "^0.
|
|
105
|
+
"@stapel/attributes-react": "^0.10.0",
|
|
106
|
+
"@stapel/core": "^0.23.0",
|
|
107
107
|
"@stapel/currencies-react": "^0.3.0",
|
|
108
108
|
"@stapel/image": "^0.4.2",
|
|
109
109
|
"@stapel/showcase": "^0.3.0",
|
|
110
110
|
"@stapel/tokens": "^0.6.0",
|
|
111
|
-
"@stapel/tokens-antd": "^0.
|
|
111
|
+
"@stapel/tokens-antd": "^0.12.0"
|
|
112
112
|
},
|
|
113
113
|
"engines": {
|
|
114
114
|
"node": ">=22"
|