@xrift/world-components 0.44.0 → 0.45.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/contexts/SharedFileContext.d.ts +5 -0
- package/dist/contexts/SharedFileContext.d.ts.map +1 -1
- package/dist/contexts/SharedFileContext.js +3 -0
- package/dist/contexts/SharedFileContext.js.map +1 -1
- package/dist/hooks/useSharedFile.d.ts +8 -3
- package/dist/hooks/useSharedFile.d.ts.map +1 -1
- package/dist/hooks/useSharedFile.js +10 -4
- package/dist/hooks/useSharedFile.js.map +1 -1
- package/package.json +1 -1
|
@@ -52,6 +52,11 @@ export interface SharedFileContextValue {
|
|
|
52
52
|
* ロック中のファイルは更新できない(先にロック解除が必要)
|
|
53
53
|
*/
|
|
54
54
|
updateSharedFile: (fileId: string, updates: UpdateSharedFileParams) => Promise<SharedFileInfo>;
|
|
55
|
+
/**
|
|
56
|
+
* 共有ファイルを削除する
|
|
57
|
+
* ロック中のファイルは削除できない(先にロック解除が必要)
|
|
58
|
+
*/
|
|
59
|
+
deleteSharedFile: (fileId: string) => Promise<void>;
|
|
55
60
|
}
|
|
56
61
|
/**
|
|
57
62
|
* デフォルトの実装(開発環境用)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedFileContext.d.ts","sourceRoot":"","sources":["../../src/contexts/SharedFileContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;IACvC,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,gBAAgB,EAAE,CAChB,IAAI,EAAE,IAAI,EACV,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EACvC,OAAO,CAAC,EAAE,uBAAuB,KAC9B,OAAO,CAAC,cAAc,CAAC,CAAA;IAC5B;;OAEG;IACH,cAAc,EAAE,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC/C;;OAEG;IACH,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;IAC/E;;;OAGG;IACH,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"SharedFileContext.d.ts","sourceRoot":"","sources":["../../src/contexts/SharedFileContext.tsx"],"names":[],"mappings":"AAAA,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAEjE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAA;IACV,QAAQ,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;IACf,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;IACvC,SAAS,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,0CAA0C;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;CACzC;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,gBAAgB,EAAE,CAChB,IAAI,EAAE,IAAI,EACV,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,EACvC,OAAO,CAAC,EAAE,uBAAuB,KAC9B,OAAO,CAAC,cAAc,CAAC,CAAA;IAC5B;;OAEG;IACH,cAAc,EAAE,MAAM,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IAC/C;;OAEG;IACH,iBAAiB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;IAC/E;;;OAGG;IACH,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,KAAK,OAAO,CAAC,cAAc,CAAC,CAAA;IAC9F;;;OAGG;IACH,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CACpD;AAED;;;GAGG;AACH,eAAO,MAAM,qCAAqC,QAAO,sBAkDvD,CAAA;AAEF;;GAEG;AACH,eAAO,MAAM,iBAAiB,wDAAqD,CAAA;AAEnF,UAAU,KAAK;IACb,KAAK,EAAE,sBAAsB,CAAA;IAC7B,QAAQ,EAAE,SAAS,CAAA;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,qBAAqB,KAAK,4CAE5D,CAAA;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,oBAAoB,QAAO,sBAQvC,CAAA"}
|
|
@@ -51,6 +51,9 @@ export const createDefaultSharedFileImplementation = () => ({
|
|
|
51
51
|
createdAt: new Date().toISOString(),
|
|
52
52
|
};
|
|
53
53
|
},
|
|
54
|
+
deleteSharedFile: async (fileId) => {
|
|
55
|
+
console.log('[SharedFile] deleteSharedFile called:', fileId);
|
|
56
|
+
},
|
|
54
57
|
});
|
|
55
58
|
/**
|
|
56
59
|
* 共有ファイルのContext
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SharedFileContext.js","sourceRoot":"","sources":["../../src/contexts/SharedFileContext.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"SharedFileContext.js","sourceRoot":"","sources":["../../src/contexts/SharedFileContext.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { type SharedFileContextValue } from '../contexts/SharedFileContext';
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* 共有ファイルのアップロード・一覧取得・ロック操作・情報更新・削除を行うhook
|
|
4
4
|
* ワールド作成者が3D空間内から共有ファイルを操作するために使用
|
|
5
5
|
*
|
|
6
6
|
* @example
|
|
7
|
-
* const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile } = useSharedFile()
|
|
7
|
+
* const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile, deleteSharedFile } = useSharedFile()
|
|
8
8
|
*
|
|
9
9
|
* const handleUpload = async (file: File) => {
|
|
10
10
|
* // アップロード時に説明文・メタデータを付与できる
|
|
@@ -21,12 +21,17 @@ import { type SharedFileContextValue } from '../contexts/SharedFileContext';
|
|
|
21
21
|
* // 説明文・メタデータの更新(null でクリア)
|
|
22
22
|
* await updateSharedFile(fileId, { description: '展示品B', metadata: null })
|
|
23
23
|
*
|
|
24
|
-
*
|
|
24
|
+
* // 削除(ロック中は先に解除が必要)
|
|
25
|
+
* await setSharedFileLock(fileId, false)
|
|
26
|
+
* await deleteSharedFile(fileId)
|
|
27
|
+
*
|
|
28
|
+
* @returns {{ uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile, deleteSharedFile }}
|
|
25
29
|
*/
|
|
26
30
|
export declare const useSharedFile: () => {
|
|
27
31
|
uploadSharedFile: SharedFileContextValue["uploadSharedFile"];
|
|
28
32
|
getSharedFiles: SharedFileContextValue["getSharedFiles"];
|
|
29
33
|
setSharedFileLock: SharedFileContextValue["setSharedFileLock"];
|
|
30
34
|
updateSharedFile: SharedFileContextValue["updateSharedFile"];
|
|
35
|
+
deleteSharedFile: SharedFileContextValue["deleteSharedFile"];
|
|
31
36
|
};
|
|
32
37
|
//# sourceMappingURL=useSharedFile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSharedFile.d.ts","sourceRoot":"","sources":["../../src/hooks/useSharedFile.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,sBAAsB,EAI5B,MAAM,+BAA+B,CAAA;AAEtC
|
|
1
|
+
{"version":3,"file":"useSharedFile.d.ts","sourceRoot":"","sources":["../../src/hooks/useSharedFile.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,sBAAsB,EAI5B,MAAM,+BAA+B,CAAA;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,aAAa,QAAO;IAC/B,gBAAgB,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;IAC5D,cAAc,EAAE,sBAAsB,CAAC,gBAAgB,CAAC,CAAA;IACxD,iBAAiB,EAAE,sBAAsB,CAAC,mBAAmB,CAAC,CAAA;IAC9D,gBAAgB,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;IAC5D,gBAAgB,EAAE,sBAAsB,CAAC,kBAAkB,CAAC,CAAA;CAmC7D,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { useCallback } from 'react';
|
|
2
2
|
import { useSharedFileContext, } from '../contexts/SharedFileContext';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
4
|
+
* 共有ファイルのアップロード・一覧取得・ロック操作・情報更新・削除を行うhook
|
|
5
5
|
* ワールド作成者が3D空間内から共有ファイルを操作するために使用
|
|
6
6
|
*
|
|
7
7
|
* @example
|
|
8
|
-
* const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile } = useSharedFile()
|
|
8
|
+
* const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile, deleteSharedFile } = useSharedFile()
|
|
9
9
|
*
|
|
10
10
|
* const handleUpload = async (file: File) => {
|
|
11
11
|
* // アップロード時に説明文・メタデータを付与できる
|
|
@@ -22,19 +22,25 @@ import { useSharedFileContext, } from '../contexts/SharedFileContext';
|
|
|
22
22
|
* // 説明文・メタデータの更新(null でクリア)
|
|
23
23
|
* await updateSharedFile(fileId, { description: '展示品B', metadata: null })
|
|
24
24
|
*
|
|
25
|
-
*
|
|
25
|
+
* // 削除(ロック中は先に解除が必要)
|
|
26
|
+
* await setSharedFileLock(fileId, false)
|
|
27
|
+
* await deleteSharedFile(fileId)
|
|
28
|
+
*
|
|
29
|
+
* @returns {{ uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile, deleteSharedFile }}
|
|
26
30
|
*/
|
|
27
31
|
export const useSharedFile = () => {
|
|
28
|
-
const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile } = useSharedFileContext();
|
|
32
|
+
const { uploadSharedFile, getSharedFiles, setSharedFileLock, updateSharedFile, deleteSharedFile } = useSharedFileContext();
|
|
29
33
|
const stableUploadSharedFile = useCallback((file, onProgress, options) => uploadSharedFile(file, onProgress, options), [uploadSharedFile]);
|
|
30
34
|
const stableGetSharedFiles = useCallback(() => getSharedFiles(), [getSharedFiles]);
|
|
31
35
|
const stableSetSharedFileLock = useCallback((fileId, locked) => setSharedFileLock(fileId, locked), [setSharedFileLock]);
|
|
32
36
|
const stableUpdateSharedFile = useCallback((fileId, updates) => updateSharedFile(fileId, updates), [updateSharedFile]);
|
|
37
|
+
const stableDeleteSharedFile = useCallback((fileId) => deleteSharedFile(fileId), [deleteSharedFile]);
|
|
33
38
|
return {
|
|
34
39
|
uploadSharedFile: stableUploadSharedFile,
|
|
35
40
|
getSharedFiles: stableGetSharedFiles,
|
|
36
41
|
setSharedFileLock: stableSetSharedFileLock,
|
|
37
42
|
updateSharedFile: stableUpdateSharedFile,
|
|
43
|
+
deleteSharedFile: stableDeleteSharedFile,
|
|
38
44
|
};
|
|
39
45
|
};
|
|
40
46
|
//# sourceMappingURL=useSharedFile.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useSharedFile.js","sourceRoot":"","sources":["../../src/hooks/useSharedFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAIL,oBAAoB,GACrB,MAAM,+BAA+B,CAAA;AAEtC
|
|
1
|
+
{"version":3,"file":"useSharedFile.js","sourceRoot":"","sources":["../../src/hooks/useSharedFile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAA;AACnC,OAAO,EAIL,oBAAoB,GACrB,MAAM,+BAA+B,CAAA;AAEtC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,GAM3B,EAAE;IACF,MAAM,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAC/F,oBAAoB,EAAE,CAAA;IAExB,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,IAAU,EAAE,UAAuC,EAAE,OAAiC,EAAE,EAAE,CACzF,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,OAAO,CAAC,EAC7C,CAAC,gBAAgB,CAAC,CACnB,CAAA;IAED,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,CAAC,CAAA;IAElF,MAAM,uBAAuB,GAAG,WAAW,CACzC,CAAC,MAAc,EAAE,MAAe,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,MAAM,CAAC,EACtE,CAAC,iBAAiB,CAAC,CACpB,CAAA;IAED,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,MAAc,EAAE,OAA+B,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,EACtF,CAAC,gBAAgB,CAAC,CACnB,CAAA;IAED,MAAM,sBAAsB,GAAG,WAAW,CACxC,CAAC,MAAc,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAC5C,CAAC,gBAAgB,CAAC,CACnB,CAAA;IAED,OAAO;QACL,gBAAgB,EAAE,sBAAsB;QACxC,cAAc,EAAE,oBAAoB;QACpC,iBAAiB,EAAE,uBAAuB;QAC1C,gBAAgB,EAAE,sBAAsB;QACxC,gBAAgB,EAAE,sBAAsB;KACzC,CAAA;AACH,CAAC,CAAA"}
|