@fgv/ts-web-extras 5.1.0-3 → 5.1.0-31

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.
Files changed (275) hide show
  1. package/dist/packlets/crypto-utils/browserCryptoProvider.js +330 -18
  2. package/dist/packlets/crypto-utils/browserCryptoProvider.js.map +1 -1
  3. package/dist/packlets/crypto-utils/index.js +12 -0
  4. package/dist/packlets/crypto-utils/index.js.map +1 -1
  5. package/dist/packlets/file-tree/directoryHandleStore.js.map +1 -1
  6. package/dist/packlets/file-tree/fileApiTreeAccessors.js +1 -1
  7. package/dist/packlets/file-tree/fileApiTreeAccessors.js.map +1 -1
  8. package/dist/packlets/file-tree/fileSystemAccessTreeAccessors.js +2 -2
  9. package/dist/packlets/file-tree/fileSystemAccessTreeAccessors.js.map +1 -1
  10. package/dist/packlets/file-tree/httpTreeAccessors.js +74 -44
  11. package/dist/packlets/file-tree/httpTreeAccessors.js.map +1 -1
  12. package/dist/packlets/file-tree/localStorageTreeAccessors.js.map +1 -1
  13. package/dist/packlets/helpers/fileTreeHelpers.js +1 -1
  14. package/dist/packlets/helpers/fileTreeHelpers.js.map +1 -1
  15. package/dist/ts-web-extras.d.ts +141 -10
  16. package/dist/tsdoc-metadata.json +1 -1
  17. package/eslint.config.js +32 -0
  18. package/lib/packlets/crypto-utils/browserCryptoProvider.d.ts +115 -6
  19. package/lib/packlets/crypto-utils/browserCryptoProvider.d.ts.map +1 -1
  20. package/lib/packlets/crypto-utils/browserCryptoProvider.js +329 -17
  21. package/lib/packlets/crypto-utils/browserCryptoProvider.js.map +1 -1
  22. package/lib/packlets/crypto-utils/index.d.ts +13 -0
  23. package/lib/packlets/crypto-utils/index.d.ts.map +1 -1
  24. package/lib/packlets/crypto-utils/index.js +13 -0
  25. package/lib/packlets/crypto-utils/index.js.map +1 -1
  26. package/lib/packlets/file-tree/directoryHandleStore.d.ts +2 -2
  27. package/lib/packlets/file-tree/directoryHandleStore.d.ts.map +1 -1
  28. package/lib/packlets/file-tree/directoryHandleStore.js.map +1 -1
  29. package/lib/packlets/file-tree/fileApiTreeAccessors.d.ts +2 -2
  30. package/lib/packlets/file-tree/fileApiTreeAccessors.d.ts.map +1 -1
  31. package/lib/packlets/file-tree/fileApiTreeAccessors.js +1 -1
  32. package/lib/packlets/file-tree/fileApiTreeAccessors.js.map +1 -1
  33. package/lib/packlets/file-tree/fileSystemAccessTreeAccessors.d.ts.map +1 -1
  34. package/lib/packlets/file-tree/fileSystemAccessTreeAccessors.js +2 -2
  35. package/lib/packlets/file-tree/fileSystemAccessTreeAccessors.js.map +1 -1
  36. package/lib/packlets/file-tree/httpTreeAccessors.d.ts +6 -0
  37. package/lib/packlets/file-tree/httpTreeAccessors.d.ts.map +1 -1
  38. package/lib/packlets/file-tree/httpTreeAccessors.js +74 -44
  39. package/lib/packlets/file-tree/httpTreeAccessors.js.map +1 -1
  40. package/lib/packlets/file-tree/localStorageTreeAccessors.js.map +1 -1
  41. package/lib/packlets/helpers/fileTreeHelpers.d.ts +1 -1
  42. package/lib/packlets/helpers/fileTreeHelpers.d.ts.map +1 -1
  43. package/lib/packlets/helpers/fileTreeHelpers.js +6 -6
  44. package/lib/packlets/helpers/fileTreeHelpers.js.map +1 -1
  45. package/package.json +16 -15
  46. package/.rush/temp/61c1d4a91d98f048b475a5bb3e6541c5d27819de.tar.log +0 -237
  47. package/.rush/temp/chunked-rush-logs/ts-web-extras.build.chunks.jsonl +0 -55
  48. package/.rush/temp/operation/build/all.log +0 -55
  49. package/.rush/temp/operation/build/log-chunks.jsonl +0 -55
  50. package/.rush/temp/operation/build/state.json +0 -3
  51. package/.rush/temp/shrinkwrap-deps.json +0 -635
  52. package/CHANGELOG.md +0 -23
  53. package/config/api-extractor.json +0 -343
  54. package/config/jest.config.json +0 -19
  55. package/config/rig.json +0 -16
  56. package/config/typedoc.json +0 -6
  57. package/dist/test/mocks/idb-keyval.js +0 -6
  58. package/dist/test/mocks/idb-keyval.js.map +0 -1
  59. package/dist/test/setupTests.js +0 -74
  60. package/dist/test/setupTests.js.map +0 -1
  61. package/dist/test/unit/browserHashProvider.test.js +0 -140
  62. package/dist/test/unit/browserHashProvider.test.js.map +0 -1
  63. package/dist/test/unit/directoryHandleStore.test.js +0 -190
  64. package/dist/test/unit/directoryHandleStore.test.js.map +0 -1
  65. package/dist/test/unit/fileApiTreeAccessors.test.js +0 -1188
  66. package/dist/test/unit/fileApiTreeAccessors.test.js.map +0 -1
  67. package/dist/test/unit/fileApiTypes.test.js +0 -472
  68. package/dist/test/unit/fileApiTypes.test.js.map +0 -1
  69. package/dist/test/unit/fileSystemAccessTreeAccessors.test.js +0 -622
  70. package/dist/test/unit/fileSystemAccessTreeAccessors.test.js.map +0 -1
  71. package/dist/test/unit/fileTreeHelpers.test.js +0 -590
  72. package/dist/test/unit/fileTreeHelpers.test.js.map +0 -1
  73. package/dist/test/unit/httpTreeAccessors.test.js +0 -1229
  74. package/dist/test/unit/httpTreeAccessors.test.js.map +0 -1
  75. package/dist/test/unit/localStorageTreeAccessors.test.js +0 -812
  76. package/dist/test/unit/localStorageTreeAccessors.test.js.map +0 -1
  77. package/dist/test/unit/urlParams.test.js +0 -393
  78. package/dist/test/unit/urlParams.test.js.map +0 -1
  79. package/dist/test/utils/fileSystemAccessMocks.js +0 -271
  80. package/dist/test/utils/fileSystemAccessMocks.js.map +0 -1
  81. package/dist/test/utils/testHelpers.js +0 -124
  82. package/dist/test/utils/testHelpers.js.map +0 -1
  83. package/docs/@fgv/namespaces/CryptoUtils/README.md +0 -18
  84. package/docs/@fgv/namespaces/CryptoUtils/classes/BrowserCryptoProvider.md +0 -203
  85. package/docs/@fgv/namespaces/CryptoUtils/classes/BrowserHashProvider.md +0 -63
  86. package/docs/@fgv/namespaces/CryptoUtils/functions/createBrowserCryptoProvider.md +0 -18
  87. package/docs/@fgv/namespaces/FileTreeHelpers/README.md +0 -19
  88. package/docs/@fgv/namespaces/FileTreeHelpers/functions/extractFileListMetadata.md +0 -23
  89. package/docs/@fgv/namespaces/FileTreeHelpers/functions/extractFileMetadata.md +0 -23
  90. package/docs/@fgv/namespaces/FileTreeHelpers/functions/fromDirectoryUpload.md +0 -33
  91. package/docs/@fgv/namespaces/FileTreeHelpers/functions/fromFileList.md +0 -33
  92. package/docs/@fgv/namespaces/FileTreeHelpers/functions/getOriginalFile.md +0 -25
  93. package/docs/@fgv/namespaces/FileTreeHelpers/variables/defaultFileApiTreeInitParams.md +0 -11
  94. package/docs/README.md +0 -78
  95. package/docs/classes/DirectoryHandleStore.md +0 -116
  96. package/docs/classes/FileApiTreeAccessors.md +0 -286
  97. package/docs/classes/FileSystemAccessTreeAccessors.md +0 -557
  98. package/docs/classes/HttpTreeAccessors.md +0 -508
  99. package/docs/classes/LocalStorageTreeAccessors.md +0 -520
  100. package/docs/functions/exportAsJson.md +0 -23
  101. package/docs/functions/exportUsingFileSystemAPI.md +0 -26
  102. package/docs/functions/extractDirectoryPath.md +0 -23
  103. package/docs/functions/isDirectoryHandle.md +0 -23
  104. package/docs/functions/isFileHandle.md +0 -23
  105. package/docs/functions/isFilePath.md +0 -21
  106. package/docs/functions/parseContextFilter.md +0 -22
  107. package/docs/functions/parseQualifierDefaults.md +0 -22
  108. package/docs/functions/parseResourceTypes.md +0 -22
  109. package/docs/functions/parseUrlParameters.md +0 -15
  110. package/docs/functions/safeShowDirectoryPicker.md +0 -24
  111. package/docs/functions/safeShowOpenFilePicker.md +0 -24
  112. package/docs/functions/safeShowSaveFilePicker.md +0 -24
  113. package/docs/functions/supportsFileSystemAccess.md +0 -23
  114. package/docs/interfaces/FilePickerAcceptType.md +0 -16
  115. package/docs/interfaces/FileSystemCreateWritableOptions.md +0 -15
  116. package/docs/interfaces/FileSystemDirectoryHandle.md +0 -187
  117. package/docs/interfaces/FileSystemFileHandle.md +0 -106
  118. package/docs/interfaces/FileSystemGetDirectoryOptions.md +0 -15
  119. package/docs/interfaces/FileSystemGetFileOptions.md +0 -15
  120. package/docs/interfaces/FileSystemHandle.md +0 -69
  121. package/docs/interfaces/FileSystemHandlePermissionDescriptor.md +0 -15
  122. package/docs/interfaces/FileSystemRemoveOptions.md +0 -15
  123. package/docs/interfaces/FileSystemWritableFileStream.md +0 -127
  124. package/docs/interfaces/IDirectoryHandleTreeInitializer.md +0 -17
  125. package/docs/interfaces/IFileHandleTreeInitializer.md +0 -16
  126. package/docs/interfaces/IFileListTreeInitializer.md +0 -15
  127. package/docs/interfaces/IFileMetadata.md +0 -19
  128. package/docs/interfaces/IFileSystemAccessTreeParams.md +0 -30
  129. package/docs/interfaces/IFsAccessApis.md +0 -57
  130. package/docs/interfaces/IHttpTreeParams.md +0 -32
  131. package/docs/interfaces/ILocalStorageTreeParams.md +0 -30
  132. package/docs/interfaces/IUrlConfigOptions.md +0 -27
  133. package/docs/interfaces/ShowDirectoryPickerOptions.md +0 -17
  134. package/docs/interfaces/ShowOpenFilePickerOptions.md +0 -19
  135. package/docs/interfaces/ShowSaveFilePickerOptions.md +0 -19
  136. package/docs/type-aliases/TreeInitializer.md +0 -11
  137. package/docs/type-aliases/WellKnownDirectory.md +0 -11
  138. package/docs/type-aliases/WindowWithFsAccess.md +0 -11
  139. package/docs/variables/DEFAULT_DIRECTORY_HANDLE_DB.md +0 -11
  140. package/docs/variables/DEFAULT_DIRECTORY_HANDLE_STORE.md +0 -11
  141. package/etc/ts-web-extras.api.md +0 -433
  142. package/lib/test/mocks/idb-keyval.d.ts +0 -6
  143. package/lib/test/mocks/idb-keyval.d.ts.map +0 -1
  144. package/lib/test/mocks/idb-keyval.js +0 -9
  145. package/lib/test/mocks/idb-keyval.js.map +0 -1
  146. package/lib/test/setupTests.d.ts +0 -2
  147. package/lib/test/setupTests.d.ts.map +0 -1
  148. package/lib/test/setupTests.js +0 -76
  149. package/lib/test/setupTests.js.map +0 -1
  150. package/lib/test/unit/browserHashProvider.test.d.ts +0 -2
  151. package/lib/test/unit/browserHashProvider.test.d.ts.map +0 -1
  152. package/lib/test/unit/browserHashProvider.test.js +0 -142
  153. package/lib/test/unit/browserHashProvider.test.js.map +0 -1
  154. package/lib/test/unit/directoryHandleStore.test.d.ts +0 -2
  155. package/lib/test/unit/directoryHandleStore.test.d.ts.map +0 -1
  156. package/lib/test/unit/directoryHandleStore.test.js +0 -192
  157. package/lib/test/unit/directoryHandleStore.test.js.map +0 -1
  158. package/lib/test/unit/fileApiTreeAccessors.test.d.ts +0 -2
  159. package/lib/test/unit/fileApiTreeAccessors.test.d.ts.map +0 -1
  160. package/lib/test/unit/fileApiTreeAccessors.test.js +0 -1190
  161. package/lib/test/unit/fileApiTreeAccessors.test.js.map +0 -1
  162. package/lib/test/unit/fileApiTypes.test.d.ts +0 -2
  163. package/lib/test/unit/fileApiTypes.test.d.ts.map +0 -1
  164. package/lib/test/unit/fileApiTypes.test.js +0 -474
  165. package/lib/test/unit/fileApiTypes.test.js.map +0 -1
  166. package/lib/test/unit/fileSystemAccessTreeAccessors.test.d.ts +0 -2
  167. package/lib/test/unit/fileSystemAccessTreeAccessors.test.d.ts.map +0 -1
  168. package/lib/test/unit/fileSystemAccessTreeAccessors.test.js +0 -624
  169. package/lib/test/unit/fileSystemAccessTreeAccessors.test.js.map +0 -1
  170. package/lib/test/unit/fileTreeHelpers.test.d.ts +0 -2
  171. package/lib/test/unit/fileTreeHelpers.test.d.ts.map +0 -1
  172. package/lib/test/unit/fileTreeHelpers.test.js +0 -592
  173. package/lib/test/unit/fileTreeHelpers.test.js.map +0 -1
  174. package/lib/test/unit/httpTreeAccessors.test.d.ts +0 -2
  175. package/lib/test/unit/httpTreeAccessors.test.d.ts.map +0 -1
  176. package/lib/test/unit/httpTreeAccessors.test.js +0 -1231
  177. package/lib/test/unit/httpTreeAccessors.test.js.map +0 -1
  178. package/lib/test/unit/localStorageTreeAccessors.test.d.ts +0 -2
  179. package/lib/test/unit/localStorageTreeAccessors.test.d.ts.map +0 -1
  180. package/lib/test/unit/localStorageTreeAccessors.test.js +0 -814
  181. package/lib/test/unit/localStorageTreeAccessors.test.js.map +0 -1
  182. package/lib/test/unit/urlParams.test.d.ts +0 -2
  183. package/lib/test/unit/urlParams.test.d.ts.map +0 -1
  184. package/lib/test/unit/urlParams.test.js +0 -395
  185. package/lib/test/unit/urlParams.test.js.map +0 -1
  186. package/lib/test/utils/fileSystemAccessMocks.d.ts +0 -53
  187. package/lib/test/utils/fileSystemAccessMocks.d.ts.map +0 -1
  188. package/lib/test/utils/fileSystemAccessMocks.js +0 -277
  189. package/lib/test/utils/fileSystemAccessMocks.js.map +0 -1
  190. package/lib/test/utils/testHelpers.d.ts +0 -51
  191. package/lib/test/utils/testHelpers.d.ts.map +0 -1
  192. package/lib/test/utils/testHelpers.js +0 -133
  193. package/lib/test/utils/testHelpers.js.map +0 -1
  194. package/rush-logs/ts-web-extras.build.cache.log +0 -3
  195. package/rush-logs/ts-web-extras.build.log +0 -55
  196. package/src/index.browser.ts +0 -24
  197. package/src/index.ts +0 -47
  198. package/src/packlets/crypto-utils/browserCryptoProvider.ts +0 -311
  199. package/src/packlets/crypto-utils/browserHashProvider.ts +0 -73
  200. package/src/packlets/crypto-utils/index.ts +0 -29
  201. package/src/packlets/file-api-types/index.ts +0 -366
  202. package/src/packlets/file-tree/directoryHandleStore.ts +0 -136
  203. package/src/packlets/file-tree/fileApiTreeAccessors.ts +0 -528
  204. package/src/packlets/file-tree/fileSystemAccessTreeAccessors.ts +0 -519
  205. package/src/packlets/file-tree/httpTreeAccessors.ts +0 -448
  206. package/src/packlets/file-tree/index.ts +0 -32
  207. package/src/packlets/file-tree/localStorageTreeAccessors.ts +0 -430
  208. package/src/packlets/helpers/fileTreeHelpers.ts +0 -107
  209. package/src/packlets/helpers/index.ts +0 -28
  210. package/src/packlets/url-utils/index.ts +0 -28
  211. package/src/packlets/url-utils/urlParams.ts +0 -245
  212. package/src/test/mocks/idb-keyval.ts +0 -5
  213. package/src/test/setupTests.ts +0 -87
  214. package/src/test/unit/browserHashProvider.test.ts +0 -155
  215. package/src/test/unit/browserHashProvider.test.ts.bak +0 -376
  216. package/src/test/unit/directoryHandleStore.test.ts +0 -251
  217. package/src/test/unit/fileApiTreeAccessors.test.ts +0 -1387
  218. package/src/test/unit/fileApiTypes.test.ts +0 -587
  219. package/src/test/unit/fileSystemAccessTreeAccessors.test.ts +0 -885
  220. package/src/test/unit/fileTreeHelpers.test.ts +0 -694
  221. package/src/test/unit/httpTreeAccessors.test.ts +0 -1571
  222. package/src/test/unit/localStorageTreeAccessors.test.ts +0 -1014
  223. package/src/test/unit/urlParams.test.ts +0 -464
  224. package/src/test/utils/fileSystemAccessMocks.ts +0 -353
  225. package/src/test/utils/testHelpers.ts +0 -155
  226. package/temp/build/typescript/ts_8nwakTlr.json +0 -1
  227. package/temp/coverage/base.css +0 -224
  228. package/temp/coverage/block-navigation.js +0 -87
  229. package/temp/coverage/crypto-utils/browserCryptoProvider.ts.html +0 -1018
  230. package/temp/coverage/crypto-utils/browserHashProvider.ts.html +0 -304
  231. package/temp/coverage/crypto-utils/index.html +0 -131
  232. package/temp/coverage/favicon.png +0 -0
  233. package/temp/coverage/file-tree/directoryHandleStore.ts.html +0 -493
  234. package/temp/coverage/file-tree/fileApiTreeAccessors.ts.html +0 -1669
  235. package/temp/coverage/file-tree/fileSystemAccessTreeAccessors.ts.html +0 -1642
  236. package/temp/coverage/file-tree/httpTreeAccessors.ts.html +0 -1429
  237. package/temp/coverage/file-tree/index.html +0 -176
  238. package/temp/coverage/file-tree/localStorageTreeAccessors.ts.html +0 -1375
  239. package/temp/coverage/helpers/fileTreeHelpers.ts.html +0 -406
  240. package/temp/coverage/helpers/index.html +0 -116
  241. package/temp/coverage/index.html +0 -161
  242. package/temp/coverage/lcov-report/base.css +0 -224
  243. package/temp/coverage/lcov-report/block-navigation.js +0 -87
  244. package/temp/coverage/lcov-report/crypto-utils/browserCryptoProvider.ts.html +0 -1018
  245. package/temp/coverage/lcov-report/crypto-utils/browserHashProvider.ts.html +0 -304
  246. package/temp/coverage/lcov-report/crypto-utils/index.html +0 -131
  247. package/temp/coverage/lcov-report/favicon.png +0 -0
  248. package/temp/coverage/lcov-report/file-tree/directoryHandleStore.ts.html +0 -493
  249. package/temp/coverage/lcov-report/file-tree/fileApiTreeAccessors.ts.html +0 -1669
  250. package/temp/coverage/lcov-report/file-tree/fileSystemAccessTreeAccessors.ts.html +0 -1642
  251. package/temp/coverage/lcov-report/file-tree/httpTreeAccessors.ts.html +0 -1429
  252. package/temp/coverage/lcov-report/file-tree/index.html +0 -176
  253. package/temp/coverage/lcov-report/file-tree/localStorageTreeAccessors.ts.html +0 -1375
  254. package/temp/coverage/lcov-report/helpers/fileTreeHelpers.ts.html +0 -406
  255. package/temp/coverage/lcov-report/helpers/index.html +0 -116
  256. package/temp/coverage/lcov-report/index.html +0 -161
  257. package/temp/coverage/lcov-report/prettify.css +0 -1
  258. package/temp/coverage/lcov-report/prettify.js +0 -2
  259. package/temp/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  260. package/temp/coverage/lcov-report/sorter.js +0 -210
  261. package/temp/coverage/lcov-report/url-utils/index.html +0 -116
  262. package/temp/coverage/lcov-report/url-utils/urlParams.ts.html +0 -820
  263. package/temp/coverage/lcov.info +0 -3597
  264. package/temp/coverage/prettify.css +0 -1
  265. package/temp/coverage/prettify.js +0 -2
  266. package/temp/coverage/sort-arrow-sprite.png +0 -0
  267. package/temp/coverage/sorter.js +0 -210
  268. package/temp/coverage/url-utils/index.html +0 -116
  269. package/temp/coverage/url-utils/urlParams.ts.html +0 -820
  270. package/temp/test/jest/haste-map-7492f1b44480e0cdd1f220078fb3afd8-c8dd6c3430605adeb2f1cadf4f75e791-8c9336785555d572065b28c111982ba4 +0 -0
  271. package/temp/test/jest/jest-transform-cache-7492f1b44480e0cdd1f220078fb3afd8-79ef2876fae7ca75eedb2aa53dc48338/d6/package_d6e3b0fa94752e16b0b2a2777739b973 +0 -53
  272. package/temp/test/jest/perf-cache-7492f1b44480e0cdd1f220078fb3afd8-da39a3ee5e6b4b0d3255bfef95601890 +0 -1
  273. package/temp/ts-web-extras.api.json +0 -8850
  274. package/temp/ts-web-extras.api.md +0 -433
  275. package/tsconfig.json +0 -7
