@inkbar/svelte 0.9.0 → 0.11.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 (59) hide show
  1. package/README.md +64 -3
  2. package/dist/components/InkDownloadButton.svelte +62 -0
  3. package/dist/components/InkDownloadButton.svelte.d.ts +14 -0
  4. package/dist/components/InkDownloadButton.svelte.d.ts.map +1 -0
  5. package/dist/components/InkFindBar.svelte +18 -15
  6. package/dist/components/InkFindBar.svelte.d.ts.map +1 -1
  7. package/dist/components/InkPanel.svelte +73 -0
  8. package/dist/components/InkPanel.svelte.d.ts +18 -0
  9. package/dist/components/InkPanel.svelte.d.ts.map +1 -0
  10. package/dist/components/InkPrintButton.svelte +57 -0
  11. package/dist/components/InkPrintButton.svelte.d.ts +12 -0
  12. package/dist/components/InkPrintButton.svelte.d.ts.map +1 -0
  13. package/dist/components/InkRecordList.svelte +91 -0
  14. package/dist/components/InkRecordList.svelte.d.ts +72 -0
  15. package/dist/components/InkRecordList.svelte.d.ts.map +1 -0
  16. package/dist/components/InkRoot.svelte +4 -0
  17. package/dist/components/InkRoot.svelte.d.ts.map +1 -1
  18. package/dist/components/InkSearchResults.svelte +72 -0
  19. package/dist/components/InkSearchResults.svelte.d.ts +9 -0
  20. package/dist/components/InkSearchResults.svelte.d.ts.map +1 -0
  21. package/dist/components/InkSidebar.svelte +179 -0
  22. package/dist/components/InkSidebar.svelte.d.ts +22 -0
  23. package/dist/components/InkSidebar.svelte.d.ts.map +1 -0
  24. package/dist/components/InkThumbnail.svelte +74 -0
  25. package/dist/components/InkThumbnail.svelte.d.ts +19 -0
  26. package/dist/components/InkThumbnail.svelte.d.ts.map +1 -0
  27. package/dist/components/InkThumbnails.svelte +146 -0
  28. package/dist/components/InkThumbnails.svelte.d.ts +24 -0
  29. package/dist/components/InkThumbnails.svelte.d.ts.map +1 -0
  30. package/dist/components/InkViewport.svelte +21 -4
  31. package/dist/components/InkViewport.svelte.d.ts +2 -0
  32. package/dist/components/InkViewport.svelte.d.ts.map +1 -1
  33. package/dist/components/InkZoomSelect.svelte +1 -1
  34. package/dist/components/RecordCards.svelte +173 -0
  35. package/dist/components/RecordCards.svelte.d.ts +16 -0
  36. package/dist/components/RecordCards.svelte.d.ts.map +1 -0
  37. package/dist/components/SidebarTrigger.svelte +20 -0
  38. package/dist/components/SidebarTrigger.svelte.d.ts +9 -0
  39. package/dist/components/SidebarTrigger.svelte.d.ts.map +1 -0
  40. package/dist/components/sidebar-context.d.ts +24 -0
  41. package/dist/components/sidebar-context.d.ts.map +1 -0
  42. package/dist/components/sidebar-context.js +13 -0
  43. package/dist/hooks/useAnnotations.svelte.d.ts +78 -0
  44. package/dist/hooks/useAnnotations.svelte.d.ts.map +1 -1
  45. package/dist/hooks/useRecordSelection.svelte.d.ts +11 -0
  46. package/dist/hooks/useRecordSelection.svelte.d.ts.map +1 -0
  47. package/dist/hooks/useRecordSelection.svelte.js +19 -0
  48. package/dist/hooks/useRecords.svelte.d.ts +14 -0
  49. package/dist/hooks/useRecords.svelte.d.ts.map +1 -0
  50. package/dist/hooks/useRecords.svelte.js +24 -0
  51. package/dist/hooks/useSearch.svelte.d.ts.map +1 -1
  52. package/dist/hooks/useSearch.svelte.js +1 -0
  53. package/dist/index.d.ts +18 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +10 -0
  56. package/dist/to-readable.svelte.d.ts +8 -0
  57. package/dist/to-readable.svelte.d.ts.map +1 -0
  58. package/dist/to-readable.svelte.js +15 -0
  59. package/package.json +5 -5
