browser-git-ops 0.0.0 → 0.0.2

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 (36) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +145 -146
  3. package/dist/git/githubAdapter.d.ts.map +1 -1
  4. package/dist/git/gitlabAdapter.d.ts.map +1 -1
  5. package/dist/index.d.ts +2 -0
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1167 -13
  8. package/dist/index.js.map +7 -0
  9. package/dist/index.mjs +1143 -0
  10. package/dist/index.mjs.map +7 -0
  11. package/dist/virtualfs/indexedDbStorage.d.ts +62 -0
  12. package/dist/virtualfs/indexedDbStorage.d.ts.map +1 -0
  13. package/dist/virtualfs/opfsStorage.d.ts +66 -0
  14. package/dist/virtualfs/opfsStorage.d.ts.map +1 -0
  15. package/dist/virtualfs/storageBackend.d.ts +44 -0
  16. package/dist/virtualfs/storageBackend.d.ts.map +1 -0
  17. package/dist/virtualfs/virtualfs.d.ts +8 -7
  18. package/dist/virtualfs/virtualfs.d.ts.map +1 -1
  19. package/package.json +60 -47
  20. package/dist/git/adapter.js +0 -2
  21. package/dist/git/githubAdapter.js +0 -179
  22. package/dist/git/gitlabAdapter.js +0 -182
  23. package/dist/test/e2e/github.spec.d.ts +0 -2
  24. package/dist/test/e2e/github.spec.d.ts.map +0 -1
  25. package/dist/test/e2e/github.spec.js +0 -47
  26. package/dist/test/e2e/gitlab.spec.d.ts +0 -2
  27. package/dist/test/e2e/gitlab.spec.d.ts.map +0 -1
  28. package/dist/test/e2e/gitlab.spec.js +0 -34
  29. package/dist/test/e2e/virtualfs.spec.d.ts +0 -2
  30. package/dist/test/e2e/virtualfs.spec.d.ts.map +0 -1
  31. package/dist/test/e2e/virtualfs.spec.js +0 -409
  32. package/dist/virtualfs/persistence.d.ts +0 -149
  33. package/dist/virtualfs/persistence.d.ts.map +0 -1
  34. package/dist/virtualfs/persistence.js +0 -294
  35. package/dist/virtualfs/types.js +0 -2
  36. package/dist/virtualfs/virtualfs.js +0 -496
