Add tooltips for readonly item system properties
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
// Maintainer-controlled web client version.
|
// Maintainer-controlled web client version.
|
||||||
// Format: YYYY.MM.DD Rn (example: 2026.02.20 R2)
|
// Format: YYYY.MM.DD Rn (example: 2026.02.20 R2)
|
||||||
window.CHGRID_WEB_VERSION = "2026.02.25 R280";
|
window.CHGRID_WEB_VERSION = "2026.02.27 R281";
|
||||||
// Optional display timezone for timestamps. Falls back to America/Detroit if unset/invalid.
|
// Optional display timezone for timestamps. Falls back to America/Detroit if unset/invalid.
|
||||||
window.CHGRID_TIME_ZONE = "America/Detroit";
|
window.CHGRID_TIME_ZONE = "America/Detroit";
|
||||||
|
|||||||
@@ -80,6 +80,15 @@ ITEM_TYPE_TOOLTIPS: dict[ItemType, str] = {
|
|||||||
}
|
}
|
||||||
|
|
||||||
GLOBAL_ITEM_PROPERTY_METADATA: dict[str, dict[str, object]] = {
|
GLOBAL_ITEM_PROPERTY_METADATA: dict[str, dict[str, object]] = {
|
||||||
|
"type": {"valueType": "text", "tooltip": "Item type id for this object.", "label": "Type"},
|
||||||
|
"x": {"valueType": "number", "tooltip": "Item X coordinate on the grid.", "label": "X"},
|
||||||
|
"y": {"valueType": "number", "tooltip": "Item Y coordinate on the grid.", "label": "Y"},
|
||||||
|
"carrierId": {"valueType": "text", "tooltip": "User id currently carrying this item, or none.", "label": "Carrier"},
|
||||||
|
"version": {"valueType": "number", "tooltip": "Server-side item version incremented on each update.", "label": "Version"},
|
||||||
|
"createdBy": {"valueType": "text", "tooltip": "Username that originally created this item.", "label": "Created by"},
|
||||||
|
"createdAt": {"valueType": "text", "tooltip": "Creation timestamp for this item.", "label": "Created at"},
|
||||||
|
"updatedAt": {"valueType": "text", "tooltip": "Last update timestamp for this item.", "label": "Updated at"},
|
||||||
|
"capabilities": {"valueType": "text", "tooltip": "Supported actions for this item type.", "label": "Capabilities"},
|
||||||
"useSound": {
|
"useSound": {
|
||||||
"valueType": "sound",
|
"valueType": "sound",
|
||||||
"tooltip": "One-shot sound played when this item is used successfully.",
|
"tooltip": "One-shot sound played when this item is used successfully.",
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ def test_ui_definitions_are_complete_for_all_item_types() -> None:
|
|||||||
assert len(item_types) == len(item_type_order)
|
assert len(item_types) == len(item_type_order)
|
||||||
assert [entry.get("type") for entry in item_types] == item_type_order
|
assert [entry.get("type") for entry in item_types] == item_type_order
|
||||||
|
|
||||||
required_global_keys = {
|
required_global_property_keys = {
|
||||||
"useSound",
|
"useSound",
|
||||||
"emitSound",
|
"emitSound",
|
||||||
"useCooldownMs",
|
"useCooldownMs",
|
||||||
@@ -28,6 +28,17 @@ def test_ui_definitions_are_complete_for_all_item_types() -> None:
|
|||||||
"emitSoundSpeed",
|
"emitSoundSpeed",
|
||||||
"emitSoundTempo",
|
"emitSoundTempo",
|
||||||
}
|
}
|
||||||
|
required_system_metadata_keys = {
|
||||||
|
"type",
|
||||||
|
"x",
|
||||||
|
"y",
|
||||||
|
"carrierId",
|
||||||
|
"version",
|
||||||
|
"createdBy",
|
||||||
|
"createdAt",
|
||||||
|
"updatedAt",
|
||||||
|
"capabilities",
|
||||||
|
}
|
||||||
|
|
||||||
for entry in item_types:
|
for entry in item_types:
|
||||||
assert isinstance(entry.get("type"), str)
|
assert isinstance(entry.get("type"), str)
|
||||||
@@ -43,7 +54,8 @@ def test_ui_definitions_are_complete_for_all_item_types() -> None:
|
|||||||
global_properties = entry["globalProperties"]
|
global_properties = entry["globalProperties"]
|
||||||
|
|
||||||
assert capabilities
|
assert capabilities
|
||||||
assert required_global_keys.issubset(set(global_properties.keys()))
|
assert required_global_property_keys.issubset(set(global_properties.keys()))
|
||||||
|
assert required_system_metadata_keys.issubset(set(property_metadata.keys()))
|
||||||
for property_key in editable_properties:
|
for property_key in editable_properties:
|
||||||
if property_key == "title":
|
if property_key == "title":
|
||||||
continue
|
continue
|
||||||
|
|||||||
Reference in New Issue
Block a user