Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions docs/api/cozy-client/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -986,6 +986,20 @@ Returns the cozy client from the context

***

### useFetchHomeShortcuts

▸ **useFetchHomeShortcuts**(): `object` | `any`\[]

*Returns*

`object` | `any`\[]

*Defined in*

[packages/cozy-client/src/hooks/useFetchHomeShortcuts.jsx:25](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/hooks/useFetchHomeShortcuts.jsx#L25)

***

### useFetchShortcut

▸ **useFetchShortcut**(`client`, `id`): `Object`
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Conflict options

*Defined in*

[packages/cozy-client/src/models/file.js:553](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L553)
[packages/cozy-client/src/models/file.js:575](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L575)

***

Expand All @@ -26,7 +26,7 @@ Erase / rename

*Defined in*

[packages/cozy-client/src/models/file.js:552](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L552)
[packages/cozy-client/src/models/file.js:574](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L574)

***

Expand All @@ -38,7 +38,7 @@ The file Content-Type

*Defined in*

[packages/cozy-client/src/models/file.js:551](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L551)
[packages/cozy-client/src/models/file.js:573](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L573)

***

Expand All @@ -50,7 +50,7 @@ The dirId to upload the file to

*Defined in*

[packages/cozy-client/src/models/file.js:549](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L549)
[packages/cozy-client/src/models/file.js:571](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L571)

***

Expand All @@ -62,7 +62,7 @@ ID of the shared drive in which the file should be saved

*Defined in*

[packages/cozy-client/src/models/file.js:554](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L554)
[packages/cozy-client/src/models/file.js:576](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L576)

***

Expand All @@ -74,7 +74,7 @@ An object containing the metadata to attach

*Defined in*

[packages/cozy-client/src/models/file.js:550](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L550)
[packages/cozy-client/src/models/file.js:572](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L572)

***

Expand All @@ -86,4 +86,4 @@ The file name to upload

*Defined in*

[packages/cozy-client/src/models/file.js:548](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L548)
[packages/cozy-client/src/models/file.js:570](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L570)
74 changes: 48 additions & 26 deletions docs/api/cozy-client/modules/models.file.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Copies a file to a specified destination.

*Defined in*

[packages/cozy-client/src/models/file.js:671](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L671)
[packages/cozy-client/src/models/file.js:693](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L693)

***

Expand Down Expand Up @@ -78,7 +78,7 @@ that will process the download

*Defined in*

[packages/cozy-client/src/models/file.js:726](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L726)
[packages/cozy-client/src/models/file.js:748](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L748)

***

Expand All @@ -103,7 +103,7 @@ file object with path attribute

*Defined in*

[packages/cozy-client/src/models/file.js:179](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L179)
[packages/cozy-client/src/models/file.js:201](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L201)

***

Expand All @@ -126,7 +126,7 @@ file object with path attribute

*Defined in*

[packages/cozy-client/src/models/file.js:652](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L652)
[packages/cozy-client/src/models/file.js:674](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L674)

***

Expand All @@ -151,7 +151,7 @@ The files found by the rules

*Defined in*

[packages/cozy-client/src/models/file.js:306](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L306)
[packages/cozy-client/src/models/file.js:328](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L328)

***

Expand All @@ -175,7 +175,7 @@ Generate a file name for a revision

*Defined in*

[packages/cozy-client/src/models/file.js:538](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L538)
[packages/cozy-client/src/models/file.js:560](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L560)

***

Expand All @@ -200,7 +200,7 @@ A filename with the right suffix

*Defined in*

[packages/cozy-client/src/models/file.js:508](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L508)
[packages/cozy-client/src/models/file.js:530](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L530)

***

Expand Down Expand Up @@ -249,7 +249,7 @@ The full path of the file in the cozy

*Defined in*

[packages/cozy-client/src/models/file.js:341](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L341)
[packages/cozy-client/src/models/file.js:363](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L363)

***

Expand All @@ -273,7 +273,7 @@ id of the parent folder, if any

*Defined in*

[packages/cozy-client/src/models/file.js:193](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L193)
[packages/cozy-client/src/models/file.js:215](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L215)

***

Expand All @@ -297,7 +297,7 @@ A description of the status

*Defined in*

[packages/cozy-client/src/models/file.js:205](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L205)
[packages/cozy-client/src/models/file.js:227](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L227)

***

Expand All @@ -321,7 +321,7 @@ A doctype

*Defined in*

[packages/cozy-client/src/models/file.js:225](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L225)
[packages/cozy-client/src/models/file.js:247](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L247)

***

Expand All @@ -345,7 +345,29 @@ The mime-type of the target file, or an empty string is the target is not a file

*Defined in*

[packages/cozy-client/src/models/file.js:215](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L215)
[packages/cozy-client/src/models/file.js:237](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L237)

***

### getShortcutImgSrc

▸ **getShortcutImgSrc**(`file`): `string`

*Parameters*

| Name | Type | Description |
| :------ | :------ | :------ |
| `file` | `IOCozyFile` | io.cozy.files document |

*Returns*

`string`

image src that can be used in an <img> tag

*Defined in*

[packages/cozy-client/src/models/file.js:161](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L161)

***

Expand All @@ -365,7 +387,7 @@ The mime-type of the target file, or an empty string is the target is not a file

*Defined in*

[packages/cozy-client/src/models/file.js:630](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L630)
[packages/cozy-client/src/models/file.js:652](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L652)

***

Expand All @@ -389,7 +411,7 @@ Whether the file's metadata attribute exists

*Defined in*

[packages/cozy-client/src/models/file.js:330](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L330)
[packages/cozy-client/src/models/file.js:352](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L352)

***

Expand All @@ -409,7 +431,7 @@ Whether the file's metadata attribute exists

*Defined in*

[packages/cozy-client/src/models/file.js:622](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L622)
[packages/cozy-client/src/models/file.js:644](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L644)

***

Expand Down Expand Up @@ -557,7 +579,7 @@ Whether the folder is client-side encrypted

*Defined in*

[packages/cozy-client/src/models/file.js:641](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L641)
[packages/cozy-client/src/models/file.js:663](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L663)

***

Expand Down Expand Up @@ -622,7 +644,7 @@ Whether the file is supported by Only Office

*Defined in*

[packages/cozy-client/src/models/file.js:614](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L614)
[packages/cozy-client/src/models/file.js:636](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L636)

***

Expand All @@ -646,7 +668,7 @@ Returns whether the file is a shortcut to a sharing

*Defined in*

[packages/cozy-client/src/models/file.js:245](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L245)
[packages/cozy-client/src/models/file.js:267](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L267)

***

Expand All @@ -670,7 +692,7 @@ Returns whether the sharing shortcut is new

*Defined in*

[packages/cozy-client/src/models/file.js:270](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L270)
[packages/cozy-client/src/models/file.js:292](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L292)

***

Expand All @@ -692,7 +714,7 @@ Returns whether the file is a shortcut to a sharing

*Defined in*

[packages/cozy-client/src/models/file.js:235](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L235)
[packages/cozy-client/src/models/file.js:257](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L257)

***

Expand All @@ -714,7 +736,7 @@ Returns whether the sharing shortcut is new

*Defined in*

[packages/cozy-client/src/models/file.js:259](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L259)
[packages/cozy-client/src/models/file.js:281](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L281)

***

Expand Down Expand Up @@ -772,7 +794,7 @@ Manage 4 cases :

*Defined in*

[packages/cozy-client/src/models/file.js:376](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L376)
[packages/cozy-client/src/models/file.js:398](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L398)

***

Expand All @@ -798,7 +820,7 @@ full normalized object

*Defined in*

[packages/cozy-client/src/models/file.js:165](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L165)
[packages/cozy-client/src/models/file.js:187](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L187)

***

Expand Down Expand Up @@ -827,7 +849,7 @@ The overrided file

*Defined in*

[packages/cozy-client/src/models/file.js:468](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L468)
[packages/cozy-client/src/models/file.js:490](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L490)

***

Expand Down Expand Up @@ -855,7 +877,7 @@ The saved file

*Defined in*

[packages/cozy-client/src/models/file.js:287](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L287)
[packages/cozy-client/src/models/file.js:309](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L309)

***

Expand Down Expand Up @@ -939,4 +961,4 @@ If there is a conflict, then we apply the conflict strategy : `erase` or `rename

*Defined in*

[packages/cozy-client/src/models/file.js:572](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L572)
[packages/cozy-client/src/models/file.js:594](https://github.com/cozy/cozy-client/blob/master/packages/cozy-client/src/models/file.js#L594)
1 change: 1 addition & 0 deletions packages/cozy-client/src/hooks/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ export {
} from './useAppLinkWithStoreFallback'
export { default as useCapabilities } from './useCapabilities'
export { default as useFetchShortcut } from './useFetchShortcut'
export { default as useFetchHomeShortcuts } from './useFetchHomeShortcuts'
export { default as useClient } from './useClient'
export { default as useQuery, useQueries } from './useQuery'
export { default as useAppsInMaintenance } from './useAppsInMaintenance'
Expand Down
45 changes: 45 additions & 0 deletions packages/cozy-client/src/hooks/useFetchHomeShortcuts.jsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
import CozyClient, { Q, useQuery } from 'cozy-client'

const fetchPolicy = CozyClient.fetchPolicies.olderThan(30 * 1000)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There were previous discussions about raising up default fetch policy duration, since 30 seconds is very short.
We have for instance 10mins in Drive: https://github.com/cozy/cozy-drive/blob/master/src/queries/index.ts#L29
Should we have a common policy here @Crash-- ?


const buildHomeMagicFolderQuery = () => {
return {
query: Q('io.cozy.files')
.where({ path: '/Settings/Home' })
.indexFields(['path']),
as: 'io.cozy.files/path/Settings/Home',
fetchPolicy: fetchPolicy
}
}

const buildHomeShortcutsQuery = folderId => {
return {
query: Q('io.cozy.files')
.where({ dir_id: folderId, class: 'shortcut' })
.indexFields(['dir_id', 'class']),
as: `io.cozy.files/dir_id/${folderId}/class/shortcut`,
fetchPolicy: fetchPolicy
}
}

const useFetchHomeShortcuts = () => {
const homeMagicFolderQuery = buildHomeMagicFolderQuery()

const magicHomeFolder = useQuery(
homeMagicFolderQuery.query,
homeMagicFolderQuery
)

const magicHomeFolderId = magicHomeFolder?.data?.[0]?._id

const homeShortcutsQuery = buildHomeShortcutsQuery(magicHomeFolderId)

const { data: shortcuts } = useQuery(homeShortcutsQuery.query, {
...homeShortcutsQuery,
enabled: !!magicHomeFolderId
})

return shortcuts
}

export default useFetchHomeShortcuts
Loading
Loading