Initial public commit

This commit is contained in:
Keysat
2026-05-07 10:41:57 -05:00
commit 8c9bc75e24
12 changed files with 906 additions and 0 deletions
+34
View File
@@ -0,0 +1,34 @@
// Action: "Deactivate license" — clears the stored key locally. Does NOT
// revoke the key server-side (only the seller can revoke, from their licensing
// server's admin dashboard). The operator is reminded of this.
import { sdk } from '../sdk'
import { PRODUCT_DISPLAY_NAME } from '../licensing/config'
export const deactivateLicense = sdk.Action.withoutInput(
'deactivate-license',
async ({ effects }) => ({
name: 'Deactivate license',
description:
`Remove the stored license key from this ${PRODUCT_DISPLAY_NAME} ` +
`install. The key itself is NOT revoked — to revoke, contact the seller.`,
warning:
`This only clears the key from this device. If you want the key ` +
`disabled everywhere (e.g. because it leaked), ask the seller to ` +
`revoke it server-side.`,
allowedStatuses: 'any',
group: 'License',
visibility: 'enabled',
}),
async ({ effects }) => {
await sdk.store.getOwn(effects, sdk.StorePath).merge({
license_key: null,
license_activated_at: null,
license_last_status: 'deactivated',
license_pending_invoice_id: null,
})
return {
message: `License cleared. ${PRODUCT_DISPLAY_NAME} will no longer consider itself licensed on next start.`,
}
},
)