pipeup 0.8.0-beta.1 → 0.8.0-beta.3

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.
@@ -1,10 +1,14 @@
1
- import type { Mention, Thread } from "../model/types";
1
+ import type { Comment, Mention, Thread } from "../model/types";
2
2
  import { type Person } from "./mentions";
3
3
  import { type ReactionPicker } from "./reactions";
4
4
  export interface ThreadActions {
5
5
  /** This reviewer's key, to mark their own reactions. */
6
6
  readonly me: string;
7
7
  reply(parentId: string, text: string, mentions?: Mention[]): Promise<void>;
8
+ /** Changes the words of one of this reviewer's comments. */
9
+ edit(commentId: string, text: string, mentions?: Mention[]): Promise<void>;
10
+ /** Deletes one of this reviewer's comments. */
11
+ remove(commentId: string): Promise<void>;
8
12
  /** Who can be mentioned with `@` in a reply. */
9
13
  people(): Person[];
10
14
  /** Gives (`on`) or takes back this reviewer's reaction to a comment. */
@@ -16,31 +20,38 @@ export interface ThreadActions {
16
20
  /** "Still not right" on an addressed thread: reopens it and puts the cursor in its reply line. */
17
21
  notRight(threadId: string): Promise<void>;
18
22
  copy(threadId: string): void;
19
- /** Esc in the reply line: closes the thread. */
23
+ /** Cancel or Esc threw away the words in thread `threadId`'s reply line: offers them back. */
24
+ drop(threadId: string, words: string): void;
25
+ /** Esc in an empty reply line: closes the thread. */
20
26
  close(): void;
21
27
  }
22
28
  export interface ThreadViewOptions {
23
- variant: "column" | "popover";
29
+ /** `card`: a closed card in All comments, only its first comment: words cut to two lines, no replies or reply box. */
30
+ variant: "column" | "popover" | "card";
24
31
  quote?: string | null;
25
32
  /** Snapshot of content that can't be shown: gone from the page, or somewhere it couldn't be reached. */
26
33
  lost?: string | null;
27
34
  /** Where that content is, when it isn't gone ("On slide 3"); default "No longer on the page". */
28
35
  place?: string | null;
36
+ /** Its content was found changed or nearby: flagged Moved, with what it was about, for someone to confirm. */
37
+ moved?: boolean;
38
+ /** A card's line about what it's on, as written (in place of the quote). */
39
+ note?: string | null;
40
+ /** A card's quiet last line (its replies and reactions), as written. */
41
+ rest?: string | null;
29
42
  now?: () => number;
30
43
  }
31
44
  export declare const plural: (n: number) => string;
45
+ /** A thread's replies that haven't been deleted: a deleted comment goes away. */
46
+ export declare const replies: (t: Thread) => Comment[];
32
47
  export interface ThreadView {
33
48
  readonly element: HTMLElement;
34
49
  /** Shows a newer copy of the thread. The reply line is kept, so what's being typed in it (and focus) survives. */
35
- update(t: Thread, o?: {
36
- quote?: string | null;
37
- lost?: string | null;
38
- place?: string | null;
39
- }): void;
50
+ update(t: Thread, o?: Partial<ThreadViewOptions>): void;
40
51
  }
41
52
  /**
42
- * One thread: the words first; who, when and actions ease open beneath them on hover (always shown in a popover,
43
- * so its height never changes under the pointer). Replies sit one level
44
- * in beneath the comment, oldest first, and the thread ends with its reply line at the same indent.
53
+ * One thread, as a compact card: who and how long ago, then the words; its actions sit at the top right (on hover,
54
+ * and always when open). Replies sit one level in beneath the comment, oldest first, and the thread ends with its
55
+ * reply box at the same indent.
45
56
  */
46
57
  export declare function threadView(first: Thread, actions: ThreadActions, options: ThreadViewOptions): ThreadView;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pipeup",
3
- "version": "0.8.0-beta.1",
3
+ "version": "0.8.0-beta.3",
4
4
  "description": "Comments and feedback right on any HTML page: documents, slide decks and whole sites.",
5
5
  "keywords": [
6
6
  "comments",
@@ -5,7 +5,7 @@ description: Use when someone asks you to add comments to an HTML page, make it
5
5
 
6
6
  # Add Pipeup to this page
7
7
 
8
- Written for Pipeup 0.8.0-beta.1 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-add/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md) (the full reference: layouts, decks, tabs, every option), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md) (answering the comments) and [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md).
8
+ Written for Pipeup 0.8.0-beta.3 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-add/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md) (the full reference: layouts, decks, tabs, every option), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md) (answering the comments) and [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md).
9
9
 
