@shivaedev/work-board 0.7.1 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +93 -2
  3. package/assets/agent.js +37 -0
  4. package/assets/native.js +32 -25
  5. package/dist/board.d.ts +1 -0
  6. package/dist/board.d.ts.map +1 -1
  7. package/dist/board.js +15 -2
  8. package/dist/board.js.map +1 -1
  9. package/dist/browser/client.d.ts +19 -79
  10. package/dist/browser/client.d.ts.map +1 -1
  11. package/dist/browser/client.js +12 -1
  12. package/dist/browser/client.js.map +1 -1
  13. package/dist/browser/entry.d.ts +3 -0
  14. package/dist/browser/entry.d.ts.map +1 -0
  15. package/dist/browser/entry.js +7 -0
  16. package/dist/browser/entry.js.map +1 -0
  17. package/dist/browser/responses/draftSession.d.ts +8 -0
  18. package/dist/browser/responses/draftSession.d.ts.map +1 -0
  19. package/dist/browser/responses/draftSession.js +92 -0
  20. package/dist/browser/responses/draftSession.js.map +1 -0
  21. package/dist/browser/responses/drafts.d.ts +16 -0
  22. package/dist/browser/responses/drafts.d.ts.map +1 -0
  23. package/dist/browser/responses/drafts.js +49 -0
  24. package/dist/browser/responses/drafts.js.map +1 -0
  25. package/dist/browser/responses/preview.d.ts +3 -0
  26. package/dist/browser/responses/preview.d.ts.map +1 -0
  27. package/dist/browser/responses/preview.js +4 -0
  28. package/dist/browser/responses/preview.js.map +1 -0
  29. package/dist/browser/responses/schema.d.ts +127 -0
  30. package/dist/browser/responses/schema.d.ts.map +1 -0
  31. package/dist/browser/responses/schema.js +47 -0
  32. package/dist/browser/responses/schema.js.map +1 -0
  33. package/dist/browser/responses/setup.d.ts +2 -0
  34. package/dist/browser/responses/setup.d.ts.map +1 -0
  35. package/dist/browser/responses/setup.js +99 -0
  36. package/dist/browser/responses/setup.js.map +1 -0
  37. package/dist/browser/responses/submit.d.ts +4 -0
  38. package/dist/browser/responses/submit.d.ts.map +1 -0
  39. package/dist/browser/responses/submit.js +36 -0
  40. package/dist/browser/responses/submit.js.map +1 -0
  41. package/dist/browser/session.d.ts +1 -79
  42. package/dist/browser/session.d.ts.map +1 -1
  43. package/dist/cli.d.ts.map +1 -1
  44. package/dist/cli.js +24 -15
  45. package/dist/cli.js.map +1 -1
  46. package/dist/files/changes.d.ts +1 -0
  47. package/dist/files/changes.d.ts.map +1 -1
  48. package/dist/files/changes.js +1 -1
  49. package/dist/files/changes.js.map +1 -1
  50. package/dist/http/respond.d.ts.map +1 -1
  51. package/dist/http/respond.js +2 -0
  52. package/dist/http/respond.js.map +1 -1
  53. package/dist/metadata/backlinks.d.ts.map +1 -1
  54. package/dist/metadata/backlinks.js +2 -0
  55. package/dist/metadata/backlinks.js.map +1 -1
  56. package/dist/metadata/fields.d.ts +17 -1
  57. package/dist/metadata/fields.d.ts.map +1 -1
  58. package/dist/metadata/problems.d.ts.map +1 -1
  59. package/dist/metadata/problems.js +2 -0
  60. package/dist/metadata/problems.js.map +1 -1
  61. package/dist/metadata/schema.d.ts +17 -1
  62. package/dist/metadata/schema.d.ts.map +1 -1
  63. package/dist/metadata/schema.js +6 -2
  64. package/dist/metadata/schema.js.map +1 -1
  65. package/dist/page/attentionDetails.d.ts.map +1 -1
  66. package/dist/page/attentionDetails.js +2 -1
  67. package/dist/page/attentionDetails.js.map +1 -1
  68. package/dist/page/metadataDetails.d.ts.map +1 -1
  69. package/dist/page/metadataDetails.js +6 -0
  70. package/dist/page/metadataDetails.js.map +1 -1
  71. package/dist/page/navigationScript.js +1 -1
  72. package/dist/page/shell.d.ts +1 -1
  73. package/dist/page/shell.d.ts.map +1 -1
  74. package/dist/page/shell.js.map +1 -1
  75. package/dist/page/style.d.ts.map +1 -1
  76. package/dist/page/style.js +2 -1
  77. package/dist/page/style.js.map +1 -1
  78. package/dist/page/swap.d.ts +1 -1
  79. package/dist/page/swap.d.ts.map +1 -1
  80. package/dist/page/swap.js +3 -0
  81. package/dist/page/swap.js.map +1 -1
  82. package/dist/path/Identity.d.ts +3 -0
  83. package/dist/path/Identity.d.ts.map +1 -0
  84. package/dist/path/Identity.js +3 -0
  85. package/dist/path/Identity.js.map +1 -0
  86. package/dist/responses/agent-cli.d.ts +2 -0
  87. package/dist/responses/agent-cli.d.ts.map +1 -0
  88. package/dist/responses/agent-cli.js +31 -0
  89. package/dist/responses/agent-cli.js.map +1 -0
  90. package/dist/responses/agent.d.ts +68 -0
  91. package/dist/responses/agent.d.ts.map +1 -0
  92. package/dist/responses/agent.js +49 -0
  93. package/dist/responses/agent.js.map +1 -0
  94. package/dist/responses/await.d.ts +33 -0
  95. package/dist/responses/await.d.ts.map +1 -0
  96. package/dist/responses/await.js +21 -0
  97. package/dist/responses/await.js.map +1 -0
  98. package/dist/responses/flags.d.ts +6 -0
  99. package/dist/responses/flags.d.ts.map +1 -0
  100. package/dist/responses/flags.js +23 -0
  101. package/dist/responses/flags.js.map +1 -0
  102. package/dist/responses/locate.d.ts +13 -0
  103. package/dist/responses/locate.d.ts.map +1 -0
  104. package/dist/responses/locate.js +50 -0
  105. package/dist/responses/locate.js.map +1 -0
  106. package/dist/responses/outcome.d.ts +65 -0
  107. package/dist/responses/outcome.d.ts.map +1 -0
  108. package/dist/responses/outcome.js +14 -0
  109. package/dist/responses/outcome.js.map +1 -0
  110. package/dist/responses/page.d.ts +6 -0
  111. package/dist/responses/page.d.ts.map +1 -0
  112. package/dist/responses/page.js +25 -0
  113. package/dist/responses/page.js.map +1 -0
  114. package/dist/responses/publish.d.ts +4 -0
  115. package/dist/responses/publish.d.ts.map +1 -0
  116. package/dist/responses/publish.js +56 -0
  117. package/dist/responses/publish.js.map +1 -0
  118. package/dist/responses/publishIn.d.ts +3 -0
  119. package/dist/responses/publishIn.d.ts.map +1 -0
  120. package/dist/responses/publishIn.js +69 -0
  121. package/dist/responses/publishIn.js.map +1 -0
  122. package/dist/responses/read.d.ts +30 -0
  123. package/dist/responses/read.d.ts.map +1 -0
  124. package/dist/responses/read.js +43 -0
  125. package/dist/responses/read.js.map +1 -0
  126. package/dist/responses/records.d.ts +12 -0
  127. package/dist/responses/records.d.ts.map +1 -0
  128. package/dist/responses/records.js +47 -0
  129. package/dist/responses/records.js.map +1 -0
  130. package/dist/responses/retry.d.ts +22 -0
  131. package/dist/responses/retry.d.ts.map +1 -0
  132. package/dist/responses/retry.js +14 -0
  133. package/dist/responses/retry.js.map +1 -0
  134. package/dist/responses/service.d.ts +106 -0
  135. package/dist/responses/service.d.ts.map +1 -0
  136. package/dist/responses/service.js +90 -0
  137. package/dist/responses/service.js.map +1 -0
  138. package/dist/responses/waitFor.d.ts +31 -0
  139. package/dist/responses/waitFor.d.ts.map +1 -0
  140. package/dist/responses/waitFor.js +47 -0
  141. package/dist/responses/waitFor.js.map +1 -0
  142. package/dist/rpc/contract.d.ts +101 -2
  143. package/dist/rpc/contract.d.ts.map +1 -1
  144. package/dist/rpc/contract.js +3 -2
  145. package/dist/rpc/contract.js.map +1 -1
  146. package/dist/rpc/responseContract.d.ts +212 -0
  147. package/dist/rpc/responseContract.d.ts.map +1 -0
  148. package/dist/rpc/responseContract.js +37 -0
  149. package/dist/rpc/responseContract.js.map +1 -0
  150. package/dist/rpc/server.d.ts +3 -1
  151. package/dist/rpc/server.d.ts.map +1 -1
  152. package/dist/rpc/server.js +6 -1
  153. package/dist/rpc/server.js.map +1 -1
  154. package/dist/serve-cli.d.ts +3 -0
  155. package/dist/serve-cli.d.ts.map +1 -0
  156. package/dist/serve-cli.js +20 -0
  157. package/dist/serve-cli.js.map +1 -0
  158. package/package.json +2 -2
  159. package/src/board.ts +16 -2
  160. package/src/browser/client.ts +30 -4
  161. package/src/browser/entry.ts +9 -0
  162. package/src/browser/responses/draftSession.ts +88 -0
  163. package/src/browser/responses/drafts.ts +58 -0
  164. package/src/browser/responses/preview.ts +5 -0
  165. package/src/browser/responses/schema.ts +52 -0
  166. package/src/browser/responses/setup.ts +102 -0
  167. package/src/browser/responses/submit.ts +41 -0
  168. package/src/cli.ts +14 -22
  169. package/src/files/changes.ts +2 -1
  170. package/src/http/respond.ts +2 -0
  171. package/src/metadata/backlinks.ts +2 -0
  172. package/src/metadata/problems.ts +2 -0
  173. package/src/metadata/schema.ts +6 -2
  174. package/src/page/attentionDetails.ts +2 -1
  175. package/src/page/metadataDetails.ts +6 -0
  176. package/src/page/navigationScript.ts +1 -1
  177. package/src/page/shell.ts +1 -1
  178. package/src/page/style.ts +2 -1
  179. package/src/page/swap.ts +3 -0
  180. package/src/path/Identity.ts +3 -0
  181. package/src/responses/agent-cli.ts +35 -0
  182. package/src/responses/agent.ts +59 -0
  183. package/src/responses/await.ts +21 -0
  184. package/src/responses/flags.ts +22 -0
  185. package/src/responses/locate.ts +55 -0
  186. package/src/responses/outcome.ts +15 -0
  187. package/src/responses/page.ts +41 -0
  188. package/src/responses/publish.ts +53 -0
  189. package/src/responses/publishIn.ts +64 -0
  190. package/src/responses/read.ts +45 -0
  191. package/src/responses/records.ts +53 -0
  192. package/src/responses/retry.ts +23 -0
  193. package/src/responses/service.ts +106 -0
  194. package/src/responses/waitFor.ts +58 -0
  195. package/src/rpc/contract.ts +3 -2
  196. package/src/rpc/responseContract.ts +46 -0
  197. package/src/rpc/server.ts +8 -1
  198. package/src/serve-cli.ts +37 -0
