device-state
Source: device-state.js:10
Why saving is blocked, in the user's language — the message table behind requireCanSave(). Extracted like support-form.js so the wording (which is product, not style) is unit-tested in plain Node (test/device-state.test.js).
Loaded two ways (UMD-lite): the Electron renderer loads it with a script tag, which attaches window.DeviceState; Node tests require('../src/device-state.js').