10
10
  Pipeup lets people comment on an HTML page in place. **When the page already exists, never change its layout, styling or behaviour to make room for Pipeup**: it draws in its own layer, and you only add attributes and one script tag. Edit the HTML file only; don't download, fetch or run anything yourself.
11
11
 
@@ -14,7 +14,7 @@ Pipeup lets people comment on an HTML page in place. **When the page already exi
14
14
  1. **Pin the script.** Just before `</body>`:
15
15
 
16
16
  ```html
17
- <script src="https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.1/dist/pipeup.min.js"
17
+ <script src="https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.3/dist/pipeup.min.js"
18
18
  integrity="sha384-…" crossorigin="anonymous"></script>
19
19
  ```
20
20
 
@@ -49,5 +49,5 @@ When you rewrite or regenerate a page, keep `data-pipeup-doc`, `data-pipeup-shar
49
49
  ## Tell the author
50
50
 
51
51
  What you added (one script, a few attributes), how to comment (**⇧⌥C** on a Mac, **Shift+Alt+C** elsewhere, or the round
52
- button), how comments come back (**Copy as Markdown**, or, with the agents add-on, **Copy a prompt for my agent**), and that nothing leaves their
52
+ button), how comments come back (**Copy comments › As Markdown**, or, with the agents add-on, **Copy a prompt for my agent**), and that nothing leaves their
53
53
  browser unless they choose it.
@@ -5,7 +5,7 @@ description: Use when someone asks you to act on Pipeup feedback for an HTML pag
5
5
 
6
6
  # Apply Pipeup feedback
7
7
 
8
- Written for Pipeup 0.8.0-beta.1 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md), [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md).
8
+ Written for Pipeup 0.8.0-beta.3 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md), [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md).
9
9
 
10
10
  ## 1. Read the comments
11
11
 
@@ -19,7 +19,7 @@ Use the first of these that works:
19
19
  `await Pipeup.comments()`. It returns `{ markdown, threads }`: `markdown` is the same text as **Copy as
20
20
  Markdown**, and `threads` is the same threads as data (`id`, `state`, `where`, `element`, `quote`, and each
21
21
  comment with `by`, `agent` and `text`). Pass `{ all: true }` to include resolved threads.
22
- 2. **The pasted Markdown**: the author clicks **Copy as Markdown** (or, on a page with the agents add-on, **Copy a prompt for my agent**) and pastes it.
22
+ 2. **The pasted Markdown**: the author clicks **Copy comments › As Markdown** (or, on a page with the agents add-on, **Copy a prompt for my agent**) and pastes it.
23
23
 
24
24
  Each thread has a `- **Thread:** <id>` line: you need it to answer the thread.
25
25
 
@@ -5,7 +5,7 @@ description: Use when creating or editing an HTML document, slide deck, report,
5
5
 
6
6
  # Add Pipeup to a page: the full reference
7
7
 
8
- Written for Pipeup 0.8.0-beta.1 For a quick "add comments to this page", [pipeup-add](https://pipeup-ai.github.io/pipeup/skills/pipeup-add/SKILL.md) is the short version; this is the full reference. This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md. Its companions: [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md).
8
+ Written for Pipeup 0.8.0-beta.3 For a quick "add comments to this page", [pipeup-add](https://pipeup-ai.github.io/pipeup/skills/pipeup-add/SKILL.md) is the short version; this is the full reference. This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md. Its companions: [summarise](https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md).
9
9
 
10
10
  Pipeup lets people comment on an HTML page in place: select text, click any element (including
11
11
  buttons and charts) or drop a pin on a slide. Your job is to make the page *reviewable* while it
@@ -75,7 +75,7 @@ Then choose the options (see "Options" below): usually just the defaults.
75
75
  - Just before `</body>`, add the script pinned to an exact version:
76
76
 
77
77
  ```html
78
- <script src="https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.1/dist/pipeup.min.js"
78
+ <script src="https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.3/dist/pipeup.min.js"
79
79
  integrity="sha384-…" crossorigin="anonymous"></script>