@@ -0,0 +1,24 @@
1
+ import { useInkContext } from '../context.js';
2
+ import { useReadable } from '../use-readable.svelte.js';
3
+ const NONE = Object.freeze([]);
4
+ /**
5
+ * The records a plugin keeps under `key` (`<plugin>.<name>`), for host components: the live list
6
+ * for the open document, and the handle to read and write them, each write one undo step.
7
+ * Plugins are set up once InkRoot has mounted, so until then (and on the server) `handle` is
8
+ * null and `records` is empty. `T` is the plugin's record type. Both are getters: keep the
9
+ * object and read through it.
10
+ */
11
+ export function useRecords(key) {
12
+ const ctx = useInkContext('useRecords()');
13
+ // The host keeps one handle per key, so this is the same object for the root's life.
14
+ const handle = $derived(ctx.pluginHost?.records(key) ?? null);
15
+ const records = useReadable(() => handle?.list, NONE);
16
+ return {
17
+ get records() {
18
+ return records.current;
19
+ },
20
+ get handle() {
21
+ return handle;
22
+ },
23
+ };
24
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"useSearch.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useSearch.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAWjE;;;;;GAKG;AACH,wBAAgB,SAAS,IAAI;IAAE,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GAAG,IAAI,CACjE,YAAY,EACZ,OAAO,CACR,CAcA"}
1
+ {"version":3,"file":"useSearch.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useSearch.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAA;AAWjE;;;;;GAKG;AACH,wBAAgB,SAAS,IAAI;IAAE,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAA;CAAE,GAAG,IAAI,CACjE,YAAY,EACZ,OAAO,CACR,CAeA"}
@@ -26,6 +26,7 @@ export function useSearch() {
26
26
  setMatchCase: (on) => ctx.search?.setMatchCase(on),
27
27
  next: () => ctx.search?.next(),
28
28
  previous: () => ctx.search?.previous(),
29
+ select: (index) => ctx.search?.select(index),
29
30
  close: () => ctx.search?.close(),
30
31
  };
31
32
  }
package/dist/index.d.ts CHANGED
@@ -20,6 +20,8 @@ export { useEmbedded } from './hooks/useEmbedded.svelte.js';
20
20
  export { useCommand } from './hooks/useCommand.svelte.js';
21
21
  export { useForm } from './hooks/useForm.svelte.js';
22
22
  export type { FormHandle } from './hooks/useForm.svelte.js';
23
+ export { useRecords } from './hooks/useRecords.svelte.js';
24
+ export { useRecordSelection } from './hooks/useRecordSelection.svelte.js';
23
25
  export type { CommandHandle } from './hooks/useCommand.svelte.js';
24
26
  export { default as InkRoot } from './components/InkRoot.svelte';
25
27
  export type { InkRootProps } from './components/InkRoot.svelte';
@@ -43,6 +45,8 @@ export type { InkToolbarButtonProps } from './components/InkToolbarButton.svelte
43
45
  export { default as InkToolbarSeparator } from './components/InkToolbarSeparator.svelte';
44
46
  export type { InkToolbarSeparatorProps } from './components/InkToolbarSeparator.svelte';
45
47
  export { default as InkUndo } from './components/InkUndo.svelte';
48
+ export { default as InkDownloadButton } from './components/InkDownloadButton.svelte';
49
+ export { default as InkPrintButton } from './components/InkPrintButton.svelte';
46
50
  export { default as InkRedo } from './components/InkRedo.svelte';
47
51
  export type { InkHistoryButtonProps } from './components/history-button.js';
48
52
  export { default as InkZoomIn } from './components/InkZoomIn.svelte';
@@ -78,4 +82,18 @@ export type { InkPageButtonProps } from './components/page-button.js';
78
82
  export type { ChildSnippet } from './components/child-snippet.js';
79
83
  export { default as InkThreadPopover } from './components/InkThreadPopover.svelte';
80
84
  export type { InkThreadPopoverProps } from './components/InkThreadPopover.svelte';
85
+ export { default as InkSidebar } from './components/InkSidebar.svelte';
86
+ export type { InkSidebarProps } from './components/InkSidebar.svelte';
87
+ export { default as InkPanel } from './components/InkPanel.svelte';
88
+ export type { InkPanelProps } from './components/InkPanel.svelte';
89
+ export type { SidebarLayout, SidebarOpen, SidebarSide } from '@inkbar/core/dom';
90
+ export { default as InkThumbnail } from './components/InkThumbnail.svelte';
91
+ export type { InkThumbnailProps } from './components/InkThumbnail.svelte';
92
+ export { default as InkThumbnails } from './components/InkThumbnails.svelte';
93
+ export type { InkThumbnailsProps } from './components/InkThumbnails.svelte';
94
+ export { default as InkRecordList } from './components/InkRecordList.svelte';
95
+ export type { InkRecordListProps } from './components/InkRecordList.svelte';
96
+ export { default as InkSearchResults } from './components/InkSearchResults.svelte';
97
+ export type { InkSearchResultsProps } from './components/InkSearchResults.svelte';
98
+ export type { CardSpec, HostRecords } from '@inkbar/core/dom';
81
99
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/lib/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -13,6 +13,8 @@ export { useSearch } from './hooks/useSearch.svelte.js';
13
13
  export { useEmbedded } from './hooks/useEmbedded.svelte.js';
14
14
  export { useCommand } from './hooks/useCommand.svelte.js';
