* Don't require auth for .ping * Finally introducing loggers * Remove file list caching from disk_space_primitives I don't think this is required anymore with the sync model * Simplification of space primitives and more tests * More reliable online status * Add .zed settings * Remove selfUpdate argument from `writeFile` no longer used - Add `sync` config schema and document sync options - Move sync config handling to client boot logic - Move BootConfig type to ui_types.ts - Remove sync env vars from server - Update documentation for sync and architecture * Improve sync logic and proxy routing for full sync state * Add BoxProxy for late-bound client and improve Lua boot - Add isMobile syscall for editor * Add concurrency to sync process and log indexing duration * Better service worker lifecycle management
530 lines
10 KiB
YAML
530 lines
10 KiB
YAML
name: index
|
|
functions:
|
|
# Public API
|
|
batchSet:
|
|
path: api.ts:batchSet
|
|
indexObjects:
|
|
path: api.ts:indexObjects
|
|
syscall: index.indexObjects
|
|
query:
|
|
path: api.ts:query
|
|
syscall: index.query
|
|
queryLuaObjects:
|
|
path: api.ts:queryLuaObjects
|
|
syscall: index.queryLuaObjects
|
|
getObjectByRef:
|
|
path: api.ts:getObjectByRef
|
|
syscall: index.getObjectByRef
|
|
|
|
extractFrontmatter:
|
|
path: api.ts:extractFrontmatter
|
|
syscall: index.extractFrontmatter
|
|
|
|
patchFrontmatter:
|
|
path: api.ts:patchFrontmatter
|
|
syscall: index.patchFrontmatter
|
|
|
|
# Index management
|
|
clearIndex:
|
|
path: api.ts:clearIndex
|
|
|
|
clearDSIndex:
|
|
path: api.ts:clearFileIndex
|
|
events:
|
|
- file:deleted
|
|
|
|
reindexSpaceCommand:
|
|
path: "./command.ts:reindexCommand"
|
|
command:
|
|
name: "Space: Reindex"
|
|
requireMode: rw
|
|
|
|
processIndexQueue:
|
|
path: ./queue.ts:processIndexQueue
|
|
mqSubscriptions:
|
|
- queue: indexQueue
|
|
batchSize: 3
|
|
autoAck: true
|
|
|
|
reindexSpace:
|
|
path: "./queue.ts:reindexSpace"
|
|
|
|
indexDocument:
|
|
path: "./document.ts:indexDocument"
|
|
events:
|
|
- document:index
|
|
|
|
indexPage:
|
|
path: page.ts:indexPage
|
|
events:
|
|
- page:index
|
|
|
|
indexParagraphs:
|
|
path: "./paragraph.ts:indexParagraphs"
|
|
events:
|
|
- page:index
|
|
|
|
# Backlinks
|
|
indexLinks:
|
|
path: "./page_links.ts:indexLinks"
|
|
events:
|
|
- page:index
|
|
|
|
# Item indexing
|
|
indexItem:
|
|
path: "./item.ts:indexItems"
|
|
events:
|
|
- page:index
|
|
|
|
# Tables
|
|
indexTables:
|
|
path: "table.ts:indexTables"
|
|
events:
|
|
- page:index
|
|
|
|
# Headers
|
|
indexHeaders:
|
|
path: header.ts:indexHeaders
|
|
events:
|
|
- page:index
|
|
headerComplete:
|
|
path: header.ts:headerComplete
|
|
events:
|
|
- editor:complete
|
|
|
|
# Data
|
|
indexData:
|
|
path: data.ts:indexData
|
|
events:
|
|
- page:index
|
|
|
|
# Script
|
|
indexSpaceScript:
|
|
path: script.ts:indexSpaceScript
|
|
events:
|
|
- page:index
|
|
indexSpaceLua:
|
|
path: script.ts:indexSpaceLua
|
|
events:
|
|
- page:index
|
|
|
|
# Style
|
|
indexSpaceStyle:
|
|
path: style.ts:indexSpaceStyle
|
|
events:
|
|
- page:index
|
|
|
|
# Hashtags
|
|
indexTags:
|
|
path: tags.ts:indexTags
|
|
events:
|
|
- page:index
|
|
tagComplete:
|
|
path: tags.ts:tagComplete
|
|
events:
|
|
- editor:complete
|
|
|
|
renamePageCommand:
|
|
path: "./refactor.ts:renamePageCommand"
|
|
command:
|
|
name: "Page: Rename"
|
|
mac: Cmd-Alt-r
|
|
page: ""
|
|
requireMode: rw
|
|
requireEditor: page
|
|
renamePrefixCommand:
|
|
path: "./refactor.ts:renamePrefixCommand"
|
|
command:
|
|
name: "Page: Batch Rename Prefix"
|
|
requireMode: rw
|
|
requireEditor: page
|
|
renamePageLinkCommand:
|
|
path: "./refactor.ts:renamePageLinkCommand"
|
|
command:
|
|
name: "Page: Rename Linked Page"
|
|
mac: Cmd-Ctrl-Alt-r
|
|
key: Ctrl-Shift-Alt-r
|
|
requireMode: rw
|
|
requireEditor: page
|
|
|
|
renameDocumentCommand:
|
|
path: "./refactor.ts:renameDocumentCommand"
|
|
command:
|
|
name: "Document: Rename Document"
|
|
requireMode: rw
|
|
requireEditor: notpage
|
|
|
|
# Refactoring Commands
|
|
extractToPageCommand:
|
|
path: ./refactor.ts:extractToPageCommand
|
|
command:
|
|
name: "Page: Extract"
|
|
requireMode: rw
|
|
requireEditor: page
|
|
|
|
refreshWidgets:
|
|
path: widget.ts:refreshWidgets
|
|
|
|
lintYAML:
|
|
path: lint.ts:lintYAML
|
|
events:
|
|
- editor:lint
|
|
|
|
lintLua:
|
|
path: lint.ts:lintLua
|
|
events:
|
|
- editor:lint
|
|
|
|
config:
|
|
# Schema for the built-in tags indexed by this plug
|
|
schema.tag:
|
|
page:
|
|
type: object
|
|
additionalProperties: true
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
readOnly: true
|
|
tags:
|
|
anyOf:
|
|
- type: array
|
|
items:
|
|
type: string
|
|
- type: string
|
|
itags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
pageDecoration:
|
|
type: object
|
|
properties:
|
|
prefix:
|
|
type: string
|
|
nullable: true
|
|
cssClasses:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
hide:
|
|
type: boolean
|
|
nullable: true
|
|
renderWidgets:
|
|
type: boolean
|
|
nullable: true
|
|
nullable: true
|
|
displayName:
|
|
type: string
|
|
nullable: true
|
|
aliases:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
created:
|
|
type: string
|
|
readOnly: true
|
|
contentType:
|
|
type: string
|
|
readOnly: true
|
|
size:
|
|
type: number
|
|
readOnly: true
|
|
lastModified:
|
|
type: string
|
|
readOnly: true
|
|
perm:
|
|
type: string
|
|
readOnly: true
|
|
enum:
|
|
- ro
|
|
- rw
|
|
lastOpened:
|
|
type: number
|
|
readOnly: true
|
|
nullable: true
|
|
aspiring-page:
|
|
type: object
|
|
additionalProperties: true
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
page:
|
|
type: string
|
|
readOnly: true
|
|
pos:
|
|
type: number
|
|
readOnly: true
|
|
document:
|
|
type: object
|
|
additionalProperties: true
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
readOnly: true
|
|
tags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
created:
|
|
readOnly: true
|
|
type: string
|
|
contentType:
|
|
type: string
|
|
readOnly: true
|
|
size:
|
|
type: number
|
|
readOnly: true
|
|
lastModified:
|
|
type: string
|
|
readOnly: true
|
|
perm:
|
|
type: string
|
|
readOnly: true
|
|
enum:
|
|
- ro
|
|
- rw
|
|
extension:
|
|
readOnly: true
|
|
type: string
|
|
item:
|
|
type: object
|
|
additionalProperties: true
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
readOnly: true
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
page:
|
|
type: string
|
|
readOnly: true
|
|
parent:
|
|
type: string
|
|
readOnly: true
|
|
pos:
|
|
type: number
|
|
readOnly: true
|
|
text:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
readOnly: true
|
|
tags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
readOnly: true
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
page:
|
|
type: string
|
|
readOnly: true
|
|
parent:
|
|
type: string
|
|
readOnly: true
|
|
context:
|
|
type: string
|
|
readOnly: true
|
|
|
|
link:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
page:
|
|
type: string
|
|
toFile:
|
|
type: string
|
|
nullable: true
|
|
toPage:
|
|
type: string
|
|
nullable: true
|
|
snippet:
|
|
type: string
|
|
pos:
|
|
type: number
|
|
alias:
|
|
type: string
|
|
asTemplate:
|
|
type: boolean
|
|
header:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
name:
|
|
type: string
|
|
page:
|
|
type: string
|
|
pos:
|
|
type: number
|
|
level:
|
|
type: string
|
|
paragraph:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
text:
|
|
type: string
|
|
page:
|
|
type: string
|
|
pos:
|
|
type: number
|
|
template:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
tags:
|
|
anyOf:
|
|
- type: array
|
|
items:
|
|
type: string
|
|
- type: string
|
|
itags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
page:
|
|
type: string
|
|
pageName:
|
|
type: string
|
|
description:
|
|
type: string
|
|
pos:
|
|
type: number
|
|
hooks:
|
|
type: object
|
|
frontmatter:
|
|
anyOf:
|
|
- type: object
|
|
- type: string
|
|
table:
|
|
type: object
|
|
properties:
|
|
ref:
|
|
type: string
|
|
readOnly: true
|
|
tag:
|
|
type: string
|
|
tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
itags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
nullable: true
|
|
page:
|
|
type: string
|
|
pos:
|
|
type: number
|