Merge branch 'main' of github.com:silverbulletmd/silverbullet
This commit is contained in:
commit
982c3c2b1a
@ -180,7 +180,9 @@ export class Space extends EventEmitter<SpaceEvents> {
|
||||
async fetchAttachmentList(): Promise<AttachmentMeta[]> {
|
||||
return (await this.space.fetchFileList()).filter(
|
||||
(fileMeta) =>
|
||||
!fileMeta.name.endsWith(".md") && !fileMeta.name.endsWith(".plug.json"),
|
||||
!fileMeta.name.endsWith(".md") &&
|
||||
!fileMeta.name.endsWith(".plug.json") &&
|
||||
fileMeta.name !== "data.db",
|
||||
);
|
||||
}
|
||||
|
||||
|
7
plugs/core/attachment.ts
Normal file
7
plugs/core/attachment.ts
Normal file
@ -0,0 +1,7 @@
|
||||
import { QueryProviderEvent } from "$sb/app_event.ts";
|
||||
import { applyQuery } from "$sb/lib/query.ts";
|
||||
import { space } from "$sb/silverbullet-syscall/mod.ts";
|
||||
|
||||
export async function attachmentQueryProvider({ query }: QueryProviderEvent) {
|
||||
return applyQuery(query, await space.listAttachments());
|
||||
}
|
@ -66,6 +66,12 @@ functions:
|
||||
command:
|
||||
name: "Editor: Toggle Read Only Mode"
|
||||
|
||||
# Attachments
|
||||
attachmentQueryProvider:
|
||||
path: ./attachment.ts:attachmentQueryProvider
|
||||
events:
|
||||
- query:attachment
|
||||
|
||||
# Backlinks
|
||||
indexLinks:
|
||||
path: "./page.ts:indexLinks"
|
||||
|
@ -54,6 +54,7 @@ Start writing `<!— #query` or simply use `/query` slash command, it will show
|
||||
#### 4.1. Available data sources
|
||||
|
||||
- `page`: list of all pages
|
||||
- `attachment`: list of all attachments
|
||||
- `task`: list of all tasks created with `[ ]`
|
||||
- `full-text`: use it with `where phrase = "SOME_TEXT"`. List of all pages where `SOME_TEXT` is mentioned
|
||||
- `item`: list of ordered and unordered items such as bulleted lists
|
||||
@ -162,7 +163,7 @@ For the sake of simplicity, we will use the `page` data source and limit the res
|
||||
|
||||
**Goal:** We would like to get all plug pages sorted by last modified time.
|
||||
|
||||
**Result:** Okay, this is what we wanted but there is also information such as `perm`, `type` and `lastModified` that we don't need.
|
||||
**Result:** Okay, this is what we wanted but there is also information such as `perm`, `type` and `lastModified` that we don't need.
|
||||
|
||||
<!-- #query page where type = "plug" order by lastModified desc limit 5 -->
|
||||
|name |lastModified |contentType |size|perm|type|repo |uri |author |share-support|
|
||||
@ -199,10 +200,10 @@ from a visual perspective.
|
||||
**Result:** Here you go. This is the result we would like to achieve 🎉. Did you see how I used `render` and `template/plug` in a query? 🚀
|
||||
|
||||
<!-- #query page select name author repo uririri where type = "plug" order by lastModified desc limit 5 render [[template/plug]] -->
|
||||
* [[🔌 Directive]]
|
||||
* [[🔌 Directive]]
|
||||
* [[🔌 Backlinks]] by **Guillermo Vayá** ([repo](https://github.com/Willyfrog/silverbullet-backlinks))
|
||||
* [[🔌 Collab]]
|
||||
* [[🔌 Tasks]]
|
||||
* [[🔌 Collab]]
|
||||
* [[🔌 Tasks]]
|
||||
* [[🔌 Share]]
|
||||
<!-- /query -->
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user