@fluxfiles/node 0.1.16 → 0.1.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -96,6 +96,10 @@ interface BaseTokenOptions {
96
96
  /** Allow editing a file's text content (GET/PUT /api/fm/content). Default **false** — editing
97
97
  * config/executable files (wp-config.php, .env, nginx.conf, deploy.sh) is powerful, so it's opt-in. */
98
98
  allowCodeEdit?: boolean;
99
+ /** Allow the SSH terminal (POST /api/fm/terminal) on an SFTP disk. Default **false** — grants shell
100
+ * access as the SSH user, so it's opt-in. Core-standalone: the token must target a real core
101
+ * (this SDK does), not a proxy adapter that doesn't serve /api/fm/terminal. */
102
+ allowTerminal?: boolean;
99
103
  /** Allow the paid Optimization module (POST /api/fm/optimize). Default **false** — opt-in.
100
104
  * Even when true, the optimize module must be installed + licensed on the server. */
101
105
  allowOptimize?: boolean;
package/dist/index.d.ts CHANGED
@@ -96,6 +96,10 @@ interface BaseTokenOptions {
96
96
  /** Allow editing a file's text content (GET/PUT /api/fm/content). Default **false** — editing
97
97
  * config/executable files (wp-config.php, .env, nginx.conf, deploy.sh) is powerful, so it's opt-in. */
98
98
  allowCodeEdit?: boolean;
99
+ /** Allow the SSH terminal (POST /api/fm/terminal) on an SFTP disk. Default **false** — grants shell
100
+ * access as the SSH user, so it's opt-in. Core-standalone: the token must target a real core
101
+ * (this SDK does), not a proxy adapter that doesn't serve /api/fm/terminal. */
102
+ allowTerminal?: boolean;
99
103
  /** Allow the paid Optimization module (POST /api/fm/optimize). Default **false** — opt-in.
100
104
  * Even when true, the optimize module must be installed + licensed on the server. */
101
105
  allowOptimize?: boolean;
package/dist/index.js CHANGED
@@ -171,6 +171,7 @@ function applyTenantOverrides(payload, opts) {
171
171
  if (opts.allowDownload !== void 0) payload.allow_download = !!opts.allowDownload;
172
172
  if (opts.allowChmod !== void 0) payload.allow_chmod = !!opts.allowChmod;
173
173
  if (opts.allowCodeEdit !== void 0) payload.allow_code_edit = !!opts.allowCodeEdit;
174
+ if (opts.allowTerminal !== void 0) payload.allow_terminal = !!opts.allowTerminal;
174
175
  if (opts.allowOptimize !== void 0) payload.allow_optimize = !!opts.allowOptimize;
175
176
  if (opts.allowShare !== void 0) payload.allow_share = !!opts.allowShare;
176
177
  if (opts.allowAiVision !== void 0) payload.allow_ai_vision = !!opts.allowAiVision;
package/dist/index.mjs CHANGED
@@ -149,6 +149,7 @@ function applyTenantOverrides(payload, opts) {
149
149
  if (opts.allowDownload !== void 0) payload.allow_download = !!opts.allowDownload;
150
150
  if (opts.allowChmod !== void 0) payload.allow_chmod = !!opts.allowChmod;
151
151
  if (opts.allowCodeEdit !== void 0) payload.allow_code_edit = !!opts.allowCodeEdit;
152
+ if (opts.allowTerminal !== void 0) payload.allow_terminal = !!opts.allowTerminal;
152
153
  if (opts.allowOptimize !== void 0) payload.allow_optimize = !!opts.allowOptimize;
153
154
  if (opts.allowShare !== void 0) payload.allow_share = !!opts.allowShare;
154
155
  if (opts.allowAiVision !== void 0) payload.allow_ai_vision = !!opts.allowAiVision;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fluxfiles/node",
3
- "version": "0.1.16",
3
+ "version": "0.1.17",
4
4
  "description": "Server-side Node/TypeScript SDK for minting FluxFiles JWTs (plain + BYOB), byte-compatible with the PHP core",
5
5
  "license": "MIT",
6
6
  "sideEffects": false,
package/src/token.ts CHANGED
@@ -141,6 +141,9 @@ function applyTenantOverrides(payload: Record<string, unknown>, opts: BaseTokenO
141
141
  if (opts.allowDownload !== undefined) payload.allow_download = !!opts.allowDownload;
142
142
  if (opts.allowChmod !== undefined) payload.allow_chmod = !!opts.allowChmod;
143
143
  if (opts.allowCodeEdit !== undefined) payload.allow_code_edit = !!opts.allowCodeEdit;
144
+ // SSH terminal (SFTP disks). Core-standalone — the token must target a real core
145
+ // (Node mints for one), not a proxy adapter that doesn't serve /api/fm/terminal.
146
+ if (opts.allowTerminal !== undefined) payload.allow_terminal = !!opts.allowTerminal;
144
147
  if (opts.allowOptimize !== undefined) payload.allow_optimize = !!opts.allowOptimize;
145
148
  // Other paid-module claims (inert unless the module is installed + licensed).
146
149
  if (opts.allowShare !== undefined) payload.allow_share = !!opts.allowShare;
package/src/types.ts CHANGED
@@ -100,6 +100,10 @@ export interface BaseTokenOptions {
100
100
  /** Allow editing a file's text content (GET/PUT /api/fm/content). Default **false** — editing
101
101
  * config/executable files (wp-config.php, .env, nginx.conf, deploy.sh) is powerful, so it's opt-in. */
102
102
  allowCodeEdit?: boolean;
103
+ /** Allow the SSH terminal (POST /api/fm/terminal) on an SFTP disk. Default **false** — grants shell
104
+ * access as the SSH user, so it's opt-in. Core-standalone: the token must target a real core
105
+ * (this SDK does), not a proxy adapter that doesn't serve /api/fm/terminal. */
106
+ allowTerminal?: boolean;
103
107
  /** Allow the paid Optimization module (POST /api/fm/optimize). Default **false** — opt-in.
104
108
  * Even when true, the optimize module must be installed + licensed on the server. */
105
109
  allowOptimize?: boolean;