@@ -0,0 +1,47 @@
1
+ import { Schema } from "effect";
2
+ import { Identity } from "#path/Identity.ts";
3
+ export const Revision = Schema.String.check(Schema.isPattern(/^[a-f\d]{64}$/u));
4
+ export const ResponseKind = Schema.Literals(["answer", "clarify", "not_now"]);
5
+ export const QuestionRecord = Schema.Struct({
6
+ deadline: Schema.Number.check(Schema.isFinite(), Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(8_640_000_000_000_000)),
7
+ item: Identity,
8
+ reason: Schema.String,
9
+ registeredAt: Schema.Number.check(Schema.isFinite(), Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(8_640_000_000_000_000)),
10
+ request: Identity,
11
+ reviewedRevision: Revision,
12
+ source: Schema.String,
13
+ });
14
+ export const ResponseRecord = Schema.Struct({
15
+ author: Schema.String.check(Schema.isPattern(/\S/u), Schema.isMaxLength(200)),
16
+ question: Identity,
17
+ recordedAt: Schema.Number.check(Schema.isFinite(), Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(8_640_000_000_000_000)),
18
+ reviewedRevision: Revision,
19
+ type: ResponseKind,
20
+ });
21
+ export const QuestionPreview = Schema.Struct({
22
+ context: Schema.String,
23
+ id: Identity,
24
+ item: Identity,
25
+ reason: Schema.String,
26
+ request: Identity,
27
+ reviewedRevision: Revision,
28
+ source: Schema.String,
29
+ });
30
+ export const Question = Schema.Struct({ context: Schema.String, id: Identity, question: QuestionRecord });
31
+ export const RecordedResponse = Schema.Struct({ body: Schema.String, id: Identity, response: ResponseRecord });
32
+ export const Reading = Schema.Struct({ question: Question, responses: Schema.Array(RecordedResponse) });
33
+ export const WaitReading = Schema.Struct({ expired: Schema.Boolean, question: Question, response: Schema.optional(RecordedResponse) });
34
+ export class ResponseFailed extends Schema.TaggedError()("ResponseFailed", {
35
+ cause: Schema.optional(Schema.Defect()),
36
+ code: Schema.Literals(["Disabled", "Missing", "Stale", "Conflict", "Unavailable", "Unsupported", "Uncertain", "Unanswered"]),
37
+ message: Schema.String,
38
+ }) {
39
+ }
40
+ export const DraftInput = Schema.Struct({
41
+ author: ResponseRecord.fields.author,
42
+ body: Schema.String.check(Schema.isPattern(/\S/u), Schema.isMaxLength(32_768)),
43
+ id: Identity,
44
+ question: Identity,
45
+ type: ResponseKind,
46
+ });
47
+ //# sourceMappingURL=schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/browser/responses/schema.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function setupResponses(): void;
2
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/browser/responses/setup.ts"],"names":[],"mappings":"AAiGA,wBAAgB,cAAc,SAI7B"}
@@ -0,0 +1,99 @@
1
+ import { draftSession } from "./draftSession.js";
2
+ import { responsePreview } from "./preview.js";
3
+ import { submitResponse } from "./submit.js";
4
+ function attach() {
5
+ const doc = document.getElementById("doc");
6
+ if (doc?.dataset.view !== "response") {
7
+ return;
8
+ }
9
+ const form = doc.querySelector("#response-form");
10
+ if (!form || form.dataset.bound === "true") {
11
+ return;
12
+ }
13
+ form.dataset.bound = "true";
14
+ const status = form.querySelector("#response-status");
15
+ const author = form.elements.namedItem("author");
16
+ const body = form.elements.namedItem("body");
17
+ const type = form.elements.namedItem("type");
18
+ const submit = form.querySelector("#response-submit");
19
+ const preview = form.querySelector("#response-preview-content");
20
+ const clear = form.querySelector("#response-clear");
21
+ const previewButton = form.querySelector("#response-preview");
22
+ if (!(status
23
+ && author instanceof HTMLInputElement
24
+ && body instanceof HTMLTextAreaElement
25
+ && type instanceof HTMLSelectElement
26
+ && submit
27
+ && preview
28
+ && clear
29
+ && previewButton)) {
30
+ return;
31
+ }
32
+ if (status.textContent?.includes("JavaScript is required")) {
33
+ status.textContent = "Draft ready. Preview the Markdown before recording it.";
34
+ }
35
+ const item = form.dataset.item ?? "";
36
+ const request = form.dataset.request ?? "";
37
+ const revision = form.dataset.revision ?? "";
38
+ const key = `${item}/${request}`;
39
+ const storage = `work-board:drafts:${document.documentElement.dataset.workspace}`;
40
+ let storageApi;
41
+ try {
42
+ storageApi = window.localStorage;
43
+ }
44
+ catch {
45
+ storageApi = undefined;
46
+ }
47
+ const drafts = draftSession(key, revision, storageApi, storage, (message) => {
48
+ status.textContent = message;
49
+ });
50
+ let draft = drafts.current();
51
+ author.value = draft.author;
52
+ body.value = draft.body;
53
+ type.value = draft.type;
54
+ const fields = { author, body, type };
55
+ function save() {
56
+ draft = drafts.update({ author: fields.author.value, body: fields.body.value, revision: draft.revision, type: fields.type.value });
57
+ }
58
+ form.addEventListener("input", () => {
59
+ save();
60
+ preview.hidden = true;
61
+ submit.disabled = true;
62
+ });
63
+ previewButton.disabled = false;
64
+ clear.disabled = false;
65
+ previewButton.addEventListener("click", () => {
66
+ draft = drafts.update({
67
+ author: author.value,
68
+ body: body.value,
69
+ id: draft.revision === revision ? drafts.current().id : `response.${crypto.randomUUID()}`,
70
+ revision,
71
+ type: type.value,
72
+ });
73
+ preview.textContent = responsePreview(draft, form.dataset.question ?? "");
74
+ preview.hidden = false;
75
+ submit.disabled = form.dataset.writable !== "true" || !form.checkValidity();
76
+ });
77
+ clear.addEventListener("click", drafts.clear);
78
+ form.addEventListener("submit", async (event) => {
79
+ event.preventDefault();
80
+ if (submit.disabled || draft.revision !== revision || !form.reportValidity()) {
81
+ return;
82
+ }
83
+ submit.disabled = true;
84
+ previewButton.disabled = true;
85
+ if (await submitResponse(form, status, drafts, draft)) {
86
+ draft = drafts.current();
87
+ if (form.isConnected) {
88
+ body.value = "";
89
+ }
90
+ }
91
+ previewButton.disabled = false;
92
+ });
93
+ }
94
+ export function setupResponses() {
95
+ document.addEventListener("board-page", attach);
96
+ window.addEventListener("pageshow", attach);
97
+ attach();
98
+ }
99
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/browser/responses/setup.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import type { draftSession } from "./draftSession.ts";
2
+ import type { Draft } from "./drafts.ts";
3
+ export declare function submitResponse(form: HTMLFormElement, status: HTMLParagraphElement, drafts: ReturnType<typeof draftSession>, pending: Draft): Promise<boolean>;
4
+ //# sourceMappingURL=submit.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit.d.ts","sourceRoot":"","sources":["../../../src/browser/responses/submit.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,wBAAsB,cAAc,CAAC,IAAI,EAAE,eAAe,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,EAAE,OAAO,EAAE,KAAK,oBAkChJ"}
@@ -0,0 +1,36 @@
1
+ import { Schema } from "effect";
2
+ import { session } from "#browser/session.ts";
3
+ import { ResponseFailed, ResponseKind } from "./schema.js";
4
+ export async function submitResponse(form, status, drafts, pending) {
5
+ status.dataset.outcome = "pending";
6
+ status.textContent = "Pending: registering reviewed context, then recording response…";
7
+ const native = session(window);
8
+ try {
9
+ const question = await native.mutate(native.responses.registerQuestion.run({ item: form.dataset.item ?? "", request: form.dataset.request ?? "", revision: pending.revision }));
10
+ await native.mutate(native.responses.recordResponse.run({
11
+ author: pending.author,
12
+ body: pending.body,
13
+ id: pending.id,
14
+ question: question.id,
15
+ type: Schema.decodeUnknownSync(ResponseKind)(pending.type),
16
+ }));
17
+ if (form.isConnected) {
18
+ status.dataset.outcome = "saved";
19
+ status.textContent = `Saved: responses/${pending.id}.md. This records feedback, not acceptance.`;
20
+ }
21
+ const cleared = drafts.saved(pending);
22
+ if (!cleared && form.isConnected) {
23
+ status.textContent += " Your current draft remains unsaved.";
24
+ }
25
+ return cleared;
26
+ }
27
+ catch (error) {
28
+ if (form.isConnected) {
29
+ const outcome = error instanceof ResponseFailed && error.code !== "Uncertain" ? "rejected" : "uncertain";
30
+ status.dataset.outcome = outcome;
31
+ status.textContent = `${outcome === "rejected" ? "Rejected" : "Uncertain"}: ${String(error)}. Draft retained. Preview and retry with the same identity; saved content will be reconciled.`;
32
+ }
33
+ return false;
34
+ }
35
+ }
36
+ //# sourceMappingURL=submit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"submit.js","sourceRoot":"","sources":["../../../src/browser/responses/submit.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG9C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3D,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,IAAqB,EAAE,MAA4B,EAAE,MAAuC,EAAE,OAAc;IAChJ,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,SAAS,CAAC;IACnC,MAAM,CAAC,WAAW,GAAG,iEAAiE,CAAC;IACvF,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,MAAM,CACnC,MAAM,CAAC,SAAS,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CACzI,CAAC;QACF,MAAM,MAAM,CAAC,MAAM,CAClB,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,CAAC;YACnC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,EAAE,EAAE,OAAO,CAAC,EAAE;YACd,QAAQ,EAAE,QAAQ,CAAC,EAAE;YACrB,IAAI,EAAE,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;SAC1D,CAAC,CACF,CAAC;QACF,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;YACjC,MAAM,CAAC,WAAW,GAAG,oBAAoB,OAAO,CAAC,EAAE,6CAA6C,CAAC;QAClG,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACtC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YAClC,MAAM,CAAC,WAAW,IAAI,sCAAsC,CAAC;QAC9D,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,KAAK,YAAY,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,CAAC;YACzG,MAAM,CAAC,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;YACjC,MAAM,CAAC,WAAW,GAAG,GAAG,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,WAAW,KAAK,MAAM,CAAC,KAAK,CAAC,+FAA+F,CAAC;QAC5L,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;AACF,CAAC"}
@@ -6,84 +6,6 @@ type BrowserEnvironment = ResumeWindow & {
6
6
  readonly addEventListener: (type: "pagehide", listener: () => void) => void;
7
7
  readonly removeEventListener: (type: "pagehide", listener: () => void) => void;
8
8
  };
