add optics for folder files path retrieval
This commit is contained in:
parent
1c6b9680f9
commit
15b51a56a1
@ -10,6 +10,7 @@ import { Document, File, OfficeFolder } from "le-coffre-resources/dist/Notary";
|
|||||||
export const folderDocumentsLens = Optics.Lens.fromNullableProp<OfficeFolder>()("documents", []);
|
export const folderDocumentsLens = Optics.Lens.fromNullableProp<OfficeFolder>()("documents", []);
|
||||||
export const documentFilesLens = Optics.Lens.fromNullableProp<Document>()("files", []);
|
export const documentFilesLens = Optics.Lens.fromNullableProp<Document>()("files", []);
|
||||||
export const fileHashLens = Optics.Lens.fromProp<File>()("hash");
|
export const fileHashLens = Optics.Lens.fromProp<File>()("hash");
|
||||||
|
export const filePathLens = Optics.Lens.fromProp<File>()("file_path");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Traversals
|
* Traversals
|
||||||
@ -17,13 +18,16 @@ export const fileHashLens = Optics.Lens.fromProp<File>()("hash");
|
|||||||
export const documentsTraversal = Optics.fromTraversable(Array.Traversable)<Document>();
|
export const documentsTraversal = Optics.fromTraversable(Array.Traversable)<Document>();
|
||||||
export const filesTraversal = Optics.fromTraversable(Array.Traversable)<File>();
|
export const filesTraversal = Optics.fromTraversable(Array.Traversable)<File>();
|
||||||
|
|
||||||
export const folderHashesTraversal = folderDocumentsLens
|
export const folderFilesTraversal = folderDocumentsLens
|
||||||
.composeTraversal(documentsTraversal)
|
.composeTraversal(documentsTraversal)
|
||||||
.composeLens(documentFilesLens)
|
.composeLens(documentFilesLens)
|
||||||
.composeTraversal(filesTraversal)
|
.composeTraversal(filesTraversal);
|
||||||
.composeLens(fileHashLens);
|
|
||||||
|
export const folderHashesTraversal = folderFilesTraversal.composeLens(fileHashLens);
|
||||||
|
export const folderFilesPathTraversal = folderFilesTraversal.composeLens(filePathLens);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Getters
|
* Getters
|
||||||
*/
|
*/
|
||||||
export const getFolderHashes = (folder: OfficeFolder) => Traversal.getAll(folder)(folderHashesTraversal);
|
export const getFolderHashes = (folder: OfficeFolder) => Traversal.getAll(folder)(folderHashesTraversal);
|
||||||
|
export const getFolderFilesPath = (folder: OfficeFolder) => Traversal.getAll(folder)(folderFilesPathTraversal);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user