diff --git a/src-node/package-lock.json b/src-node/package-lock.json index 4350321b3d..938ebb2dd9 100644 --- a/src-node/package-lock.json +++ b/src-node/package-lock.json @@ -1,12 +1,12 @@ { "name": "@phcode/node-core", - "version": "5.1.10-0", + "version": "5.1.12-0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@phcode/node-core", - "version": "5.1.10-0", + "version": "5.1.12-0", "hasInstallScript": true, "license": "GNU-AGPL3.0", "dependencies": { diff --git a/src/nls/root/strings.js b/src/nls/root/strings.js index 30cd4e9dc9..4d904b6a0e 100644 --- a/src/nls/root/strings.js +++ b/src/nls/root/strings.js @@ -2114,10 +2114,17 @@ define({ "GET_PHOENIX_PRO": "Get Phoenix Pro", "USER_FREE_PLAN_NAME_DO_NOT_TRANSLATE": "Community Edition", // license dialogs - "MANAGE_LICENSE_DIALOG_TITLE": "Manage Device License", + "MANAGE_LICENSE_DIALOG_TITLE": "Manage Licenses", + "LICENSE_ACCOUNT_HEADING": "Account License", + "LICENSE_DEVICE_HEADING": "Device License", + "LICENSE_SIGN_IN": "Sign In", + "LICENSE_PLAN_UNKNOWN": "Unknown", + "LICENSE_GET_PRO": "Get Phoenix Pro", + "LICENSE_MANAGE_ACCOUNT": "Manage Account", "LICENSE_KEY": "License Key", + "LICENSE_KEY_PROMPT": "Have a device license key?", "LICENSE_KEY_PLACEHOLDER": "Enter your license key\u2026", - "LICENSE_KEY_ACTIVATE": "Activate License", + "LICENSE_KEY_ACTIVATE": "Activate", "LICENSE_KEY_ACTIVATING": "Activating\u2026", "LICENSE_KEY_CURRENT": "Current Device License", "LICENSE_KEY_CHECKING": "Checking license status\u2026", @@ -2134,9 +2141,15 @@ define({ "LICENSE_ACTIVATE_SUCCESS": "License activated system-wide. Please restart {APP_NAME} for the changes to take effect.", "LICENSE_ACTIVATE_SUCCESS_PARTIAL": "License activated for your account only (not system-wide). Please restart {APP_NAME} for the changes to take effect.", "LICENSE_ACTIVATE_FAIL": "Failed to activate license", - "LICENSE_ACTIVATE_FAIL_APPLY": "'Failed to apply license to device'", + "LICENSE_ACTIVATE_FAIL_APPLY": "Failed to apply license to device", "LICENSE_ENTER_KEY": "Please enter a license key", - "LICENSE_REAPPLY_TO_DEVICE": "Already activated? Reapply system-wide", + "LICENSE_REACTIVATE": "Reactivate License", + "LICENSE_DEACTIVATE": "Deactivate", + "LICENSE_DEACTIVATING": "Deactivating…", + "LICENSE_DEACTIVATE_SUCCESS": "License deactivated on this device. Please restart {APP_NAME} for the changes to take effect.", + "LICENSE_DEACTIVATE_FAIL": "Failed to deactivate license on this device", + "LICENSE_NOT_ACTIVATED_HERE": "This license isn't activated on this device — Phoenix Pro features won't be enabled until you click Reactivate License.", + "LICENSE_STATUS_NOT_ACTIVATED_HERE": "Available, but not activated", // Deprecated Extensions Dialog "DEPRECATED_EXTENSIONS_TITLE": "Deprecated Extensions Detected", "DEPRECATED_EXTENSIONS_MESSAGE": "The following installed extensions are now natively supported by {APP_NAME} and can be safely uninstalled from the Extension Manager:", diff --git a/src/styles/phoenix-pro.less b/src/styles/phoenix-pro.less index b7302d28cb..34806eb93e 100644 --- a/src/styles/phoenix-pro.less +++ b/src/styles/phoenix-pro.less @@ -344,13 +344,27 @@ /* ---- License Management Dialog ---- */ .license-management-dialog { + /* The base modal caps body height at ~400px and turns on overflow:auto. + This dialog has two stacked sections that exceed that; let it grow + up to the viewport so the user doesn't have to scroll. */ + .modal-body { + max-height: calc(100vh - 160px); + } + /* ---- Layout ---- */ - .license-activation-section { - margin-bottom: 24px; + .license-account-section { + margin-bottom: 8px; + + /* Account section uses a bare