9
- export declare function session(environment: BrowserEnvironment): {
10
- api: import("@shivaedev/effect-contract/bind.ts").Bound<"work-board", readonly [import("@shivaedev/effect-contract/operation.ts").Query<"page", import("effect/Schema").Struct<{
11
- url: import("effect/Schema").String;
12
- }>, import("effect/Schema").Struct<{
13
- readonly html: import("effect/Schema").String;
14
- readonly status: import("effect/Schema").Number;
15
- }>, {
16
- readonly ReadFailed: typeof import("../rpc/contract.ts").ReadFailed;
17
- }>, import("@shivaedev/effect-contract/operation.ts").Query<"navigation", import("effect/Schema").Void, import("effect/Schema").String, {
18
- readonly ReadFailed: typeof import("../rpc/contract.ts").ReadFailed;
19
- }>, import("@shivaedev/effect-contract/operation.ts").Query<"search", import("effect/Schema").Struct<{
20
- query: import("effect/Schema").String;
21
- }>, import("effect/Schema").Struct<{
22
- readonly results: import("effect/Schema").$Array<import("effect/Schema").Struct<{
23
- readonly file: import("effect/Schema").String;
24
- readonly href: import("effect/Schema").String;
25
- readonly kind: import("effect/Schema").Literals<readonly ["document", "heading", "passage"]>;
26
- readonly line: import("effect/Schema").optional<import("effect/Schema").Number>;
27
- readonly snippet: import("effect/Schema").String;
28
- readonly text: import("effect/Schema").String;
29
- readonly title: import("effect/Schema").String;
30
- }>>;
31
- readonly total: import("effect/Schema").Number;
32
- readonly unavailable: import("effect/Schema").$Array<import("effect/Schema").String>;
33
- }>, {
34
- readonly ReadFailed: typeof import("../rpc/contract.ts").ReadFailed;
35
- }>, import("@shivaedev/effect-contract/operation.ts").Query<"history", import("effect/Schema").Struct<{
36
- readonly action: import("effect/Schema").Literals<readonly ["check", "compare", "observe"]>;
37
- readonly baseline: import("effect/Schema").NullOr<import("effect/Schema").String>;
38
- }>, import("effect/Schema").Struct<{
39
- readonly discardBaseline: import("effect/Schema").Boolean;
40
- readonly html: import("effect/Schema").String;
41
- readonly reason: import("effect/Schema").String;
42
- readonly snapshot: import("effect/Schema").NullOr<import("effect/Schema").String>;
43
- }>, {
44
- readonly ReadFailed: typeof import("../rpc/contract.ts").ReadFailed;
45
- }>, import("@shivaedev/effect-contract/operation.ts").Query<"watcher", import("effect/Schema").Void, import("effect/Schema").Struct<{
46
- readonly watching: import("effect/Schema").Boolean;
47
- }>, {
48
- readonly ReadFailed: typeof import("../rpc/contract.ts").ReadFailed;
49
- }>], readonly [], import("effect/unstable/rpc/Rpc").Rpc<"work-board.history", import("effect/Schema").Struct<{
50
- readonly action: import("effect/Schema").Literals<readonly ["check", "compare", "observe"]>;
51
- readonly baseline: import("effect/Schema").NullOr<import("effect/Schema").String>;
52
- }>, import("effect/Schema").Struct<{
53
- readonly discardBaseline: import("effect/Schema").Boolean;
54
- readonly html: import("effect/Schema").String;
55
- readonly reason: import("effect/Schema").String;
56
- readonly snapshot: import("effect/Schema").NullOr<import("effect/Schema").String>;
57
- }>, import("effect/Schema").Union<readonly typeof import("../rpc/contract.ts").ReadFailed[]>, never, never> | import("effect/unstable/rpc/Rpc").Rpc<"work-board.navigation", import("effect/Schema").Void, import("effect/Schema").String, import("effect/Schema").Union<readonly typeof import("../rpc/contract.ts").ReadFailed[]>, never, never> | import("effect/unstable/rpc/Rpc").Rpc<"work-board.page", import("effect/Schema").Struct<{
58
- url: import("effect/Schema").String;
59
- }>, import("effect/Schema").Struct<{
60
- readonly html: import("effect/Schema").String;
61
- readonly status: import("effect/Schema").Number;
62
- }>, import("effect/Schema").Union<readonly typeof import("../rpc/contract.ts").ReadFailed[]>, never, never> | import("effect/unstable/rpc/Rpc").Rpc<"work-board.search", import("effect/Schema").Struct<{
63
- query: import("effect/Schema").String;
64
- }>, import("effect/Schema").Struct<{
65
- readonly results: import("effect/Schema").$Array<import("effect/Schema").Struct<{
66
- readonly file: import("effect/Schema").String;
67
- readonly href: import("effect/Schema").String;
68
- readonly kind: import("effect/Schema").Literals<readonly ["document", "heading", "passage"]>;
69
- readonly line: import("effect/Schema").optional<import("effect/Schema").Number>;
70
- readonly snippet: import("effect/Schema").String;
71
- readonly text: import("effect/Schema").String;
72
- readonly title: import("effect/Schema").String;
73
- }>>;
74
- readonly total: import("effect/Schema").Number;
75
- readonly unavailable: import("effect/Schema").$Array<import("effect/Schema").String>;
76
- }>, import("effect/Schema").Union<readonly typeof import("../rpc/contract.ts").ReadFailed[]>, never, never> | import("effect/unstable/rpc/Rpc").Rpc<"work-board.watcher", import("effect/Schema").Void, import("effect/Schema").Struct<{
77
- readonly watching: import("effect/Schema").Boolean;
78
- }>, import("effect/Schema").Union<readonly typeof import("../rpc/contract.ts").ReadFailed[]>, never, never>, import("./client.ts").Reader>;
79
- read: <A, E>(atom: import("effect/unstable/reactivity/Atom").Atom<import("effect/unstable/reactivity/AsyncResult").AsyncResult<A, E>>, signal?: AbortSignal) => Promise<A>;
80
- registry: import("effect/unstable/reactivity/AtomRegistry").AtomRegistry;
81
- run: <A, E>(effect: import("effect/Effect").Effect<A, E, import("./client.ts").Reader>, signal?: AbortSignal) => Promise<A>;
82
- updates: {
83
- connection: import("effect/unstable/reactivity/Atom").Atom<import("effect/unstable/reactivity/AsyncResult").AsyncResult<void, never>>;
84
- paused: import("effect/unstable/reactivity/Atom").Writable<boolean, boolean>;
85
- status: import("effect/unstable/reactivity/Atom").Writable<import("@shivaedev/effect-contract/live.ts").LiveStatus<import("../rpc/contract.ts").ReadFailed | import("effect/unstable/rpc/RpcClientError").RpcClientError>, import("@shivaedev/effect-contract/live.ts").LiveStatus<import("../rpc/contract.ts").ReadFailed | import("effect/unstable/rpc/RpcClientError").RpcClientError>>;
86
- };
87
- };
9
+ export declare function session(environment: BrowserEnvironment): import("./client.ts").BrowserClient;
88
10
  export {};
