Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | export type Permissions = {
app?: AppInfo
fs?: FileSystemPermissions
}
export type AppInfo = {
name: string
creator: string
}
export type FileSystemPermissions = {
privatePaths: Array<string>
publicPaths: Array<string>
}
export function appDataPath(app: AppInfo) {
return `private/Apps/${app.creator}/${app.name}`
}
export function paths(permissions: Permissions): string[] {
let list = []
if (permissions.app) list.push('/' + appDataPath(permissions.app))
if (permissions.fs && permissions.fs.privatePaths) list = list.concat(
permissions.fs.privatePaths
.map(p => '/private/' + p.replace(/^\/+/, ""))
.map(p => p.replace(/\/+$/, ""))
)
if (permissions.fs && permissions.fs.publicPaths) list = list.concat(
permissions.fs.publicPaths
.map(p => '/public/' + p.replace(/^\/+/, ""))
.map(p => p.replace(/\/+$/, ""))
)
return list
}
|