package/LICENSE CHANGED
@@ -1,21 +1,21 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 nojaja
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 nojaja
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,146 +1,145 @@
1
- # browser-git-ops
2
-
3
- **目的**: ブラウザネイティブ環境(OPFS + Github/Gitlab APIs)で動作する軽量な Git 操作ライブラリを提供します。VirtualFS によるローカル差分生成と、GitHub/GitLab 向けのアダプタを通じたリモート操作を抽象化します。
4
-
5
- **主な特徴**
6
- - **仮想ファイルシステム (VirtualFS)**: ローカルワークスペースとベーススナップショットを管理し、変更セット(create/update/delete)を生成します。
7
- - **Git アダプタ抽象**: `GitAdapter` インターフェースに準拠するアダプタで GitHub/GitLab API を操作できます(サンプル実装あり)。
8
- - **Idempotent push**: commitKey による冪等処理サポート。
9
- - **衝突検知とマージ補助**: リモート差分取り込み時にローカルの未コミット変更を検出して conflicts を報告します。
10
-
11
- **注意(⚠️)**: 実装はユーティリティ/ライブラリ向けで、環境やアクセストークンの管理、エラーハンドリング方針は利用側で制御してください。
12
-
13
- **プロジェクト構成(抜粋)**
14
- - **src/virtualfs/virtualfs.ts**: VirtualFS 本体(初期化、read/write、push/pull、差分生成) - [src/virtualfs/virtualfs.ts](src/virtualfs/virtualfs.ts)
15
- - **src/virtualfs/persistence.ts**: ストレージバックエンドの抽象と Node 用実装 - [src/virtualfs/persistence.ts](src/virtualfs/persistence.ts)
16
- - **src/git/adapter.ts**: `GitAdapter` インターフェース定義 - [src/git/adapter.ts](src/git/adapter.ts)
17
- - **src/git/githubAdapter.ts**: GitHub 用アダプタ(blob/tree/commit フロー、再試行ロジック) - [src/git/githubAdapter.ts](src/git/githubAdapter.ts)
18
- - **test/**: ユニット/E2E テスト群(Jest / Playwright) - [test](test)
19
-
20
- **技術スタック**
21
- - TypeScript 5.x
22
- - Node.js (ESM, `type: "module"`)
23
- - テスト: Jest(unit) / Playwright(E2E)
24
- - ビルド: `tsc`
25
-
26
- --------------------------------------------------
27
- **クイックスタート(開発用)**
28
-
29
- 1. 依存インストール
30
-
31
- ```bash
32
- npm ci
33
- ```
34
-
35
- 2. ユニットテスト実行
36
-
37
- ```bash
38
- npm run test
39
- ```
40
-
41
- 3. E2E テスト(Playwright)
42
-
43
- ```bash
44
- npm run test:e2e
45
- ```
46
-
47
- 4. ビルド
48
-
49
- ```bash
50
- npm run build
51
- ```
52
-
53
- --------------------------------------------------
54
- **ライブラリ利用ガイド(Library Usage)**
55
-
56
- 下記はライブラリの代表的な使い方(TypeScript)です。詳しい実装は各ファイルを参照してください。
57
-
58
- 例: `VirtualFS` を初期化してローカル編集を push する
59
-
60
- ```ts
61
- import VirtualFS from './src/virtualfs/virtualfs'
62
- import GitHubAdapter from './src/git/githubAdapter'
63
-
64
- async function example() {
65
- const vfs = new VirtualFS({ storageDir: '.apigit' })
66
- await vfs.init()
67
-
68
- // ワークスペース編集
69
- await vfs.writeWorkspace('foo.txt', 'hello')
70
-
71
- // 変更セット取得
72
- const changes = await vfs.getChangeSet()
73
-
74
- // GitHub アダプタを使って push
75
- const gh = new GitHubAdapter({ owner: 'ORG', repo: 'REPO', token: process.env.GH_TOKEN })
76
- const res = await vfs.push({ parentSha: vfs.getIndex().head, message: 'update', changes }, gh as any)
77
- console.log('commitSha', res.commitSha)
78
- }
79
- ```
80
-
81
- API の概略(主要メソッド)
82
- - `new VirtualFS(options?)` - オプション: `{ storageDir?: string, backend?: StorageBackend }`
83
- - `init()` - バックエンド初期化と index 読み込み
84
- - `writeWorkspace(filepath, content)` - ワークスペースにファイルを書き込む
85
- - `deleteWorkspace(filepath)` - ワークスペース上のファイルを削除(トゥームストーン管理)
86
- - `renameWorkspace(from, to)` - rename(内部では delete + create)
87
- - `readWorkspace(filepath)` - ワークスペース/ベースから内容を読み出す
88
- - `applyBaseSnapshot(snapshot, headSha)` - リモートスナップショットを適用
89
- - `getIndex()` - 現在の index を返す
90
- - `listPaths()` - 登録パス一覧
91
- - `getChangeSet()` - create/update/delete の配列を生成
92
- - `pull(remoteHead, baseSnapshot)` - リモート差分取り込み(conflicts を返す)
93
- - `push(input, adapter?)` - 変更をコミットし(adapter があれば)リモートへ反映
94
-
95
- GitAdapter インターフェース(`src/git/adapter.ts`)
96
- - `createBlobs(changes, concurrency?)` -> Promise<Record<string,string>>
97
- - `createTree(changes, baseTreeSha?)` -> Promise<string>
98
- - `createCommit(message, parentSha, treeSha)` -> Promise<string>
99
- - `updateRef(ref, commitSha, force?)` -> Promise<void>
100
-
101
- 実装済みアダプタの注意点:
102
- - `GitHubAdapter` `blob/tree/commit` フローを実装し、HTTP 再試行ロジックを内蔵しています(5xx, 429 のリトライ等)。実装は [src/git/githubAdapter.ts](src/git/githubAdapter.ts) を参照してください。
103
- - GitLab 用実装はリポジトリ内に存在しますが、環境差異により API の振る舞いが異なるため本番運用前に検証してください。⚠️
104
-
105
- --------------------------------------------------
106
- **開発セットアップ**
107
- - Node: 任意の recent Node.js(ESM サポート済み)
108
- - 実行手順
109
-
110
- ```bash
111
- git clone <repo>
112
- cd APIGitWorkspace01
113
- npm ci
114
- ```
115
-
116
- - コマンド一覧
117
- - `npm run test` : ユニットテスト(Jest)
118
- - `npm run test:e2e` : Playwright E2E
119
- - `npm run lint` : ESLint
120
- - `npm run build` : TypeScript ビルド
121
-
122
- テスト関連の注意:
123
- - Jest は ESM を扱うため `node --experimental-vm-modules` を使用するスクリプトが package.json に設定されています。
124
-
125
- --------------------------------------------------
126
- **現在のステータス**
127
- - 実装済み: `VirtualFS` のコア機能(差分生成、push/pull シミュレーション、index 管理)、`GitHubAdapter` の主要な API 呼び出し。
128
- - テスト: unit テストと一部の E2E テストが含まれています(`test/` 配下)。
129
- - 未確定/要検証: 外部サービス(GitLab)の細かい API 挙動、production 用のエラー・認可ポリシー。
130
-
131
- --------------------------------------------------
132
- **ライセンスとメタデータ**
133
- - package name: `browser-git-ops`
134
- - version: `0.0.0`
135
- - module type: CommonJS (`type: commonjs`)
136
- - License: MIT License
137
-
138
- --------------------------------------------------
139
- 追加で欲しいもの
140
- - サンプルユースケースを示す小さなサンプルリポジトリまたは `examples/` ディレクトリ
141
-
142
-
143
- --------------------------------------------------
144
- 貢献・問い合わせ
145
- - PR/Issue を歓迎します。まず issue を立て、簡単な実装提案(変更点の概要)を添えてください。
146
-
1
+ # browser-git-ops
2
+
3
+ 軽量なブラウザ向け Git 操作用ライブラリ(VirtualFS + GitHub/GitLab アダプタ)。
4
+ ブラウザの永続化レイヤは OPFS と IndexedDB を個別のバックエンド実装として提供し、VirtualFS が抽象化して利用します。
5
+
6
+ ---
7
+
8
+ **主要ポイント**
9
+ - `VirtualFS`:ローカルワークスペースとベーススナップショットを管理し、create/update/delete の変更セットを生成します。
10
+ - ストレージ分離:`OpfsStorage`(OPFS 対応)と `IndexedDbStorage`(IndexedDB 対応)を個別実装として提供。
11
+ - `GitHubAdapter` / `GitLabAdapter`:各プラットフォーム向けのアダプタ実装(HTTP 再試行や blob/tree/commit フローを含む)。
12
+
13
+ ---
14
+
15
+ **変更履歴(最近の重要な変更点)**
16
+ - ブラウザ永続化を `BrowserStorage` から分離し、`OpfsStorage` `IndexedDbStorage` を新規追加しました。
17
+ - `VirtualFS` の既定バックエンドを `OpfsStorage` に切替え、従来の `canUseOpfs`(インスタンス委譲)は廃止しました。
18
+ - ルートエクスポートに `IndexedDbStorage` / `OpfsStorage` を追加し、examples と E2E ヘルパーを OPFS 検出の新 API に合わせて更新しました。
19
+ - 単体テストを複数更新・追加し、OPFS / IndexedDB の分岐やトランザクションエラー経路のカバレッジを強化しました。
20
+
21
+ ---
22
+
23
+ **公開 API(ライブラリエントリ)**
24
+ ライブラリはバンドル/パッケージとして次をエクスポートします(`src/index.ts` を参照):
25
+
26
+ - `VirtualFS` (default exportと命名エクスポート)
27
+ - `OpfsStorage` — OPFS(origin private file system)用バックエンド
28
+ - `IndexedDbStorage` — IndexedDB 用バックエンド
29
+ - `GitHubAdapter`, `GitLabAdapter` — 各プラットフォーム向けアダプタ
30
+
31
+ 例:基本的な利用
32
+
33
+ ```ts
34
+ import { VirtualFS, OpfsStorage, GitHubAdapter } from 'browser-git-ops'
35
+
36
+ async function example() {
37
+ const vfs = new VirtualFS({ backend: new OpfsStorage() })
38
+ await vfs.init()
39
+
40
+ await vfs.writeWorkspace('README.md', 'hello world')
41
+ const changes = await vfs.getChangeSet()
42
+
43
+ const gh = new GitHubAdapter({ owner: 'ORG', repo: 'REPO', token: process.env.GH_TOKEN })
44
+ // push の呼び出しは VirtualFS の API に依存(詳細は src/virtualfs/virtualfs.ts)
45
+ }
46
+ ```
47
+
48
+ ---
49
+
50
+ ## プロジェクト構成(抜粋)
51
+
52
+ - `src/` - ソースコード
53
+ - `virtualfs/virtualfs.ts` - `VirtualFS` 本体
54
+ - `virtualfs/opfsStorage.ts` - OPFS バックエンド
55
+ - `virtualfs/indexedDbStorage.ts` - IndexedDB バックエンド
56
+ - `git/githubAdapter.ts` - GitHub 向けアダプタ
57
+ - `git/gitlabAdapter.ts` - GitLab 向けアダプタ
58
+ - `examples/` - ブラウザ実行用のサンプル UI
59
+ - `test/` - Jest(unit)および Playwright(e2e)テスト
60
+
61
+ (詳細はソース内のファイル参照を推奨)
62
+
63
+ ---
64
+
65
+ ## 技術スタック
66
+
67
+ - TypeScript
68
+ - ビルド: `esbuild`(ブラウザ向けバンドル) + `tsc`(型定義出力)
69
+ - テスト: Jest(unit) / Playwright(e2e)
70
+
71
+ ---
72
+
73
+ ## 特記事項 / 現在のステータス
74
+
75
+ - 実装済み
76
+ - `VirtualFS` のコア機能(差分生成・index 管理・ローカル編集)
77
+ - `OpfsStorage` と `IndexedDbStorage` の永続化 API
78
+ - `GitHubAdapter` の主要な push フロー
79
+ - テスト
80
+ - unit テストは多数あり、OPFS/IndexedDB 分岐やトランザクションエラー経路をカバー
81
+ - E2E は Playwright ベースのサンプル UI を含む
82
+ - 要検証 / ⚠️ 注意
83
+ - GitLab API 実装は環境差異を考慮した追加検証が必要です。
84
+ - OPFS の利用可否はブラウザ実装に依存します(polyfill でテストは行っていますが、実ブラウザでの動作確認を推奨)。
85
+
86
+ ---
87
+
88
+ ## セットアップ(開発者向け)
89
+
90
+ 1. リポジトリをクローン
91
+
92
+ ```bash
93
+ git clone https://github.com/nojaja/browser-git-ops.git
94
+ cd APIGitWorkspace01
95
+ npm ci
96
+ ```
97
+
98
+ 2. 開発コマンド
99
+
100
+ ```bash
101
+ npm run test # unit テスト (Jest)
102
+ npm run test:e2e # Playwright E2E
103
+ npm run lint # ESLint
104
+ npm run build # 型定義 + ブラウザバンドル出力 (dist/)
105
+ ```
106
+
107
+ 実行時のヒント: テストスクリプトは ESM を扱うため、package.json の `test` スクリプトは `node --experimental-vm-modules` を付与して起動します。
108
+
109
+ ---
110
+
111
+ ## ライブラリ利用ガイド(API 概略)
112
+
113
+ - `new VirtualFS(options?)` — オプション: `{ storageDir?: string, backend?: StorageBackend }`。
114
+ - `init()` — バックエンド初期化・index 読み込み。
115
+ - `writeWorkspace(path, content)` / `deleteWorkspace(path)` / `renameWorkspace(from,to)` — ローカル編集操作。
116
+ - `getChangeSet()` — create/update/delete の変更配列を取得。
117
+ - `applyBaseSnapshot(snapshot, headSha)` リモートスナップショット適用(conflicts を返す)。
118
+
119
+ 詳細は `src/virtualfs/virtualfs.ts` JSDoc コメントを参照してください。
120
+
121
+ ---
122
+
123
+ ## テストと CI
124
+
125
+ - ローカルでの unit テスト実行: `npm run test`
126
+ - E2E 実行前に `npm run build` を実行する必要があります(`test:e2e` の `pretest:e2e` を参照)。
127
+
128
+ ---
129
+
130
+ ## 貢献
131
+
132
+ - Issue / PR を歓迎します。まず Issue にて目的・設計方針を共有してください。
133
+ - コーディング規約: TypeScript + ESLint。PR ではテスト追加を推奨します。
134
+
135
+ ---
136
+
137
+ ## ライセンス
138
+
139
+ - MIT — 詳細は `LICENSE` ファイル参照
140
+
141
+ ---
142
+
143
+ ## 連絡先
144
+
145
+ - 作者: nojaja https://github.com/nojaja
@@ -1 +1 @@
1
- {"version":3,"file":"githubAdapter.d.ts","sourceRoot":"","sources":["../../src/git/githubAdapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtC,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;CAAG;AAE5C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAU/C;;;;;;;GAOG;AAEH,iBAAe,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,SAAI,EAAE,SAAS,SAAM,qBAcjG;AAED,iBAAS,cAAc,CAAC,MAAM,EAAE,MAAM,WAErC;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAI9E;AAED,iBAAe,wBAAwB,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,qBAQlF;AAED;;;;;GAKG;AAEH,iBAAS,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,SAAI,gBAc3F;AAED,qBAAa,aAAc,YAAW,UAAU;IAMlC,OAAO,CAAC,IAAI;IALxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,eAAe,CAAqF;IAE5G,OAAO,CAAC,SAAS,CAAiC;gBAC9B,IAAI,EAAE,SAAS;IAU7B,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,WAAW,SAAI;IAqB3C,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM;IAkB/C,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAQhE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,UAAQ;CAQ9D;AAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,CAAA;AAC5G,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"githubAdapter.d.ts","sourceRoot":"","sources":["../../src/git/githubAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtC,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED;;GAEG;AACH,qBAAa,cAAe,SAAQ,KAAK;CAAG;AAE5C;;GAEG;AACH,qBAAa,iBAAkB,SAAQ,KAAK;CAAG;AAU/C;;;;;;;GAOG;AAEH,iBAAe,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,SAAI,EAAE,SAAS,SAAM,qBAcjG;AAED,iBAAS,cAAc,CAAC,MAAM,EAAE,MAAM,WAErC;AAED,iBAAS,mBAAmB,CAAC,GAAG,EAAE,QAAQ,GAAG,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,UAI9E;AAED,iBAAe,wBAAwB,CAAC,GAAG,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,qBAQlF;AAED;;;;;GAKG;AAEH,iBAAS,kBAAkB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,WAAW,SAAI,gBAc3F;AAED,qBAAa,aAAc,YAAW,UAAU;IAMlC,OAAO,CAAC,IAAI;IALxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,eAAe,CAAqF;IAE5G,OAAO,CAAC,SAAS,CAAiC;gBAC9B,IAAI,EAAE,SAAS;IAU7B,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,WAAW,SAAI;IAwB3C,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE,WAAW,CAAC,EAAE,MAAM;IAkB/C,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;IAQhE,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,UAAQ;CAQ9D;AAED,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,kBAAkB,EAAE,CAAA;AAC5G,eAAe,aAAa,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"gitlabAdapter.d.ts","sourceRoot":"","sources":["../../src/git/gitlabAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtC,KAAK,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjE;;GAEG;AACH,qBAAa,aAAc,YAAW,UAAU;IAWlC,OAAO,CAAC,IAAI;IAVxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA8E;IACpG,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,WAAW,CAAM;IAEzB;;;OAGG;gBACiB,IAAI,EAAE,MAAM;IAMhC;;;;OAIG;IACH,OAAO,CAAC,KAAK;IAIb;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE;IAOhC;;;;;OAKG;IACG,UAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAWvD;;;;;;OAMG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAgBvE;;;;;;OAMG;IACG,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgC/H;;;;;;OAMG;YACW,cAAc;IAkB5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAMjB;;;;;;OAMG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,UAAQ;CAGjE;AAED,eAAe,aAAa,CAAA"}
1
+ {"version":3,"file":"gitlabAdapter.d.ts","sourceRoot":"","sources":["../../src/git/gitlabAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAGtC,KAAK,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjE;;GAEG;AACH,qBAAa,aAAc,YAAW,UAAU;IAWlC,OAAO,CAAC,IAAI;IAVxB,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAwB;IACvC,OAAO,CAAC,cAAc,CAA8E;IACpG,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,WAAW,CAAM;IAEzB;;;OAGG;gBACiB,IAAI,EAAE,MAAM;IAMhC;;;;OAIG;YACW,KAAK;IAOnB;;;;OAIG;IACG,WAAW,CAAC,OAAO,EAAE,GAAG,EAAE;IAOhC;;;;;OAKG;IACG,UAAU,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM;IAWvD;;;;;;OAMG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;IAgBvE;;;;;;OAMG;IACG,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAgC/H;;;;;;OAMG;YACW,cAAc;IAkB5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAIzB;;;;OAIG;IACH,OAAO,CAAC,SAAS;IAMjB;;;;;;OAMG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,UAAQ;CAGjE;AAED,eAAe,aAAa,CAAA"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,6 @@
1
1
  export { default as VirtualFS } from './virtualfs/virtualfs';
2
+ export { default as IndexedDbStorage } from './virtualfs/indexedDbStorage';
3
+ export { default as OpfsStorage } from './virtualfs/opfsStorage';
2
4
  export { default as GitHubAdapter } from './git/githubAdapter';
3
5
  export { default as GitLabAdapter } from './git/gitlabAdapter';
4
6
  export { default } from './virtualfs/virtualfs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,SAAS,EAAE,MAAM,uBAAuB,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC1E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAChE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,qBAAqB,CAAA;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAA"}