@brftech/filex-core 0.32.0 → 0.33.0
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/{CsvViewer-DxujFEM3.js → CsvViewer-CqWeV8VO.js} +22 -22
- package/dist/CsvViewer-CqWeV8VO.js.map +1 -0
- package/dist/{DrawioViewer-DCvWnX2t.js → DrawioViewer-BNALOB04.js} +16 -16
- package/dist/DrawioViewer-BNALOB04.js.map +1 -0
- package/dist/filex-core.js +5932 -5841
- package/dist/filex-core.js.map +1 -1
- package/dist/filex-core.umd.cjs +43 -43
- package/dist/filex-core.umd.cjs.map +1 -1
- package/dist/index.d.ts +49 -8
- package/package.json +1 -1
- package/src/FileExplorer.vue +267 -235
- package/src/components/CommandPalette.vue +3 -3
- package/src/components/ConnectionsPanel.vue +2 -1
- package/src/components/GalleryView.vue +3 -3
- package/src/components/GridView.vue +4 -4
- package/src/components/ListView.vue +4 -4
- package/src/components/NFSExportsPanel.vue +2 -1
- package/src/components/PendingOpsTray.vue +1 -1
- package/src/components/PresenceBar.vue +3 -2
- package/src/components/S3KeysPanel.vue +2 -1
- package/src/components/SSHKeysPanel.vue +2 -1
- package/src/components/SecondaryPane.vue +13 -12
- package/src/components/StarButton.vue +2 -1
- package/src/components/TabBar.vue +2 -2
- package/src/components/ThemeGallery.vue +1 -1
- package/src/components/TokensPanel.vue +2 -1
- package/src/components/Toolbar.vue +9 -9
- package/src/composables/useFileApi.ts +4 -2
- package/src/composables/useLocale.ts +1 -1
- package/src/composables/useOperations.ts +3 -3
- package/src/composables/usePendingOps.ts +1 -1
- package/src/composables/useTabs.ts +1 -1
- package/src/composables/useUploadChunked.ts +39 -7
- package/src/index.ts +2 -2
- package/src/lib/themes.ts +7 -7
- package/src/lib/transfer.ts +6 -6
- package/src/locales/en.ts +32 -0
- package/src/locales/index.ts +1 -0
- package/src/locales/resolve.ts +66 -0
- package/src/locales/tr.ts +33 -0
- package/src/modals/ConvertModal.vue +14 -12
- package/src/modals/NewFolderModal.vue +1 -1
- package/src/modals/PermissionsModal.vue +12 -11
- package/src/modals/PreviewModal.vue +9 -9
- package/src/styles/base.css +29 -26
- package/src/styles/variables.css +1 -1
- package/src/types/ExplorerConfig.ts +1 -1
- package/src/types/FileNode.ts +1 -1
- package/src/viewers/CsvViewer.vue +4 -4
- package/src/viewers/DrawioViewer.vue +2 -2
- package/dist/CsvViewer-DxujFEM3.js.map +0 -1
- package/dist/DrawioViewer-DCvWnX2t.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -672,6 +672,15 @@ declare type Density = 'comfortable' | 'compact';
|
|
|
672
672
|
*/
|
|
673
673
|
export declare function deriveKek(password: string, salt: Uint8Array, iterations: number): Promise<CryptoKey>;
|
|
674
674
|
|
|
675
|
+
/**
|
|
676
|
+
* The browser's preference, or `en`.
|
|
677
|
+
*
|
|
678
|
+
* ⚠ Guarded for a non-browser runtime: this package is imported by SSR and by
|
|
679
|
+
* unit tests under Node, where `navigator` is absent — and an exception here
|
|
680
|
+
* would take down the whole explorer over a language choice.
|
|
681
|
+
*/
|
|
682
|
+
export declare function detectLocale(): LocaleCode;
|
|
683
|
+
|
|
675
684
|
export declare const E2E_DEFAULT_ITERATIONS = 600000;
|
|
676
685
|
|
|
677
686
|
/** The only escrow algorithm this version understands. */
|
|
@@ -1014,7 +1023,7 @@ export declare interface ExplorerConfig {
|
|
|
1014
1023
|
*/
|
|
1015
1024
|
onlyOfficeConfig?: string;
|
|
1016
1025
|
/**
|
|
1017
|
-
* Standalone editor page base — when set, "
|
|
1026
|
+
* Standalone editor page base — when set, "Open" on an office file
|
|
1018
1027
|
* opens `${openPageBase}?path=...&mode=edit` in a new tab instead
|
|
1019
1028
|
* of the modal preview.
|
|
1020
1029
|
*/
|
|
@@ -2221,7 +2230,7 @@ export declare interface OperationInput {
|
|
|
2221
2230
|
percent: number | null;
|
|
2222
2231
|
status: OperationStatus;
|
|
2223
2232
|
error?: string | null;
|
|
2224
|
-
/** Queue op accepted but not started yet ("
|
|
2233
|
+
/** Queue op accepted but not started yet ("Queued"). */
|
|
2225
2234
|
queued?: boolean;
|
|
2226
2235
|
/** Progress counters for queue ops (3/5 items). */
|
|
2227
2236
|
doneCount?: number;
|
|
@@ -2249,9 +2258,9 @@ export declare interface OperationInput {
|
|
|
2249
2258
|
* are registered per row so the panel can route user intent back to the
|
|
2250
2259
|
* owning surface without the store knowing any transport details.
|
|
2251
2260
|
*
|
|
2252
|
-
* Lifecycle rules (per the
|
|
2261
|
+
* Lifecycle rules (per the Operations Center contract):
|
|
2253
2262
|
* - running rows live in `active`;
|
|
2254
|
-
* - done/aborted rows linger in `active` for DONE_LINGER_MS ("
|
|
2263
|
+
* - done/aborted rows linger in `active` for DONE_LINGER_MS ("done"
|
|
2255
2264
|
* flash) then move to `history` (session-only, capped);
|
|
2256
2265
|
* - error rows are STICKY: they stay in `active` until the user
|
|
2257
2266
|
* dismisses or retries them — even after the source list swept them
|
|
@@ -2435,6 +2444,31 @@ declare interface ResolveEmailResponse {
|
|
|
2435
2444
|
*/
|
|
2436
2445
|
export declare function resolveEndpoints(config: ExplorerConfig): EndpointMap;
|
|
2437
2446
|
|
|
2447
|
+
/**
|
|
2448
|
+
* Resolve the locale to render in.
|
|
2449
|
+
*
|
|
2450
|
+
* Order, and the reasoning for it:
|
|
2451
|
+
*
|
|
2452
|
+
* 1. **What the host asked for.** An explicit `locale` always wins. A host
|
|
2453
|
+
* that names a language has made a decision, and guessing over it would
|
|
2454
|
+
* make the prop advisory.
|
|
2455
|
+
* 2. **What the browser asks for**, via `navigator.languages` /
|
|
2456
|
+
* `navigator.language` — the same signal `Accept-Language` carries, and
|
|
2457
|
+
* the reason a Turkish reader gets Turkish without the embedder doing
|
|
2458
|
+
* anything.
|
|
2459
|
+
* 3. **`en`.**
|
|
2460
|
+
*
|
|
2461
|
+
* ⚠ Step 2 makes the same embed render differently for two people. That is
|
|
2462
|
+
* deliberate — it is what "follow the browser" means — but it also means a
|
|
2463
|
+
* screenshot, a test or a bug report about this component must state its
|
|
2464
|
+
* locale, because the component alone no longer determines it. Pass an
|
|
2465
|
+
* explicit `locale` anywhere the answer has to be stable.
|
|
2466
|
+
*
|
|
2467
|
+
* Matching is on the primary subtag, so `tr-TR` and `en-GB` resolve; anything
|
|
2468
|
+
* with no catalogue falls through rather than half-rendering.
|
|
2469
|
+
*/
|
|
2470
|
+
export declare function resolveLocale(explicit?: LocaleCode | '' | null): LocaleCode;
|
|
2471
|
+
|
|
2438
2472
|
/** How long an unfinished record is worth keeping. The server sweeps its own
|
|
2439
2473
|
* staging after FILEX_UPLOAD_STAGING_TTL (24 h by default); a note that
|
|
2440
2474
|
* outlives the bytes it describes only produces a confusing "resuming…" that
|
|
@@ -3120,10 +3154,17 @@ export declare interface UploadOptions {
|
|
|
3120
3154
|
onDone?: (job: UploadJob, result: UploadResult) => void;
|
|
3121
3155
|
onError?: (job: UploadJob, err: Error) => void;
|
|
3122
3156
|
/**
|
|
3123
|
-
* Wait for the backend transfer before resolving.
|
|
3124
|
-
*
|
|
3125
|
-
*
|
|
3126
|
-
*
|
|
3157
|
+
* Wait for the backend transfer before resolving. Defaults to TRUE, because
|
|
3158
|
+
* "the server has the bytes" and "the storage has the bytes" are different
|
|
3159
|
+
* claims and only the second one is an upload.
|
|
3160
|
+
*
|
|
3161
|
+
* ⚠ It used to default to false and no caller ever set it, so the job went
|
|
3162
|
+
* straight to `done` on the 202 — a transfer that failed afterwards in the
|
|
3163
|
+
* ops worker left the user looking at a finished upload for a file that was
|
|
3164
|
+
* never stored (issue #16: every file over the chunk threshold, on every S3
|
|
3165
|
+
* backend). The `transferring` phase is short for a healthy storage and is
|
|
3166
|
+
* the only place a failure can still be shown, so it is the default; pass
|
|
3167
|
+
* false to opt out where the wait is genuinely unwanted.
|
|
3127
3168
|
*/
|
|
3128
3169
|
waitForTransfer?: boolean;
|
|
3129
3170
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brftech/filex-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.33.0",
|
|
4
4
|
"description": "filex core — Vue 3 source of truth for the filex file manager (FileExplorer + ConnectionsPanel SFCs, composables, types)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/filex-core.umd.cjs",
|