80
80
  ```
81
81
 
@@ -157,7 +157,7 @@ Then choose the options (see "Options" below): usually just the defaults.
157
157
  - Don't wrap content in new elements or add classes for Pipeup.
158
158
  - Don't add inline styles, z-index changes or padding "for the comment column".
159
159
  - Don't load the script from anywhere but the pinned CDN URL
160
- (`https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.1/dist/pipeup.min.js`, with the `integrity` value from
160
+ (`https://cdn.jsdelivr.net/npm/pipeup@0.8.0-beta.3/dist/pipeup.min.js`, with the `integrity` value from
161
161
  the release notes) or a copy of that same file next to the page. Never use an unpinned URL.
162
162
  - Don't put secrets in `data-pipeup-doc`; it *is* the document's key — anyone with the file can
163
163
  read its feedback, which is the intended audience.
@@ -175,7 +175,7 @@ page opened from disk and in any script order, and they are released with Pipeup
175
175
 
176
176
  - **Ask first, and say in plain words what it sends and to whom** (the line above, and the add-on's README). Never
177
177
  pick a sharing service yourself: the author chooses one.
178
- - Add it as one more `<script>` after Pipeup's, pinned the same way (`https://cdn.jsdelivr.net/npm/@pipeup/share@0.8.0-beta.1/dist/share.min.js`
178
+ - Add it as one more `<script>` after Pipeup's, pinned the same way (`https://cdn.jsdelivr.net/npm/@pipeup/share@0.8.0-beta.3/dist/share.min.js`
179
179
  with its `integrity` from the release notes), or use the combined file `pipeup+share.min.js` instead of Pipeup's.
180
180
  - Sharing is set up by the author with the command line (`npx @pipeup/share create page.html --server …`), which writes
181
181
  `data-pipeup-share` into the file and prints a stop key once. **Never write `data-pipeup-share` yourself and never
@@ -5,10 +5,10 @@ description: Use when someone wants Pipeup reviews saved as Markdown files in th
5
5
 
6
6
  # Set up "Save to GitHub" or "Send to Git"
7
7
 
8
- Written for Pipeup 0.8.0-beta.1 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-send-to-git-setup/SKILL.md.
8
+ Written for Pipeup 0.8.0-beta.3 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-send-to-git-setup/SKILL.md.
9
9
 
10
10
  Two example add-ons (written the way a company writes its own; **not** from the Pipeup project) get a review into Git as a
11
- Markdown file, the same Markdown that Copy as Markdown makes (each comment says where it is, ready for an AI to act on):
11
+ Markdown file, the same Markdown that Copy comments › As Markdown makes (each comment says where it is, ready for an AI to act on):
12
12
 
13
13
  - **Save to GitHub** needs **no server and no token**. One menu row opens GitHub's own "new file" page in a new tab with the review filled in;
14
14
  the reviewer signs in to GitHub as themselves and presses its commit button. Best to start with, and for short reviews.
@@ -1,15 +1,15 @@
1
1
  ---
2
2
  name: pipeup-summarise
3
- description: Use when someone has Pipeup feedback on an HTML page — text a reviewer copied with "Copy as Markdown" and pasted into the conversation — and wants it understood, summarised, grouped or prioritised. Read-only: produces a summary, changes nothing.
3
+ description: Use when someone has Pipeup feedback on an HTML page — text a reviewer copied with "Copy comments › As Markdown" and pasted into the conversation — and wants it understood, summarised, grouped or prioritised. Read-only: produces a summary, changes nothing.
4
4
  ---
5
5
 
6
6
  # Summarise Pipeup feedback
7
7
 
8
- Written for Pipeup 0.8.0-beta.1 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md).
8
+ Written for Pipeup 0.8.0-beta.3 This skill is published at https://pipeup-ai.github.io/pipeup/skills/pipeup-summarise/SKILL.md. Its companions: [integrate](https://pipeup-ai.github.io/pipeup/skills/pipeup-integrate/SKILL.md), [apply](https://pipeup-ai.github.io/pipeup/skills/pipeup-apply/SKILL.md).
9
9
 
10
10
  ## 1. Get the feedback as text
11
11
 
12
- The input is the Markdown a reviewer copied with **Copy as Markdown** and pasted into the conversation, or, if you
12
+ The input is the Markdown a reviewer copied with **Copy comments › As Markdown** and pasted into the conversation, or, if you
13
13
  can run the page in a browser, `(await Pipeup.comments()).markdown` (add `{ all: true }` for resolved threads). It
14
14
  starts with `# Review comments:`. Use it directly. A thread marked "open, addressed" has an agent's note: report it as
15
15
  answered, still waiting for the author to close it. Summarising changes nothing, so don't reply in the page.