@@ -1,557 +0,0 @@
1
- [**@fgv/ts-web-extras**](../README.md)
2
-
3
- ***
4
-
5
- [@fgv/ts-web-extras](../README.md) / FileSystemAccessTreeAccessors
6
-
7
- # Class: FileSystemAccessTreeAccessors\<TCT\>
8
-
9
- Implementation of `FileTree.IPersistentFileTreeAccessors` that uses the File System Access API
10
- to provide persistent file editing in browsers.
11
-
12
- ## Extends
13
-
14
- - [`InMemoryTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>
15
-
16
- ## Type Parameters
17
-
18
- | Type Parameter | Default type |
19
- | ------ | ------ |
20
- | `TCT` *extends* `string` | `string` |
21
-
22
- ## Implements
23
-
24
- - [`IPersistentFileTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>
25
-
26
- ## Constructors
27
-
28
- ### Constructor
29
-
30
- > `protected` **new FileSystemAccessTreeAccessors**\<`TCT`\>(`files`, `rootDir`, `handles`, `params`, `hasWritePermission`): `FileSystemAccessTreeAccessors`\<`TCT`\>
31
-
32
- Protected constructor for FileSystemAccessTreeAccessors.
33
-
34
- #### Parameters
35
-
36
- | Parameter | Type | Description |
37
- | ------ | ------ | ------ |
38
- | `files` | [`IInMemoryFile`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>[] | An array of in-memory files to include in the tree. |
39
- | `rootDir` | [`FileSystemDirectoryHandle`](../interfaces/FileSystemDirectoryHandle.md) | The root directory handle. |
40
- | `handles` | `Map`\<`string`, [`FileSystemFileHandle`](../interfaces/FileSystemFileHandle.md)\> | Map of file paths to their handles. |
41
- | `params` | [`IFileSystemAccessTreeParams`](../interfaces/IFileSystemAccessTreeParams.md)\<`TCT`\> \| `undefined` | Optional params for the tree. |
42
- | `hasWritePermission` | `boolean` | Whether write permission was granted. |
43
-
44
- #### Returns
45
-
46
- `FileSystemAccessTreeAccessors`\<`TCT`\>
47
-
48
- #### Overrides
49
-
50
- `FileTree.InMemoryTreeAccessors<TCT>.constructor`
51
-
52
- ## Methods
53
-
54
- ### createDirectory()
55
-
56
- > **createDirectory**(`dirPath`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
57
-
58
- FileTree.IMutableFileTreeAccessors.createDirectory
59
-
60
- #### Parameters
61
-
62
- | Parameter | Type |
63
- | ------ | ------ |
64
- | `dirPath` | `string` |
65
-
66
- #### Returns
67
-
68
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
69
-
70
- #### Implementation of
71
-
72
- `FileTree.IPersistentFileTreeAccessors.createDirectory`
73
-
74
- #### Inherited from
75
-
76
- `FileTree.InMemoryTreeAccessors.createDirectory`
77
-
78
- ***
79
-
80
- ### deleteDirectory()
81
-
82
- > **deleteDirectory**(`path`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`\>
83
-
84
- FileTree.IMutableFileTreeAccessors.deleteDirectory
85
-
86
- #### Parameters
87
-
88
- | Parameter | Type |
89
- | ------ | ------ |
90
- | `path` | `string` |
91
-
92
- #### Returns
93
-
94
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`\>
95
-
96
- #### Implementation of
97
-
98
- `FileTree.IPersistentFileTreeAccessors.deleteDirectory`
99
-
100
- #### Inherited from
101
-
102
- `FileTree.InMemoryTreeAccessors.deleteDirectory`
103
-
104
- ***
105
-
106
- ### deleteFile()
107
-
108
- > **deleteFile**(`path`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`\>
109
-
110
- FileTree.IMutableFileTreeAccessors.deleteFile
111
-
112
- #### Parameters
113
-
114
- | Parameter | Type |
115
- | ------ | ------ |
116
- | `path` | `string` |
117
-
118
- #### Returns
119
-
120
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`\>
121
-
122
- #### Implementation of
123
-
124
- `FileTree.IPersistentFileTreeAccessors.deleteFile`
125
-
126
- #### Inherited from
127
-
128
- `FileTree.InMemoryTreeAccessors.deleteFile`
129
-
130
- ***
131
-
132
- ### fileIsMutable()
133
-
134
- > **fileIsMutable**(`path`): [`DetailedResult`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`, [`SaveDetail`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\>
135
-
136
- Implements `FileTree.IMutableFileTreeAccessors.fileIsMutable`
137
-
138
- #### Parameters
139
-
140
- | Parameter | Type |
141
- | ------ | ------ |
142
- | `path` | `string` |
143
-
144
- #### Returns
145
-
146
- [`DetailedResult`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`boolean`, [`SaveDetail`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\>
147
-
148
- #### Implementation of
149
-
150
- `FileTree.IPersistentFileTreeAccessors.fileIsMutable`
151
-
152
- #### Overrides
153
-
154
- `FileTree.InMemoryTreeAccessors.fileIsMutable`
155
-
156
- ***
157
-
158
- ### getBaseName()
159
-
160
- > **getBaseName**(`path`, `suffix?`): `string`
161
-
162
- FileTree.IFileTreeAccessors.getBaseName
163
-
164
- #### Parameters
165
-
166
- | Parameter | Type |
167
- | ------ | ------ |
168
- | `path` | `string` |
169
- | `suffix?` | `string` |
170
-
171
- #### Returns
172
-
173
- `string`
174
-
175
- #### Implementation of
176
-
177
- `FileTree.IPersistentFileTreeAccessors.getBaseName`
178
-
179
- #### Inherited from
180
-
181
- `FileTree.InMemoryTreeAccessors.getBaseName`
182
-
183
- ***
184
-
185
- ### getChildren()
186
-
187
- > **getChildren**(`path`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<readonly [`FileTreeItem`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>[]\>
188
-
189
- FileTree.IFileTreeAccessors.getChildren
190
-
191
- #### Parameters
192
-
193
- | Parameter | Type |
194
- | ------ | ------ |
195
- | `path` | `string` |
196
-
197
- #### Returns
198
-
199
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<readonly [`FileTreeItem`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>[]\>
200
-
201
- #### Implementation of
202
-
203
- `FileTree.IPersistentFileTreeAccessors.getChildren`
204
-
205
- #### Inherited from
206
-
207
- `FileTree.InMemoryTreeAccessors.getChildren`
208
-
209
- ***
210
-
211
- ### getDirtyPaths()
212
-
213
- > **getDirtyPaths**(): `string`[]
214
-
215
- Implements `FileTree.IPersistentFileTreeAccessors.getDirtyPaths`
216
-
217
- #### Returns
218
-
219
- `string`[]
220
-
221
- #### Implementation of
222
-
223
- `FileTree.IPersistentFileTreeAccessors.getDirtyPaths`
224
-
225
- ***
226
-
227
- ### getExtension()
228
-
229
- > **getExtension**(`path`): `string`
230
-
231
- FileTree.IFileTreeAccessors.getExtension
232
-
233
- #### Parameters
234
-
235
- | Parameter | Type |
236
- | ------ | ------ |
237
- | `path` | `string` |
238
-
239
- #### Returns
240
-
241
- `string`
242
-
243
- #### Implementation of
244
-
245
- `FileTree.IPersistentFileTreeAccessors.getExtension`
246
-
247
- #### Inherited from
248
-
249
- `FileTree.InMemoryTreeAccessors.getExtension`
250
-
251
- ***
252
-
253
- ### getFileContents()
254
-
255
- > **getFileContents**(`path`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
256
-
257
- FileTree.IFileTreeAccessors.getFileContents
258
-
259
- #### Parameters
260
-
261
- | Parameter | Type |
262
- | ------ | ------ |
263
- | `path` | `string` |
264
-
265
- #### Returns
266
-
267
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
268
-
269
- #### Implementation of
270
-
271
- `FileTree.IPersistentFileTreeAccessors.getFileContents`
272
-
273
- #### Inherited from
274
-
275
- `FileTree.InMemoryTreeAccessors.getFileContents`
276
-
277
- ***
278
-
279
- ### getFileContentType()
280
-
281
- > **getFileContentType**(`path`, `provided?`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`TCT` \| `undefined`\>
282
-
283
- FileTree.IFileTreeAccessors.getFileContentType
284
-
285
- #### Parameters
286
-
287
- | Parameter | Type |
288
- | ------ | ------ |
289
- | `path` | `string` |
290
- | `provided?` | `string` |
291
-
292
- #### Returns
293
-
294
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`TCT` \| `undefined`\>
295
-
296
- #### Implementation of
297
-
298
- `FileTree.IPersistentFileTreeAccessors.getFileContentType`
299
-
300
- #### Inherited from
301
-
302
- `FileTree.InMemoryTreeAccessors.getFileContentType`
303
-
304
- ***
305
-
306
- ### getItem()
307
-
308
- > **getItem**(`itemPath`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTreeItem`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
309
-
310
- FileTree.IFileTreeAccessors.getItem
311
-
312
- #### Parameters
313
-
314
- | Parameter | Type |
315
- | ------ | ------ |
316
- | `itemPath` | `string` |
317
-
318
- #### Returns
319
-
320
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`FileTreeItem`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
321
-
322
- #### Implementation of
323
-
324
- `FileTree.IPersistentFileTreeAccessors.getItem`
325
-
326
- #### Inherited from
327
-
328
- `FileTree.InMemoryTreeAccessors.getItem`
329
-
330
- ***
331
-
332
- ### isDirty()
333
-
334
- > **isDirty**(): `boolean`
335
-
336
- Implements `FileTree.IPersistentFileTreeAccessors.isDirty`
337
-
338
- #### Returns
339
-
340
- `boolean`
341
-
342
- #### Implementation of
343
-
344
- `FileTree.IPersistentFileTreeAccessors.isDirty`
345
-
346
- ***
347
-
348
- ### joinPaths()
349
-
350
- > **joinPaths**(...`paths`): `string`
351
-
352
- FileTree.IFileTreeAccessors.joinPaths
353
-
354
- #### Parameters
355
-
356
- | Parameter | Type |
357
- | ------ | ------ |
358
- | ...`paths` | `string`[] |
359
-
360
- #### Returns
361
-
362
- `string`
363
-
364
- #### Implementation of
365
-
366
- `FileTree.IPersistentFileTreeAccessors.joinPaths`
367
-
368
- #### Inherited from
369
-
370
- `FileTree.InMemoryTreeAccessors.joinPaths`
371
-
372
- ***
373
-
374
- ### resolveAbsolutePath()
375
-
376
- > **resolveAbsolutePath**(...`paths`): `string`
377
-
378
- FileTree.IFileTreeAccessors.resolveAbsolutePath
379
-
380
- #### Parameters
381
-
382
- | Parameter | Type |
383
- | ------ | ------ |
384
- | ...`paths` | `string`[] |
385
-
386
- #### Returns
387
-
388
- `string`
389
-
390
- #### Implementation of
391
-
392
- `FileTree.IPersistentFileTreeAccessors.resolveAbsolutePath`
393
-
394
- #### Inherited from
395
-
396
- `FileTree.InMemoryTreeAccessors.resolveAbsolutePath`
397
-
398
- ***
399
-
400
- ### saveFileContents()
401
-
402
- > **saveFileContents**(`path`, `contents`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
403
-
404
- Implements `FileTree.IMutableFileTreeAccessors.saveFileContents`
405
-
406
- #### Parameters
407
-
408
- | Parameter | Type |
409
- | ------ | ------ |
410
- | `path` | `string` |
411
- | `contents` | `string` |
412
-
413
- #### Returns
414
-
415
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`string`\>
416
-
417
- #### Implementation of
418
-
419
- `FileTree.IPersistentFileTreeAccessors.saveFileContents`
420
-
421
- #### Overrides
422
-
423
- `FileTree.InMemoryTreeAccessors.saveFileContents`
424
-
425
- ***
426
-
427
- ### syncToDisk()
428
-
429
- > **syncToDisk**(): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`void`\>\>
430
-
431
- Implements `FileTree.IPersistentFileTreeAccessors.syncToDisk`
432
-
433
- #### Returns
434
-
435
- `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`void`\>\>
436
-
437
- #### Implementation of
438
-
439
- `FileTree.IPersistentFileTreeAccessors.syncToDisk`
440
-
441
- ***
442
-
443
- ### create()
444
-
445
- #### Call Signature
446
-
447
- > `static` **create**\<`TCT`\>(`files`, `prefix?`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`InMemoryTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
448
-
449
- Creates a new [InMemoryTreeAccessors](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs) instance with the supplied
450
- in-memory files.
451
-
452
- ##### Type Parameters
453
-
454
- | Type Parameter | Default type |
455
- | ------ | ------ |
456
- | `TCT` *extends* `string` | `string` |
457
-
458
- ##### Parameters
459
-
460
- | Parameter | Type | Description |
461
- | ------ | ------ | ------ |
462
- | `files` | [`IInMemoryFile`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>[] | An array of [in-memory files](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs) to include in the tree. |
463
- | `prefix?` | `string` | Optional prefix for the tree. |
464
-
465
- ##### Returns
466
-
467
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`InMemoryTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
468
-
469
- ##### Inherited from
470
-
471
- `FileTree.InMemoryTreeAccessors.create`
472
-
473
- #### Call Signature
474
-
475
- > `static` **create**\<`TCT`\>(`files`, `params?`): [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`InMemoryTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
476
-
477
- Creates a new [InMemoryTreeAccessors](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs) instance with the supplied
478
- in-memory files.
479
-
480
- ##### Type Parameters
481
-
482
- | Type Parameter | Default type |
483
- | ------ | ------ |
484
- | `TCT` *extends* `string` | `string` |
485
-
486
- ##### Parameters
487
-
488
- | Parameter | Type | Description |
489
- | ------ | ------ | ------ |
490
- | `files` | [`IInMemoryFile`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>[] | An array of [in-memory files](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs) to include in the tree. |
491
- | `params?` | [`IFileTreeInitParams`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\> | Optional params for the tree. |
492
-
493
- ##### Returns
494
-
495
- [`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<[`InMemoryTreeAccessors`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-json-base/docs)\<`TCT`\>\>
496
-
497
- ##### Inherited from
498
-
499
- `FileTree.InMemoryTreeAccessors.create`
500
-
501
- ***
502
-
503
- ### fromDirectoryHandle()
504
-
505
- > `static` **fromDirectoryHandle**\<`TCT`\>(`dirHandle`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`FileSystemAccessTreeAccessors`\<`TCT`\>\>\>
506
-
507
- Creates a new FileSystemAccessTreeAccessors instance from a directory handle.
508
-
509
- #### Type Parameters
510
-
511
- | Type Parameter | Default type |
512
- | ------ | ------ |
513
- | `TCT` *extends* `string` | `string` |
514
-
515
- #### Parameters
516
-
517
- | Parameter | Type | Description |
518
- | ------ | ------ | ------ |
519
- | `dirHandle` | [`FileSystemDirectoryHandle`](../interfaces/FileSystemDirectoryHandle.md) | The FileSystemDirectoryHandle to load files from. |
520
- | `params?` | [`IFileSystemAccessTreeParams`](../interfaces/IFileSystemAccessTreeParams.md)\<`TCT`\> | Optional parameters including autoSync and permission settings. |
521
-
522
- #### Returns
523
-
524
- `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`FileSystemAccessTreeAccessors`\<`TCT`\>\>\>
525
-
526
- Promise resolving to a FileSystemAccessTreeAccessors instance.
527
-
528
- ***
529
-
530
- ### fromFileHandle()
531
-
532
- > `static` **fromFileHandle**\<`TCT`\>(`fileHandle`, `params?`): `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`FileSystemAccessTreeAccessors`\<`TCT`\>\>\>
533
-
534
- Creates a new FileSystemAccessTreeAccessors instance from a single file handle.
535
-
536
- The resulting tree contains exactly one file at `/<filename>`.
537
- `syncToDisk()` writes changes back to the original file via the File System Access API.
538
- New file creation is not supported on this tree (no parent directory handle).
539
-
540
- #### Type Parameters
541
-
542
- | Type Parameter | Default type |
543
- | ------ | ------ |
544
- | `TCT` *extends* `string` | `string` |
545
-
546
- #### Parameters
547
-
548
- | Parameter | Type | Description |
549
- | ------ | ------ | ------ |
550
- | `fileHandle` | [`FileSystemFileHandle`](../interfaces/FileSystemFileHandle.md) | The FileSystemFileHandle to load. |
551
- | `params?` | [`IFileSystemAccessTreeParams`](../interfaces/IFileSystemAccessTreeParams.md)\<`TCT`\> | Optional parameters including autoSync and permission settings. |
552
-
553
- #### Returns
554
-
555
- `Promise`\<[`Result`](https://github.com/ErikFortune/fgv/tree/main/libraries/ts-utils/docs)\<`FileSystemAccessTreeAccessors`\<`TCT`\>\>\>
556
-
557
- Promise resolving to a FileSystemAccessTreeAccessors instance.