89
11
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/browser/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAGzE,KAAK,kBAAkB,GAAG,YAAY,GAAG;IACxC,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC5E,QAAQ,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CAC/E,CAAC;AAEF,wBAAgB,OAAO,CAAC,WAAW,EAAE,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgBtD"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/browser/session.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AAGzE,KAAK,kBAAkB,GAAG,YAAY,GAAG;IACxC,QAAQ,CAAC,QAAQ,EAAE;QAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;IAC5E,QAAQ,CAAC,mBAAmB,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,IAAI,KAAK,IAAI,CAAC;CAC/E,CAAC;AAEF,wBAAgB,OAAO,CAAC,WAAW,EAAE,kBAAkB,uCAgBtD"}
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAeA,OAAO,EAAE,CAAC"}
package/dist/cli.js CHANGED
@@ -1,17 +1,26 @@
1
1
  #!/usr/bin/env node
2
- import { NodeRuntime, NodeServices } from "@effect/platform-node";
3
- import { Effect, Layer, Option, Path } from "effect";
4
- import { Argument, Command, Flag } from "effect/unstable/cli";
5
- import { HOST, serveBoard } from "./serve.js";
6
- const VERSION = "0.7.1";
7
- const serve = Effect.fn("WorkBoard.serve")(function* (input) {
8
- const path = yield* Path.Path;
9
- return yield* Layer.launch(serveBoard({ home: Option.getOrUndefined(input.home), port: input.port, root: path.resolve(input.dir) }));
10
- });
11
- const workBoard = Command.make("work-board", {
12
- dir: Argument.directory("dir", { mustExist: true }).pipe(Argument.withDescription("The folder of markdown files to serve")),
13
- home: Flag.string("home").pipe(Flag.optional, Flag.withDescription("The file shown as a board at /, relative to the folder")),
14
- port: Flag.integer("port").pipe(Flag.withDefault(4747), Flag.withDescription(`The port to listen on at ${HOST}`)),
15
- }, serve).pipe(Command.withDescription("Serve a folder of markdown files as a live page that updates in place when a file changes."));
16
- Command.run(workBoard, { version: VERSION }).pipe(Effect.provide(NodeServices.layer), NodeRuntime.runMain);
2
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
3
+ if (typeof path === "string" && /^\.\.?\//.test(path)) {
4
+ return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
5
+ return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
6
+ });
7
+ }
8
+ return path;
9
+ };
10
+ const action = process.argv[2];
11
+ if (action === "wait" || action === "response" || action === "question") {
12
+ try {
13
+ const entry = await import(__rewriteRelativeImportExtension(new URL("../assets/agent.js", import.meta.url).href));
14
+ await entry.runAgent(process.argv.slice(2));
15
+ }
16
+ catch (error) {
17
+ process.stderr.write(`${String(error)}\n`);
18
+ process.exitCode ??= 1;
19
+ }
20
+ }
21
+ else {
22
+ const entry = await import("./serve-cli.js");
23
+ entry.runServe();
24
+ }
25
+ export {};
17
26
  //# sourceMappingURL=cli.js.map
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC,QAAQ,CAAC,EAAE,KAA4F;IACjJ,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;IAC9B,OAAO,KAAK,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;AACtI,CAAC,CAAC,CAAC;AAEH,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAC7B,YAAY,EACZ;IACC,GAAG,EAAE,QAAQ,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,uCAAuC,CAAC,CAAC;IAC3H,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,eAAe,CAAC,wDAAwD,CAAC,CAAC;IAC7H,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,4BAA4B,IAAI,EAAE,CAAC,CAAC;CACjH,EACD,KAAK,CACL,CAAC,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,4FAA4F,CAAC,CAAC,CAAC;AAE9H,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;;;;;;;AACA,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC/B,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;IACzE,IAAI,CAAC;QACJ,MAAM,KAAK,GAA6C,MAAM,MAAM,kCAAC,IAAI,GAAG,CAAC,oBAAoB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAC,CAAC;QAC1H,MAAM,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC3C,OAAO,CAAC,QAAQ,KAAK,CAAC,CAAC;IACxB,CAAC;AACF,CAAC;KAAM,CAAC;IACP,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,gBAAgB,CAAC,CAAC;IAC7C,KAAK,CAAC,QAAQ,EAAE,CAAC;AAClB,CAAC;AAED,OAAO,EAAE,CAAC"}
@@ -13,6 +13,7 @@ export interface Changes {
13
13
  readonly events: PubSub.PubSub<Change>;
14
14
  readonly files: Effect.Effect<readonly MarkdownFile[], PlatformError.PlatformError>;
15
15
  readonly realRoot: string;
16
+ readonly refresh?: Effect.Effect<void>;
16
17
  readonly revision: Effect.Effect<number>;
17
18
  readonly sequence?: Effect.Effect<number>;
18
19
  readonly watching: Ref.Ref<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../src/files/changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,UAAU,EAAU,IAAI,EAAE,KAAK,aAAa,EAAE,MAAM,EAAE,GAAG,EAAY,MAAM,QAAQ,CAAC;AAC/G,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAG5D,MAAM,MAAM,MAAM,GAAG,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG;IACpJ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,YAAY,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACpF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;CACpC;AAUD,eAAO,MAAM,YAAY,yIA4CvB,CAAC"}
1
+ {"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../src/files/changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,MAAM,EAAE,UAAU,EAAU,IAAI,EAAE,KAAK,aAAa,EAAE,MAAM,EAAE,GAAG,EAAY,MAAM,QAAQ,CAAC;AAC/G,OAAO,EAAgB,KAAK,YAAY,EAAE,MAAM,WAAW,CAAC;AAG5D,MAAM,MAAM,MAAM,GAAG,CAAC;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAA;CAAE,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,GAAG;IACpJ,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,OAAO;IACvB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACvC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,SAAS,YAAY,EAAE,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC;IACpF,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;CACpC;AAUD,eAAO,MAAM,YAAY,yIA4CvB,CAAC"}
@@ -31,7 +31,7 @@ export const watchChanges = Effect.fn("WorkBoard.watchChanges")(function* (root)
31
31
  yield* Ref.set(cached, Option.some({ files: listed, generation: now }));
32
32
  return listed;
33
33
  });
