Apply group membership on RX, accept select as [preset_id, step?], and fix identify/off plus presets layout for manual beat stepping. Co-authored-by: Cursor <cursoragent@cursor.com>
37 lines
837 B
Python
37 lines
837 B
Python
"""Expand short v1 wire keys to long names (MicroPython)."""
|
|
|
|
|
|
K_PRESETS = "p"
|
|
K_SELECT = "s"
|
|
K_GROUPS = "g"
|
|
K_SET_GROUPS = "sg"
|
|
K_SAVE = "sv"
|
|
K_DEFAULT = "df"
|
|
K_DEVICE_CONFIG = "dc"
|
|
K_CLEAR_PRESETS = "cp"
|
|
K_MANIFEST = "mf"
|
|
|
|
_SHORT_TO_LONG = {
|
|
K_PRESETS: "presets",
|
|
K_SELECT: "select",
|
|
K_GROUPS: "groups",
|
|
K_SET_GROUPS: "set_groups",
|
|
K_SAVE: "save",
|
|
K_DEFAULT: "default",
|
|
K_DEVICE_CONFIG: "device_config",
|
|
K_CLEAR_PRESETS: "clear_presets",
|
|
K_MANIFEST: "manifest",
|
|
}
|
|
|
|
|
|
def expand_v1(data):
|
|
if not isinstance(data, dict):
|
|
return data
|
|
out = dict(data)
|
|
for short_key, long_key in _SHORT_TO_LONG.items():
|
|
if short_key in data and long_key not in out:
|
|
out[long_key] = data[short_key]
|
|
if short_key in out:
|
|
del out[short_key]
|
|
return out
|