F1 component kit/Grids and schedules/Measurement gridPhone

Measurement grid

Missing · new23 · measurement-grid

Pieces side by side in cm with the source label (Recalled / this order / Manual), gold where a value changed from the carried-over one (with the old value), and the Q22 version check: “someone else changed these” with Compare / Use theirs / Keep mine.

Covers: M17. Exports: MeasurementGrid.

Whole page:CompactComfortableLaravel · navyDTC · midnight green
AnatomyStatesDensityEN · 中文Edge casesContract

Anatomy

The component as it sits in the product: English, compact, real data shapes.

Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)

States

5 states, left to right, top to bottom. A mock poll never finishes, so each state is drawn on purpose.

changed values in gold
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
editing a cell
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104107—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
rejected · text kept
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length646.55—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
version conflict (Q22)
Someone else changed these measurementsJ. Ward saved Chest = 105 at 14:29 (version 7 → 8). Your edit is kept; pick one.
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106theirs 105—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
loading

Density

Compact (2b ultra, the default) and comfortable, side by side. Same markup, only the density tokens change.

compact · default · data-density=compact
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
comfortable · data-density=comfortable
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)

English · 中文

Staff pick en or cn (T001 Q25). Labels arrive localised; CJK falls back to PingFang SC / Noto Sans SC.

en
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
中文 · lang=zh-Hans
尺寸 (cm)4521-1 · JA
复用
4521-1 · JA
本单
4521-2 · TR
手动
衣长7676—
肩宽454645—
胸围104106104—
腹围9696—
袖长6465.564—
上臂围3333—
裤腰——86
裤长——104
金色 = 与复用值不同 · 保存时版本校验 (T001 Q22)

Long string · permission denied

The long-string case (PL-063) and what a role without the permission sees (the server decides; T003).

long string
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders (seam to seam across the back, measured over the shirt)454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
permission denied
Not available to your roleEditing measurements needs edit orders. Ask a full admin to grant it.
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)

Both apps

One @rj/admin-kit component, two themes: the Laravel admin (navy pinned) and the DTC admin (kit v4 Midnight green), by token swap only.

Laravel admin · :root
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)
DTC admin · data-theme=dtc
Measurement (cm)4521-1 · JA
Recalled
4521-1 · JA
this order
4521-2 · TR
Manual
Jacket length7676—
Shoulders454645—
Chest104106104—
Stomach9696—
Sleeve length6465.564—
Bicep3333—
Trouser waist——86
Trouser length——104
gold = changed from the carried-over value · version check on save (T001 Q22)

Contract

The @rj/admin-kit API for this family. Mirrored in CONTRACT.md.

Export
MeasurementGrid · @rj/admin-kit
Props
pieces · rows (labels in the real upper / lower order) · carried · version · onSave
States
clean · changed (gold) · editing · rejected · conflict · loading · denied
shadcn / Radix
Table + Input cells + Tooltip
Package underneath
TanStack Table 8 compact · react-hook-form · react-query (409)
Accessibility
row headers are measurement names; changed cells announce “was 45”
API operations
admin.orders.measurements.update (If-Match, expected_version → 409) · admin.orders.measurement-check
Phone variant
read only
Permission
edit orders