@fgv/ts-web-extras 5.1.0-2 → 5.1.0-21
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/packlets/crypto-utils/browserCryptoProvider.js +208 -18
- package/dist/packlets/crypto-utils/browserCryptoProvider.js.map +1 -1
- package/dist/packlets/file-tree/fileApiTreeAccessors.js +1 -1
- package/dist/packlets/file-tree/fileApiTreeAccessors.js.map +1 -1
- package/dist/packlets/file-tree/httpTreeAccessors.js +72 -42
- package/dist/packlets/file-tree/httpTreeAccessors.js.map +1 -1
- package/dist/ts-web-extras.d.ts +59 -7
- package/dist/tsdoc-metadata.json +1 -1
- package/lib/packlets/crypto-utils/browserCryptoProvider.d.ts +52 -5
- package/lib/packlets/crypto-utils/browserCryptoProvider.d.ts.map +1 -1
- package/lib/packlets/crypto-utils/browserCryptoProvider.js +207 -17
- package/lib/packlets/crypto-utils/browserCryptoProvider.js.map +1 -1
- package/lib/packlets/file-tree/fileApiTreeAccessors.d.ts +1 -1
- package/lib/packlets/file-tree/fileApiTreeAccessors.js +1 -1
- package/lib/packlets/file-tree/fileApiTreeAccessors.js.map +1 -1
- package/lib/packlets/file-tree/httpTreeAccessors.d.ts +6 -0
- package/lib/packlets/file-tree/httpTreeAccessors.d.ts.map +1 -1
- package/lib/packlets/file-tree/httpTreeAccessors.js +72 -42
- package/lib/packlets/file-tree/httpTreeAccessors.js.map +1 -1
- package/package.json +27 -26
- package/.rush/temp/chunked-rush-logs/ts-web-extras.build.chunks.jsonl +0 -75
- package/.rush/temp/chunked-rush-logs/ts-web-extras.test.chunks.jsonl +0 -75
- package/.rush/temp/operation/build/all.log +0 -75
- package/.rush/temp/operation/build/error.log +0 -18
- package/.rush/temp/operation/build/log-chunks.jsonl +0 -75
- package/.rush/temp/operation/build/state.json +0 -3
- package/.rush/temp/operation/test/all.log +0 -75
- package/.rush/temp/operation/test/error.log +0 -18
- package/.rush/temp/operation/test/log-chunks.jsonl +0 -75
- package/.rush/temp/operation/test/state.json +0 -3
- package/.rush/temp/shrinkwrap-deps.json +0 -635
- package/CHANGELOG.md +0 -23
- package/config/api-extractor.json +0 -343
- package/config/jest.config.json +0 -19
- package/config/rig.json +0 -16
- package/config/typedoc.json +0 -6
- package/dist/test/mocks/idb-keyval.js +0 -6
- package/dist/test/mocks/idb-keyval.js.map +0 -1
- package/dist/test/setupTests.js +0 -74
- package/dist/test/setupTests.js.map +0 -1
- package/dist/test/unit/browserHashProvider.test.js +0 -140
- package/dist/test/unit/browserHashProvider.test.js.map +0 -1
- package/dist/test/unit/directoryHandleStore.test.js +0 -190
- package/dist/test/unit/directoryHandleStore.test.js.map +0 -1
- package/dist/test/unit/fileApiTreeAccessors.test.js +0 -1188
- package/dist/test/unit/fileApiTreeAccessors.test.js.map +0 -1
- package/dist/test/unit/fileApiTypes.test.js +0 -472
- package/dist/test/unit/fileApiTypes.test.js.map +0 -1
- package/dist/test/unit/fileSystemAccessTreeAccessors.test.js +0 -622
- package/dist/test/unit/fileSystemAccessTreeAccessors.test.js.map +0 -1
- package/dist/test/unit/fileTreeHelpers.test.js +0 -590
- package/dist/test/unit/fileTreeHelpers.test.js.map +0 -1
- package/dist/test/unit/httpTreeAccessors.test.js +0 -1229
- package/dist/test/unit/httpTreeAccessors.test.js.map +0 -1
- package/dist/test/unit/localStorageTreeAccessors.test.js +0 -812
- package/dist/test/unit/localStorageTreeAccessors.test.js.map +0 -1
- package/dist/test/unit/urlParams.test.js +0 -393
- package/dist/test/unit/urlParams.test.js.map +0 -1
- package/dist/test/utils/fileSystemAccessMocks.js +0 -271
- package/dist/test/utils/fileSystemAccessMocks.js.map +0 -1
- package/dist/test/utils/testHelpers.js +0 -124
- package/dist/test/utils/testHelpers.js.map +0 -1
- package/docs/@fgv/namespaces/CryptoUtils/README.md +0 -18
- package/docs/@fgv/namespaces/CryptoUtils/classes/BrowserCryptoProvider.md +0 -203
- package/docs/@fgv/namespaces/CryptoUtils/classes/BrowserHashProvider.md +0 -63
- package/docs/@fgv/namespaces/CryptoUtils/functions/createBrowserCryptoProvider.md +0 -18
- package/docs/@fgv/namespaces/FileTreeHelpers/README.md +0 -19
- package/docs/@fgv/namespaces/FileTreeHelpers/functions/extractFileListMetadata.md +0 -23
- package/docs/@fgv/namespaces/FileTreeHelpers/functions/extractFileMetadata.md +0 -23
- package/docs/@fgv/namespaces/FileTreeHelpers/functions/fromDirectoryUpload.md +0 -33
- package/docs/@fgv/namespaces/FileTreeHelpers/functions/fromFileList.md +0 -33
- package/docs/@fgv/namespaces/FileTreeHelpers/functions/getOriginalFile.md +0 -25
- package/docs/@fgv/namespaces/FileTreeHelpers/variables/defaultFileApiTreeInitParams.md +0 -11
- package/docs/README.md +0 -78
- package/docs/classes/DirectoryHandleStore.md +0 -116
- package/docs/classes/FileApiTreeAccessors.md +0 -286
- package/docs/classes/FileSystemAccessTreeAccessors.md +0 -557
- package/docs/classes/HttpTreeAccessors.md +0 -508
- package/docs/classes/LocalStorageTreeAccessors.md +0 -520
- package/docs/functions/exportAsJson.md +0 -23
- package/docs/functions/exportUsingFileSystemAPI.md +0 -26
- package/docs/functions/extractDirectoryPath.md +0 -23
- package/docs/functions/isDirectoryHandle.md +0 -23
- package/docs/functions/isFileHandle.md +0 -23
- package/docs/functions/isFilePath.md +0 -21
- package/docs/functions/parseContextFilter.md +0 -22
- package/docs/functions/parseQualifierDefaults.md +0 -22
- package/docs/functions/parseResourceTypes.md +0 -22
- package/docs/functions/parseUrlParameters.md +0 -15
- package/docs/functions/safeShowDirectoryPicker.md +0 -24
- package/docs/functions/safeShowOpenFilePicker.md +0 -24
- package/docs/functions/safeShowSaveFilePicker.md +0 -24
- package/docs/functions/supportsFileSystemAccess.md +0 -23
- package/docs/interfaces/FilePickerAcceptType.md +0 -16
- package/docs/interfaces/FileSystemCreateWritableOptions.md +0 -15
- package/docs/interfaces/FileSystemDirectoryHandle.md +0 -187
- package/docs/interfaces/FileSystemFileHandle.md +0 -106
- package/docs/interfaces/FileSystemGetDirectoryOptions.md +0 -15
- package/docs/interfaces/FileSystemGetFileOptions.md +0 -15
- package/docs/interfaces/FileSystemHandle.md +0 -69
- package/docs/interfaces/FileSystemHandlePermissionDescriptor.md +0 -15
- package/docs/interfaces/FileSystemRemoveOptions.md +0 -15
- package/docs/interfaces/FileSystemWritableFileStream.md +0 -127
- package/docs/interfaces/IDirectoryHandleTreeInitializer.md +0 -17
- package/docs/interfaces/IFileHandleTreeInitializer.md +0 -16
- package/docs/interfaces/IFileListTreeInitializer.md +0 -15
- package/docs/interfaces/IFileMetadata.md +0 -19
- package/docs/interfaces/IFileSystemAccessTreeParams.md +0 -30
- package/docs/interfaces/IFsAccessApis.md +0 -57
- package/docs/interfaces/IHttpTreeParams.md +0 -32
- package/docs/interfaces/ILocalStorageTreeParams.md +0 -30
- package/docs/interfaces/IUrlConfigOptions.md +0 -27
- package/docs/interfaces/ShowDirectoryPickerOptions.md +0 -17
- package/docs/interfaces/ShowOpenFilePickerOptions.md +0 -19
- package/docs/interfaces/ShowSaveFilePickerOptions.md +0 -19
- package/docs/type-aliases/TreeInitializer.md +0 -11
- package/docs/type-aliases/WellKnownDirectory.md +0 -11
- package/docs/type-aliases/WindowWithFsAccess.md +0 -11
- package/docs/variables/DEFAULT_DIRECTORY_HANDLE_DB.md +0 -11
- package/docs/variables/DEFAULT_DIRECTORY_HANDLE_STORE.md +0 -11
- package/etc/ts-web-extras.api.md +0 -433
- package/lib/test/mocks/idb-keyval.d.ts +0 -6
- package/lib/test/mocks/idb-keyval.d.ts.map +0 -1
- package/lib/test/mocks/idb-keyval.js +0 -9
- package/lib/test/mocks/idb-keyval.js.map +0 -1
- package/lib/test/setupTests.d.ts +0 -2
- package/lib/test/setupTests.d.ts.map +0 -1
- package/lib/test/setupTests.js +0 -76
- package/lib/test/setupTests.js.map +0 -1
- package/lib/test/unit/browserHashProvider.test.d.ts +0 -2
- package/lib/test/unit/browserHashProvider.test.d.ts.map +0 -1
- package/lib/test/unit/browserHashProvider.test.js +0 -142
- package/lib/test/unit/browserHashProvider.test.js.map +0 -1
- package/lib/test/unit/directoryHandleStore.test.d.ts +0 -2
- package/lib/test/unit/directoryHandleStore.test.d.ts.map +0 -1
- package/lib/test/unit/directoryHandleStore.test.js +0 -192
- package/lib/test/unit/directoryHandleStore.test.js.map +0 -1
- package/lib/test/unit/fileApiTreeAccessors.test.d.ts +0 -2
- package/lib/test/unit/fileApiTreeAccessors.test.d.ts.map +0 -1
- package/lib/test/unit/fileApiTreeAccessors.test.js +0 -1190
- package/lib/test/unit/fileApiTreeAccessors.test.js.map +0 -1
- package/lib/test/unit/fileApiTypes.test.d.ts +0 -2
- package/lib/test/unit/fileApiTypes.test.d.ts.map +0 -1
- package/lib/test/unit/fileApiTypes.test.js +0 -474
- package/lib/test/unit/fileApiTypes.test.js.map +0 -1
- package/lib/test/unit/fileSystemAccessTreeAccessors.test.d.ts +0 -2
- package/lib/test/unit/fileSystemAccessTreeAccessors.test.d.ts.map +0 -1
- package/lib/test/unit/fileSystemAccessTreeAccessors.test.js +0 -624
- package/lib/test/unit/fileSystemAccessTreeAccessors.test.js.map +0 -1
- package/lib/test/unit/fileTreeHelpers.test.d.ts +0 -2
- package/lib/test/unit/fileTreeHelpers.test.d.ts.map +0 -1
- package/lib/test/unit/fileTreeHelpers.test.js +0 -592
- package/lib/test/unit/fileTreeHelpers.test.js.map +0 -1
- package/lib/test/unit/httpTreeAccessors.test.d.ts +0 -2
- package/lib/test/unit/httpTreeAccessors.test.d.ts.map +0 -1
- package/lib/test/unit/httpTreeAccessors.test.js +0 -1231
- package/lib/test/unit/httpTreeAccessors.test.js.map +0 -1
- package/lib/test/unit/localStorageTreeAccessors.test.d.ts +0 -2
- package/lib/test/unit/localStorageTreeAccessors.test.d.ts.map +0 -1
- package/lib/test/unit/localStorageTreeAccessors.test.js +0 -814
- package/lib/test/unit/localStorageTreeAccessors.test.js.map +0 -1
- package/lib/test/unit/urlParams.test.d.ts +0 -2
- package/lib/test/unit/urlParams.test.d.ts.map +0 -1
- package/lib/test/unit/urlParams.test.js +0 -395
- package/lib/test/unit/urlParams.test.js.map +0 -1
- package/lib/test/utils/fileSystemAccessMocks.d.ts +0 -53
- package/lib/test/utils/fileSystemAccessMocks.d.ts.map +0 -1
- package/lib/test/utils/fileSystemAccessMocks.js +0 -277
- package/lib/test/utils/fileSystemAccessMocks.js.map +0 -1
- package/lib/test/utils/testHelpers.d.ts +0 -51
- package/lib/test/utils/testHelpers.d.ts.map +0 -1
- package/lib/test/utils/testHelpers.js +0 -133
- package/lib/test/utils/testHelpers.js.map +0 -1
- package/rush-logs/ts-web-extras.build.cache.log +0 -0
- package/rush-logs/ts-web-extras.build.error.log +0 -18
- package/rush-logs/ts-web-extras.build.log +0 -75
- package/rush-logs/ts-web-extras.test.cache.log +0 -1
- package/rush-logs/ts-web-extras.test.error.log +0 -18
- package/rush-logs/ts-web-extras.test.log +0 -75
- package/src/index.browser.ts +0 -24
- package/src/index.ts +0 -47
- package/src/packlets/crypto-utils/browserCryptoProvider.ts +0 -311
- package/src/packlets/crypto-utils/browserHashProvider.ts +0 -73
- package/src/packlets/crypto-utils/index.ts +0 -29
- package/src/packlets/file-api-types/index.ts +0 -366
- package/src/packlets/file-tree/directoryHandleStore.ts +0 -136
- package/src/packlets/file-tree/fileApiTreeAccessors.ts +0 -528
- package/src/packlets/file-tree/fileSystemAccessTreeAccessors.ts +0 -519
- package/src/packlets/file-tree/httpTreeAccessors.ts +0 -448
- package/src/packlets/file-tree/index.ts +0 -32
- package/src/packlets/file-tree/localStorageTreeAccessors.ts +0 -430
- package/src/packlets/helpers/fileTreeHelpers.ts +0 -107
- package/src/packlets/helpers/index.ts +0 -28
- package/src/packlets/url-utils/index.ts +0 -28
- package/src/packlets/url-utils/urlParams.ts +0 -245
- package/src/test/mocks/idb-keyval.ts +0 -5
- package/src/test/setupTests.ts +0 -87
- package/src/test/unit/browserHashProvider.test.ts +0 -155
- package/src/test/unit/browserHashProvider.test.ts.bak +0 -376
- package/src/test/unit/directoryHandleStore.test.ts +0 -251
- package/src/test/unit/fileApiTreeAccessors.test.ts +0 -1387
- package/src/test/unit/fileApiTypes.test.ts +0 -587
- package/src/test/unit/fileSystemAccessTreeAccessors.test.ts +0 -885
- package/src/test/unit/fileTreeHelpers.test.ts +0 -694
- package/src/test/unit/httpTreeAccessors.test.ts +0 -1571
- package/src/test/unit/localStorageTreeAccessors.test.ts +0 -1014
- package/src/test/unit/urlParams.test.ts +0 -464
- package/src/test/utils/fileSystemAccessMocks.ts +0 -353
- package/src/test/utils/testHelpers.ts +0 -155
- package/temp/build/typescript/ts_8nwakTlr.json +0 -1
- package/temp/coverage/base.css +0 -224
- package/temp/coverage/block-navigation.js +0 -87
- package/temp/coverage/crypto/browserHashProvider.ts.html +0 -304
- package/temp/coverage/crypto/index.html +0 -116
- package/temp/coverage/crypto-utils/browserCryptoProvider.ts.html +0 -1018
- package/temp/coverage/crypto-utils/browserHashProvider.ts.html +0 -304
- package/temp/coverage/crypto-utils/index.html +0 -131
- package/temp/coverage/favicon.png +0 -0
- package/temp/coverage/file-tree/directoryHandleStore.ts.html +0 -493
- package/temp/coverage/file-tree/fileApiTreeAccessors.ts.html +0 -1669
- package/temp/coverage/file-tree/fileSystemAccessTreeAccessors.ts.html +0 -1642
- package/temp/coverage/file-tree/httpTreeAccessors.ts.html +0 -1429
- package/temp/coverage/file-tree/index.html +0 -176
- package/temp/coverage/file-tree/localStorageTreeAccessors.ts.html +0 -1375
- package/temp/coverage/helpers/fileTreeHelpers.ts.html +0 -406
- package/temp/coverage/helpers/index.html +0 -116
- package/temp/coverage/index.html +0 -161
- package/temp/coverage/lcov-report/base.css +0 -224
- package/temp/coverage/lcov-report/block-navigation.js +0 -87
- package/temp/coverage/lcov-report/crypto/browserHashProvider.ts.html +0 -304
- package/temp/coverage/lcov-report/crypto/index.html +0 -116
- package/temp/coverage/lcov-report/crypto-utils/browserCryptoProvider.ts.html +0 -1018
- package/temp/coverage/lcov-report/crypto-utils/browserHashProvider.ts.html +0 -304
- package/temp/coverage/lcov-report/crypto-utils/index.html +0 -131
- package/temp/coverage/lcov-report/favicon.png +0 -0
- package/temp/coverage/lcov-report/file-tree/directoryHandleStore.ts.html +0 -493
- package/temp/coverage/lcov-report/file-tree/fileApiTreeAccessors.ts.html +0 -1669
- package/temp/coverage/lcov-report/file-tree/fileSystemAccessTreeAccessors.ts.html +0 -1642
- package/temp/coverage/lcov-report/file-tree/httpTreeAccessors.ts.html +0 -1429
- package/temp/coverage/lcov-report/file-tree/index.html +0 -176
- package/temp/coverage/lcov-report/file-tree/localStorageTreeAccessors.ts.html +0 -1375
- package/temp/coverage/lcov-report/helpers/fileTreeHelpers.ts.html +0 -406
- package/temp/coverage/lcov-report/helpers/index.html +0 -116
- package/temp/coverage/lcov-report/index.html +0 -161
- package/temp/coverage/lcov-report/prettify.css +0 -1
- package/temp/coverage/lcov-report/prettify.js +0 -2
- package/temp/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/temp/coverage/lcov-report/sorter.js +0 -210
- package/temp/coverage/lcov-report/url-utils/index.html +0 -116
- package/temp/coverage/lcov-report/url-utils/urlParams.ts.html +0 -820
- package/temp/coverage/lcov.info +0 -3597
- package/temp/coverage/prettify.css +0 -1
- package/temp/coverage/prettify.js +0 -2
- package/temp/coverage/sort-arrow-sprite.png +0 -0
- package/temp/coverage/sorter.js +0 -210
- package/temp/coverage/url-utils/index.html +0 -116
- package/temp/coverage/url-utils/urlParams.ts.html +0 -820
- package/temp/test/jest/haste-map-b931e4e63102f86c5bd4949f7dced44f-9d713eb41149188b4e5c0ae3d86d0a57-2ad8e16b24e391b8cdbe50b55c137169 +0 -0
- package/temp/test/jest/jest-transform-cache-b931e4e63102f86c5bd4949f7dced44f-79ef2876fae7ca75eedb2aa53dc48338/b5/package_b5f57afc9ec2c011239b1608ee5bdfa5 +0 -53
- package/temp/test/jest/perf-cache-b931e4e63102f86c5bd4949f7dced44f-da39a3ee5e6b4b0d3255bfef95601890 +0 -1
- package/temp/ts-web-extras.api.json +0 -8850
- package/temp/ts-web-extras.api.md +0 -433
- package/tsconfig.json +0 -7
|
@@ -1,286 +0,0 @@
|
|
|
1
|
-
[**@fgv/ts-web-extras**](../README.md)
|
|
2
|
-
|
|
3
|
-
***
|
|
4
|
-
|
|
5
|
-
[@fgv/ts-web-extras](../README.md) / FileApiTreeAccessors
|
|
6
|
-
|
|
7
|
-
# Class: FileApiTreeAccessors\<TCT\>
|
|
8
|
-
|
|
9
|
-
Helper class to create FileTree instances from various file sources.
|
|
10
|
-
Supports File API (FileList) and File System Access API handles.
|
|
11
|
-
|
|
12
|
-
## Type Parameters
|
|
13
|
-
|
|
14
|
-
| Type Parameter | Default type |
|
|
15
|
-
| ------ | ------ |
|
|
16
|
-
| `TCT` *extends* `string` | `string` |
|
|
17
|
-
|
|
18
|
-
## Constructors
|
|
19
|
-
|
|
20
|
-
### Constructor
|
|
21
|
-
|
|
22
|
-
> **new FileApiTreeAccessors**\<`TCT`\>(): `FileApiTreeAccessors`\<`TCT`\>
|
|
23
|
-
|
|
24
|
-
#### Returns
|
|
25
|
-
|
|
26
|
-
`FileApiTreeAccessors`\<`TCT`\>
|
|
27
|
-
|
|
28
|
-
## Methods
|
|
29
|
-
|
|
30
|
-
### create()
|
|
31
|
-
|
|
32
|
-
> `static` **create**\<`TCT`\>(`initializers`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
33
|
-
|
|
34
|
-
Create FileTree from various file sources using TreeInitializer array.
|
|
35
|
-
|
|
36
|
-
#### Type Parameters
|
|
37
|
-
|
|
38
|
-
| Type Parameter | Default type |
|
|
39
|
-
| ------ | ------ |
|
|
40
|
-
| `TCT` *extends* `string` | `string` |
|
|
41
|
-
|
|
42
|
-
#### Parameters
|
|
43
|
-
|
|
44
|
-
| Parameter | Type | Description |
|
|
45
|
-
| ------ | ------ | ------ |
|
|
46
|
-
| `initializers` | [`TreeInitializer`](../type-aliases/TreeInitializer.md)[] | Array of TreeInitializer objects specifying file sources |
|
|
47
|
-
| `params?` | [`IFileTreeInitParams`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\> | Optional `IFileTreeInitParams` for the file tree. |
|
|
48
|
-
|
|
49
|
-
#### Returns
|
|
50
|
-
|
|
51
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
52
|
-
|
|
53
|
-
Promise resolving to a FileTree with all content pre-loaded
|
|
54
|
-
|
|
55
|
-
***
|
|
56
|
-
|
|
57
|
-
### createFromHttp()
|
|
58
|
-
|
|
59
|
-
> `static` **createFromHttp**\<`TCT`\>(`params`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
60
|
-
|
|
61
|
-
Create a persistent FileTree from an HTTP storage service.
|
|
62
|
-
|
|
63
|
-
#### Type Parameters
|
|
64
|
-
|
|
65
|
-
| Type Parameter | Default type |
|
|
66
|
-
| ------ | ------ |
|
|
67
|
-
| `TCT` *extends* `string` | `string` |
|
|
68
|
-
|
|
69
|
-
#### Parameters
|
|
70
|
-
|
|
71
|
-
| Parameter | Type | Description |
|
|
72
|
-
| ------ | ------ | ------ |
|
|
73
|
-
| `params` | [`IHttpTreeParams`](../interfaces/IHttpTreeParams.md)\<`TCT`\> | Configuration including API base URL, namespace, and optional autoSync |
|
|
74
|
-
|
|
75
|
-
#### Returns
|
|
76
|
-
|
|
77
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
78
|
-
|
|
79
|
-
Promise resolving to a FileTree with persistence capability
|
|
80
|
-
|
|
81
|
-
***
|
|
82
|
-
|
|
83
|
-
### createFromLocalStorage()
|
|
84
|
-
|
|
85
|
-
> `static` **createFromLocalStorage**\<`TCT`\>(`params`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
|
|
86
|
-
|
|
87
|
-
Create a persistent FileTree from browser localStorage.
|
|
88
|
-
Changes to files can be synced back to localStorage.
|
|
89
|
-
|
|
90
|
-
#### Type Parameters
|
|
91
|
-
|
|
92
|
-
| Type Parameter | Default type |
|
|
93
|
-
| ------ | ------ |
|
|
94
|
-
| `TCT` *extends* `string` | `string` |
|
|
95
|
-
|
|
96
|
-
#### Parameters
|
|
97
|
-
|
|
98
|
-
| Parameter | Type | Description |
|
|
99
|
-
| ------ | ------ | ------ |
|
|
100
|
-
| `params` | [`ILocalStorageTreeParams`](../interfaces/ILocalStorageTreeParams.md)\<`TCT`\> | Configuration including path-to-key mappings and optional autoSync |
|
|
101
|
-
|
|
102
|
-
#### Returns
|
|
103
|
-
|
|
104
|
-
[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
|
|
105
|
-
|
|
106
|
-
Result containing a FileTree with persistence capability
|
|
107
|
-
|
|
108
|
-
#### Remarks
|
|
109
|
-
|
|
110
|
-
- Works in all browsers with localStorage support
|
|
111
|
-
- Maps directory paths to localStorage keys
|
|
112
|
-
- Each key stores multiple collections as JSON
|
|
113
|
-
- Files are automatically discovered from storage
|
|
114
|
-
|
|
115
|
-
#### Example
|
|
116
|
-
|
|
117
|
-
```typescript
|
|
118
|
-
const tree = FileApiTreeAccessors.createFromLocalStorage({
|
|
119
|
-
pathToKeyMap: {
|
|
120
|
-
'/data/ingredients': 'myapp:ingredients:v1',
|
|
121
|
-
'/data/fillings': 'myapp:fillings:v1'
|
|
122
|
-
},
|
|
123
|
-
mutable: true,
|
|
124
|
-
autoSync: false
|
|
125
|
-
});
|
|
126
|
-
```
|
|
127
|
-
|
|
128
|
-
***
|
|
129
|
-
|
|
130
|
-
### createPersistent()
|
|
131
|
-
|
|
132
|
-
> `static` **createPersistent**\<`TCT`\>(`dirHandle`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
133
|
-
|
|
134
|
-
Create a persistent FileTree from a File System Access API directory handle.
|
|
135
|
-
Changes to files can be synced back to disk.
|
|
136
|
-
|
|
137
|
-
#### Type Parameters
|
|
138
|
-
|
|
139
|
-
| Type Parameter | Default type |
|
|
140
|
-
| ------ | ------ |
|
|
141
|
-
| `TCT` *extends* `string` | `string` |
|
|
142
|
-
|
|
143
|
-
#### Parameters
|
|
144
|
-
|
|
145
|
-
| Parameter | Type | Description |
|
|
146
|
-
| ------ | ------ | ------ |
|
|
147
|
-
| `dirHandle` | [`FileSystemDirectoryHandle`](../interfaces/FileSystemDirectoryHandle.md) | FileSystemDirectoryHandle to load files from |
|
|
148
|
-
| `params?` | [`IFileSystemAccessTreeParams`](../interfaces/IFileSystemAccessTreeParams.md)\<`TCT`\> | Optional parameters including autoSync and permission settings |
|
|
149
|
-
|
|
150
|
-
#### Returns
|
|
151
|
-
|
|
152
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
153
|
-
|
|
154
|
-
Promise resolving to a FileTree with persistence capability
|
|
155
|
-
|
|
156
|
-
#### Remarks
|
|
157
|
-
|
|
158
|
-
- Only works in browsers supporting File System Access API (Chrome, Edge, Opera)
|
|
159
|
-
- Requires 'readwrite' permission on the directory handle
|
|
160
|
-
- Falls back to read-only mode if permissions unavailable (unless requireWritePermission is true)
|
|
161
|
-
|
|
162
|
-
***
|
|
163
|
-
|
|
164
|
-
### createPersistentFromFile()
|
|
165
|
-
|
|
166
|
-
> `static` **createPersistentFromFile**\<`TCT`\>(`fileHandle`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
167
|
-
|
|
168
|
-
Create a persistent FileTree from a single File System Access API file handle.
|
|
169
|
-
The tree contains exactly one file at `/<filename>`.
|
|
170
|
-
Changes can be synced back to the original file via `syncToDisk()`.
|
|
171
|
-
|
|
172
|
-
#### Type Parameters
|
|
173
|
-
|
|
174
|
-
| Type Parameter | Default type |
|
|
175
|
-
| ------ | ------ |
|
|
176
|
-
| `TCT` *extends* `string` | `string` |
|
|
177
|
-
|
|
178
|
-
#### Parameters
|
|
179
|
-
|
|
180
|
-
| Parameter | Type | Description |
|
|
181
|
-
| ------ | ------ | ------ |
|
|
182
|
-
| `fileHandle` | [`FileSystemFileHandle`](../interfaces/FileSystemFileHandle.md) | FileSystemFileHandle to load |
|
|
183
|
-
| `params?` | [`IFileSystemAccessTreeParams`](../interfaces/IFileSystemAccessTreeParams.md)\<`TCT`\> | Optional parameters including autoSync and permission settings |
|
|
184
|
-
|
|
185
|
-
#### Returns
|
|
186
|
-
|
|
187
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
188
|
-
|
|
189
|
-
Promise resolving to a FileTree with persistence capability
|
|
190
|
-
|
|
191
|
-
***
|
|
192
|
-
|
|
193
|
-
### extractFileMetadata()
|
|
194
|
-
|
|
195
|
-
> `static` **extractFileMetadata**(`file`): [`IFileMetadata`](../interfaces/IFileMetadata.md)
|
|
196
|
-
|
|
197
|
-
Extract file metadata from a File.
|
|
198
|
-
|
|
199
|
-
#### Parameters
|
|
200
|
-
|
|
201
|
-
| Parameter | Type |
|
|
202
|
-
| ------ | ------ |
|
|
203
|
-
| `file` | `File` |
|
|
204
|
-
|
|
205
|
-
#### Returns
|
|
206
|
-
|
|
207
|
-
[`IFileMetadata`](../interfaces/IFileMetadata.md)
|
|
208
|
-
|
|
209
|
-
The [file metadata](../interfaces/IFileMetadata.md)
|
|
210
|
-
|
|
211
|
-
***
|
|
212
|
-
|
|
213
|
-
### fromDirectoryUpload()
|
|
214
|
-
|
|
215
|
-
> `static` **fromDirectoryUpload**\<`TCT`\>(`fileList`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
216
|
-
|
|
217
|
-
Create FileTree from directory upload with webkitRelativePath.
|
|
218
|
-
|
|
219
|
-
#### Type Parameters
|
|
220
|
-
|
|
221
|
-
| Type Parameter | Default type |
|
|
222
|
-
| ------ | ------ |
|
|
223
|
-
| `TCT` *extends* `string` | `string` |
|
|
224
|
-
|
|
225
|
-
#### Parameters
|
|
226
|
-
|
|
227
|
-
| Parameter | Type | Description |
|
|
228
|
-
| ------ | ------ | ------ |
|
|
229
|
-
| `fileList` | `FileList` | FileList from a directory upload (input with webkitdirectory) |
|
|
230
|
-
| `params?` | [`IFileTreeInitParams`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\> | Optional `IFileTreeInitParams` for the file tree. |
|
|
231
|
-
|
|
232
|
-
#### Returns
|
|
233
|
-
|
|
234
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
235
|
-
|
|
236
|
-
Promise resolving to a FileTree with all content pre-loaded
|
|
237
|
-
|
|
238
|
-
***
|
|
239
|
-
|
|
240
|
-
### fromFileList()
|
|
241
|
-
|
|
242
|
-
> `static` **fromFileList**\<`TCT`\>(`fileList`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
243
|
-
|
|
244
|
-
Create FileTree from FileList (e.g., from input[type="file"]).
|
|
245
|
-
|
|
246
|
-
#### Type Parameters
|
|
247
|
-
|
|
248
|
-
| Type Parameter | Default type |
|
|
249
|
-
| ------ | ------ |
|
|
250
|
-
| `TCT` *extends* `string` | `string` |
|
|
251
|
-
|
|
252
|
-
#### Parameters
|
|
253
|
-
|
|
254
|
-
| Parameter | Type | Description |
|
|
255
|
-
| ------ | ------ | ------ |
|
|
256
|
-
| `fileList` | `FileList` | FileList from a file input element |
|
|
257
|
-
| `params?` | [`IFileTreeInitParams`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\> | Optional `IFileTreeInitParams` for the file tree. |
|
|
258
|
-
|
|
259
|
-
#### Returns
|
|
260
|
-
|
|
261
|
-
`Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTree_2`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>\>
|
|
262
|
-
|
|
263
|
-
Promise resolving to a FileTree with all content pre-loaded
|
|
264
|
-
|
|
265
|
-
***
|
|
266
|
-
|
|
267
|
-
### getOriginalFile()
|
|
268
|
-
|
|
269
|
-
> `static` **getOriginalFile**(`fileList`, `targetPath`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`File`\>
|
|
270
|
-
|
|
271
|
-
Get the File object for a specific path from the original FileList.
|
|
272
|
-
This is useful for accessing the original File API object for operations
|
|
273
|
-
like getting file metadata, MIME type, etc.
|
|
274
|
-
|
|
275
|
-
#### Parameters
|
|
276
|
-
|
|
277
|
-
| Parameter | Type | Description |
|
|
278
|
-
| ------ | ------ | ------ |
|
|
279
|
-
| `fileList` | `FileList` | The original FileList |
|
|
280
|
-
| `targetPath` | `string` | The path to find |
|
|
281
|
-
|
|
282
|
-
#### Returns
|
|
283
|
-
|
|
284
|
-
[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`File`\>
|
|
285
|
-
|
|
286
|
-
Result containing the File object if found
|