34
- const changes = { events, files, realRoot, revision: Ref.get(generation), sequence: Ref.get(sequence), watching };
34
+ const changes = { events, files, realRoot, refresh: stale, revision: Ref.get(generation), sequence: Ref.get(sequence), watching };
35
35
  return changes;
36
36
  });
37
37
  //# sourceMappingURL=changes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/files/changes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/files/changes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/http/respond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAY1D,eAAO,MAAM,OAAO;;;;CAA0G,CAAC;AAE/H,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,GAAG,UAAU,EAAE,aAAa,MAAM,EAAE,eAAY,KAAG,kBAAkB,CAAC,kBAGxB,CAAC"}
1
+ {"version":3,"file":"respond.d.ts","sourceRoot":"","sources":["../../src/http/respond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAc1D,eAAO,MAAM,OAAO;;;;CAA0G,CAAC;AAE/H,eAAO,MAAM,OAAO,GAAI,MAAM,MAAM,GAAG,UAAU,EAAE,aAAa,MAAM,EAAE,eAAY,KAAG,kBAAkB,CAAC,kBAGxB,CAAC"}
@@ -5,6 +5,8 @@ const POLICY = [
5
5
  "style-src 'self' 'unsafe-inline'",
6
6
  "img-src 'self' data: https:",
7
7
  "object-src 'none'",
8
+ "form-action 'none'",
9
+ "frame-src 'none'",
8
10
  "base-uri 'none'",
9
11
  "frame-ancestors 'none'",
10
12
  ].join("; ");
@@ -1 +1 @@
1
- {"version":3,"file":"respond.js","sourceRoot":"","sources":["../../src/http/respond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,GAAG;IACd,oBAAoB;IACpB,mBAAmB;IACnB,kCAAkC;IAClC,6BAA6B;IAC7B,mBAAmB;IACnB,iBAAiB;IACjB,wBAAwB;CACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC;AAE/H,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAyB,EAAE,WAAmB,EAAE,MAAM,GAAG,GAAG,EAAyC,EAAE,CAC9H,OAAO,IAAI,KAAK,QAAQ;IACvB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,WAAW,iBAAiB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3G,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"respond.js","sourceRoot":"","sources":["../../src/http/respond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,MAAM,GAAG;IACd,oBAAoB;IACpB,mBAAmB;IACnB,kCAAkC;IAClC,6BAA6B;IAC7B,mBAAmB;IACnB,oBAAoB;IACpB,kBAAkB;IAClB,iBAAiB;IACjB,wBAAwB;CACxB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,CAAC,MAAM,OAAO,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,yBAAyB,EAAE,MAAM,EAAE,wBAAwB,EAAE,SAAS,EAAE,CAAC;AAE/H,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,IAAyB,EAAE,WAAmB,EAAE,MAAM,GAAG,GAAG,EAAyC,EAAE,CAC9H,OAAO,IAAI,KAAK,QAAQ;IACvB,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,GAAG,WAAW,iBAAiB,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;IAC3G,CAAC,CAAC,kBAAkB,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"backlinks.d.ts","sourceRoot":"","sources":["../../src/metadata/backlinks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,aAAa,EAAE,MAAM,YAAY,CAAC;AAGlE,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AA8BD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,SAAS,QAAQ,EAAE,CAQnF"}
1
+ {"version":3,"file":"backlinks.d.ts","sourceRoot":"","sources":["../../src/metadata/backlinks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAoB,aAAa,EAAE,MAAM,YAAY,CAAC;AAGlE,MAAM,WAAW,QAAQ;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC;CACvB;AAgCD,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,SAAS,QAAQ,EAAE,CAQnF"}
@@ -2,6 +2,8 @@ import { referenceFile, sourceFile } from "./sourceLinks.js";
2
2
  function references(document, model) {
3
3
  const { fields, lines } = document.parsed;
4
4
  return [
5
+ ...(fields.question ? [{ kind: "reviewed question", line: lines.question, target: referenceFile(fields.question.item, model) }] : []),
6
+ ...(fields.response ? [{ kind: "recorded response", line: lines.response, target: referenceFile(fields.response.question, model) }] : []),
5
7
  ...(fields.attention?.flatMap((request, index) => request.unblocks.map((target, targetIndex) => ({
6
8
  kind: "attention target",
7
9
  line: lines[`attention.${index}.unblocks.${targetIndex}`],
@@ -1 +1 @@
1
- {"version":3,"file":"backlinks.js","sourceRoot":"","sources":["../../src/metadata/backlinks.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"backlinks.js","sourceRoot":"","sources":["../../src/metadata/backlinks.ts"],"names":[],"mappings":"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"}
@@ -24,13 +24,29 @@ export declare function metadataFields(data: object, lines: Readonly<Record<stri
24
24
  }[] | undefined;
25
25
  readonly id?: string | undefined;
26
26
  readonly items?: readonly string[] | undefined;
27
- readonly kind?: "board" | "decision" | "investigation" | "project" | "result" | "task" | undefined;
27
+ readonly kind?: "board" | "decision" | "investigation" | "project" | "question" | "response" | "result" | "task" | undefined;
28
28
  readonly nextAction?: string | undefined;
29
29
  readonly owner?: string | undefined;
30
+ readonly question?: {
31
+ readonly deadline: number;
32
+ readonly item: string;
33
+ readonly reason: string;
34
+ readonly registeredAt: number;
35
+ readonly request: string;
36
+ readonly reviewedRevision: string;
37
+ readonly source: string;
38
+ } | undefined;
30
39
  readonly relationships?: readonly {
31
40
  readonly kind: "depends_on" | "implements" | "informs" | "relates_to";
32
41
  readonly target: string;
33
42
  }[] | undefined;
43
+ readonly response?: {
44
+ readonly author: string;
45
+ readonly question: string;
46
+ readonly recordedAt: number;
47
+ readonly reviewedRevision: string;
48
+ readonly type: "answer" | "clarify" | "not_now";
49
+ } | undefined;
34
50
  readonly status?: string | undefined;
35
51
  };
36
52
  };
@@ -1 +1 @@
1
- {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../src/metadata/fields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBnF"}
1
+ {"version":3,"file":"fields.d.ts","sourceRoot":"","sources":["../../src/metadata/fields.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAM7C,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBnF"}
@@ -1 +1 @@
1
- {"version":3,"file":"problems.d.ts","sourceRoot":"","sources":["../../src/metadata/problems.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAyC7C,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,gBAsBjJ"}
1
+ {"version":3,"file":"problems.d.ts","sourceRoot":"","sources":["../../src/metadata/problems.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA2C7C,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC,EAAE,WAAW,EAAE,SAAS,MAAM,EAAE,gBAsBjJ"}
@@ -22,6 +22,8 @@ function criterionProblems(document) {
22
22
  function referenceProblems(document, ids) {
23
23
  const { fields, lines } = document.parsed;
24
24
  const references = [
25
+ ...(fields.question ? [{ field: "question", key: "question.item", target: fields.question.item }] : []),
26
+ ...(fields.response ? [{ field: "response", key: "response.question", target: fields.response.question }] : []),
25
27
  ...(fields.attention?.flatMap((request, index) => request.unblocks.map((target, targetIndex) => ({ field: "attention", key: `attention.${index}.unblocks.${targetIndex}`, target }))) ?? []),
26
28
  ...(fields.relationships?.map((link, index) => ({ field: "relationships", key: `relationships.${index}.target`, target: link.target })) ?? []),
27
29
  ...(fields.items?.map((target, index) => ({ field: "items", key: `items.${index}`, target })) ?? []),
@@ -1 +1 @@
1
- {"version":3,"file":"problems.js","sourceRoot":"","sources":["../../src/metadata/problems.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"problems.js","sourceRoot":"","sources":["../../src/metadata/problems.ts"],"names":[],"mappings":"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"}
@@ -29,13 +29,29 @@ export declare const Metadata: Schema.encodeKeys<Schema.Struct<{
29
29
  }>>>;
30
30
  readonly id: Schema.optional<Schema.String>;
31
31
  readonly items: Schema.optional<Schema.$Array<Schema.String>>;
32
- readonly kind: Schema.optional<Schema.Literals<readonly ["task", "investigation", "decision", "result", "project", "board"]>>;
32
+ readonly kind: Schema.optional<Schema.Literals<readonly ["task", "investigation", "decision", "result", "project", "board", "question", "response"]>>;
33
33
  readonly nextAction: Schema.optional<Schema.String>;
34
34
  readonly owner: Schema.optional<Schema.String>;
35
+ readonly question: Schema.optional<Schema.Struct<{
36
+ readonly deadline: Schema.Number;
37
+ readonly item: Schema.String;
38
+ readonly reason: Schema.String;
39
+ readonly registeredAt: Schema.Number;
40
+ readonly request: Schema.String;
41
+ readonly reviewedRevision: Schema.String;
42
+ readonly source: Schema.String;
43
+ }>>;
35
44
  readonly relationships: Schema.optional<Schema.$Array<Schema.Struct<{
36
45
  readonly kind: Schema.Literals<readonly ["implements", "informs", "depends_on", "relates_to"]>;
37
46
  readonly target: Schema.String;
38
47
  }>>>;
48
+ readonly response: Schema.optional<Schema.Struct<{
49
+ readonly author: Schema.String;
50
+ readonly question: Schema.String;
51
+ readonly recordedAt: Schema.Number;
52
+ readonly reviewedRevision: Schema.String;
53
+ readonly type: Schema.Literals<readonly ["answer", "clarify", "not_now"]>;
54
+ }>>;
39
55
  readonly status: Schema.optional<Schema.String>;
40
56
  }>, {
41
57
  readonly nextAction: "next_action";
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/metadata/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,eAAO,MAAM,QAAQ,eAAuE,CAAC;AAC7F,eAAO,MAAM,SAAS,eAAqG,CAAC;AA6B5H,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWoC,CAAC;AAC1D,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/metadata/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAIhC,eAAO,MAAM,QAAQ,eAAiB,CAAC;AACvC,eAAO,MAAM,SAAS,eAAqG,CAAC;AA6B5H,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaoC,CAAC;AAC1D,MAAM,MAAM,QAAQ,GAAG,OAAO,QAAQ,CAAC,IAAI,CAAC"}