15
15
  export { useForm } from './hooks/useForm.svelte.js';
16
+ export { useRecords } from './hooks/useRecords.svelte.js';
17
+ export { useRecordSelection } from './hooks/useRecordSelection.svelte.js';
16
18
  export { default as InkRoot } from './components/InkRoot.svelte';
17
19
  export { default as InkViewport } from './components/InkViewport.svelte';
18
20
  export { default as InkPage } from './components/InkPage.svelte';
@@ -24,6 +26,8 @@ export { default as InkCommand } from './components/InkCommand.svelte';
24
26
  export { default as InkToolbarButton } from './components/InkToolbarButton.svelte';
25
27
  export { default as InkToolbarSeparator } from './components/InkToolbarSeparator.svelte';
26
28
  export { default as InkUndo } from './components/InkUndo.svelte';
29
+ export { default as InkDownloadButton } from './components/InkDownloadButton.svelte';
30
+ export { default as InkPrintButton } from './components/InkPrintButton.svelte';
27
31
  export { default as InkRedo } from './components/InkRedo.svelte';
28
32
  export { default as InkZoomIn } from './components/InkZoomIn.svelte';
29
33
  export { default as InkZoomOut } from './components/InkZoomOut.svelte';
@@ -42,3 +46,9 @@ export { default as InkPageCount } from './components/InkPageCount.svelte';
42
46
  export { default as InkPrevPage } from './components/InkPrevPage.svelte';
43
47
  export { default as InkNextPage } from './components/InkNextPage.svelte';
44
48
  export { default as InkThreadPopover } from './components/InkThreadPopover.svelte';
49
+ export { default as InkSidebar } from './components/InkSidebar.svelte';
50
+ export { default as InkPanel } from './components/InkPanel.svelte';
51
+ export { default as InkThumbnail } from './components/InkThumbnail.svelte';
52
+ export { default as InkThumbnails } from './components/InkThumbnails.svelte';
53
+ export { default as InkRecordList } from './components/InkRecordList.svelte';
54
+ export { default as InkSearchResults } from './components/InkSearchResults.svelte';
@@ -0,0 +1,8 @@
1
+ import { type Readable } from '@inkbar/core';
2
+ /**
3
+ * A core `Readable` that follows a Svelte getter, for the core controllers and painters that
4
+ * components build on. Call it while a component initialises: it takes each new value in a
5
+ * pre-effect, before the DOM updates, and stops with the component.
6
+ */
7
+ export declare function toReadable<T>(source: () => T): Readable<T>;
8
+ //# sourceMappingURL=to-readable.svelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"to-readable.svelte.d.ts","sourceRoot":"","sources":["../src/lib/to-readable.svelte.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,QAAQ,EAAE,MAAM,cAAc,CAAA;AAGhE;;;;GAIG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAO1D"}
@@ -0,0 +1,15 @@
1
+ import { readonly, writable } from '@inkbar/core';
2
+ import { untrack } from 'svelte';
3
+ /**
4
+ * A core `Readable` that follows a Svelte getter, for the core controllers and painters that
5
+ * components build on. Call it while a component initialises: it takes each new value in a
6
+ * pre-effect, before the DOM updates, and stops with the component.
7
+ */
8
+ export function toReadable(source) {
9
+ const store = writable(untrack(source));
10
+ $effect.pre(() => {
11
+ const value = source();
12
+ untrack(() => store.set(value));
13
+ });
14
+ return readonly(store);
15
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inkbar/svelte",
3
- "version": "0.9.0",
3
+ "version": "0.11.0",
4
4
  "description": "Svelte 5 components and hooks for Inkbar, the browser PDF viewer and editor.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://inkbar.dev",
@@ -26,19 +26,19 @@
26
26
  "./package.json": "./package.json"
27
27
  },
28
28
  "dependencies": {
29
- "@inkbar/icons": "^0.9.0",
29
+ "@inkbar/icons": "^0.11.0",
30
30
  "@internationalized/date": "^3.12.4",
31
31
  "bits-ui": "^2.19.5",
32
32
  "esm-env": "^1.2.0"
33
33
  },
34
34
  "peerDependencies": {
35
- "@inkbar/core": "^0.9.0",
35
+ "@inkbar/core": "^0.11.0",
36
36
  "svelte": "^5.46.4"
37
37
  },
38
38
  "devDependencies": {
39
- "@inkbar/core": "0.9.0",
39
+ "@inkbar/core": "0.11.0",
40
40
  "@inkbar/fixtures": "0.0.0",
41
- "@inkbar/theme": "0.9.0",
41
+ "@inkbar/theme": "0.11.0",
42
42
  "@sveltejs/package": "^3.0.0",
43
43
  "@sveltejs/vite-plugin-svelte": "^7.3.1",
44
44
  "@vitest/browser-playwright": "^5.0.4",