@inkbar/svelte 0.8.0 → 0.10.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.
- package/README.md +71 -6
- package/dist/components/InkDownloadButton.svelte +62 -0
- package/dist/components/InkDownloadButton.svelte.d.ts +14 -0
- package/dist/components/InkDownloadButton.svelte.d.ts.map +1 -0
- package/dist/components/InkFindBar.svelte +18 -15
- package/dist/components/InkFindBar.svelte.d.ts.map +1 -1
- package/dist/components/InkHighlightMenu.svelte +101 -93
- package/dist/components/InkHighlightMenu.svelte.d.ts.map +1 -1
- package/dist/components/InkPanel.svelte +73 -0
- package/dist/components/InkPanel.svelte.d.ts +18 -0
- package/dist/components/InkPanel.svelte.d.ts.map +1 -0
- package/dist/components/InkPrintButton.svelte +57 -0
- package/dist/components/InkPrintButton.svelte.d.ts +12 -0
- package/dist/components/InkPrintButton.svelte.d.ts.map +1 -0
- package/dist/components/InkRecordList.svelte +91 -0
- package/dist/components/InkRecordList.svelte.d.ts +72 -0
- package/dist/components/InkRecordList.svelte.d.ts.map +1 -0
- package/dist/components/InkRoot.svelte +53 -5
- package/dist/components/InkRoot.svelte.d.ts +7 -2
- package/dist/components/InkRoot.svelte.d.ts.map +1 -1
- package/dist/components/InkSearchResults.svelte +72 -0
- package/dist/components/InkSearchResults.svelte.d.ts +9 -0
- package/dist/components/InkSearchResults.svelte.d.ts.map +1 -0
- package/dist/components/InkShapeMenu.svelte +89 -84
- package/dist/components/InkShapeMenu.svelte.d.ts.map +1 -1
- package/dist/components/InkSidebar.svelte +179 -0
- package/dist/components/InkSidebar.svelte.d.ts +22 -0
- package/dist/components/InkSidebar.svelte.d.ts.map +1 -0
- package/dist/components/InkSignatureDialog.svelte +7 -3
- package/dist/components/InkSignatureDialog.svelte.d.ts +4 -3
- package/dist/components/InkSignatureDialog.svelte.d.ts.map +1 -1
- package/dist/components/InkSignatureMenu.svelte +85 -77
- package/dist/components/InkSignatureMenu.svelte.d.ts.map +1 -1
- package/dist/components/InkThumbnail.svelte +74 -0
- package/dist/components/InkThumbnail.svelte.d.ts +19 -0
- package/dist/components/InkThumbnail.svelte.d.ts.map +1 -0
- package/dist/components/InkThumbnails.svelte +146 -0
- package/dist/components/InkThumbnails.svelte.d.ts +24 -0
- package/dist/components/InkThumbnails.svelte.d.ts.map +1 -0
- package/dist/components/InkToolButton.svelte +23 -24
- package/dist/components/InkToolButton.svelte.d.ts.map +1 -1
- package/dist/components/InkToolbarButton.svelte +33 -0
- package/dist/components/InkToolbarButton.svelte.d.ts +12 -0
- package/dist/components/InkToolbarButton.svelte.d.ts.map +1 -0
- package/dist/components/InkViewport.svelte +4 -0
- package/dist/components/InkViewport.svelte.d.ts.map +1 -1
- package/dist/components/InkZoomSelect.svelte +1 -1
- package/dist/components/RecordCards.svelte +173 -0
- package/dist/components/RecordCards.svelte.d.ts +16 -0
- package/dist/components/RecordCards.svelte.d.ts.map +1 -0
- package/dist/components/SidebarTrigger.svelte +20 -0
- package/dist/components/SidebarTrigger.svelte.d.ts +9 -0
- package/dist/components/SidebarTrigger.svelte.d.ts.map +1 -0
- package/dist/components/SignatureForm.svelte +9 -3
- package/dist/components/SignatureForm.svelte.d.ts.map +1 -1
- package/dist/components/body-lock.d.ts +3 -0
- package/dist/components/body-lock.d.ts.map +1 -0
- package/dist/components/body-lock.js +43 -0
- package/dist/components/sidebar-context.d.ts +24 -0
- package/dist/components/sidebar-context.d.ts.map +1 -0
- package/dist/components/sidebar-context.js +13 -0
- package/dist/context.d.ts +6 -0
- package/dist/context.d.ts.map +1 -1
- package/dist/hooks/useAnnotations.svelte.d.ts +78 -0
- package/dist/hooks/useAnnotations.svelte.d.ts.map +1 -1
- package/dist/hooks/useRecordSelection.svelte.d.ts +11 -0
- package/dist/hooks/useRecordSelection.svelte.d.ts.map +1 -0
- package/dist/hooks/useRecordSelection.svelte.js +19 -0
- package/dist/hooks/useRecords.svelte.d.ts +14 -0
- package/dist/hooks/useRecords.svelte.d.ts.map +1 -0
- package/dist/hooks/useRecords.svelte.js +24 -0
- package/dist/hooks/useRegisteredTool.svelte.d.ts +24 -0
- package/dist/hooks/useRegisteredTool.svelte.d.ts.map +1 -0
- package/dist/hooks/useRegisteredTool.svelte.js +47 -0
- package/dist/hooks/useSearch.svelte.d.ts.map +1 -1
- package/dist/hooks/useSearch.svelte.js +1 -0
- package/dist/hooks/useToolOptions.svelte.d.ts +8 -0
- package/dist/hooks/useToolOptions.svelte.d.ts.map +1 -1
- package/dist/hooks/useToolOptions.svelte.js +12 -2
- package/dist/index.d.ts +20 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -0
- package/dist/to-readable.svelte.d.ts +8 -0
- package/dist/to-readable.svelte.d.ts.map +1 -0
- package/dist/to-readable.svelte.js +15 -0
- 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
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { type InkContext } from '../context.js';
|
|
2
|
+
import type { PluginHost, Tool, ToolId } from '@inkbar/core/dom';
|
|
3
|
+
/** `select-text` and `select`, then the host's tools, then the plugins' tools, by id. */
|
|
4
|
+
export declare function toolIdsOf(hostTools: readonly Tool[] | undefined, pluginHost: PluginHost | null): ToolId[];
|
|
5
|
+
/**
|
|
6
|
+
* The tools a control may use: those in `tools` and the plugins now that the open viewer was
|
|
7
|
+
* also built with, so a control never offers a tool the viewer would refuse. A tool added to
|
|
8
|
+
* `tools` counts from the next open; one removed stops at once. With no viewer, `tools` and
|
|
9
|
+
* the plugins alone.
|
|
10
|
+
*/
|
|
11
|
+
export declare function registeredToolIds(hostTools: readonly Tool[] | undefined, pluginHost: PluginHost | null, opened: readonly ToolId[] | null): ToolId[];
|
|
12
|
+
/** Whether a tool by this id is registered, without logging anything when it is not. */
|
|
13
|
+
export declare function useHasTool(ctx: InkContext, id: ToolId | (() => ToolId)): {
|
|
14
|
+
readonly current: boolean;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Whether a tool by this id is registered: always for `select-text` and `select`, else when
|
|
18
|
+
* InkRoot's `tools` or a plugin has it. When it is not, once the plugins are set up, this logs
|
|
19
|
+
* `InkError('UnknownTool')` to the console, once per component. `id` may be a getter.
|
|
20
|
+
*/
|
|
21
|
+
export declare function useRegisteredTool(id: ToolId | (() => ToolId)): {
|
|
22
|
+
readonly current: boolean;
|
|
23
|
+
};
|
|
24
|
+
//# sourceMappingURL=useRegisteredTool.svelte.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useRegisteredTool.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useRegisteredTool.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiB,KAAK,UAAU,EAAE,MAAM,eAAe,CAAA;AAE9D,OAAO,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAEhE,yFAAyF;AACzF,wBAAgB,SAAS,CACvB,SAAS,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,GAC5B,MAAM,EAAE,CAIV;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,EACtC,UAAU,EAAE,UAAU,GAAG,IAAI,EAC7B,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAC/B,MAAM,EAAE,CAGV;AAKD,wFAAwF;AACxF,wBAAgB,UAAU,CACxB,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAC1B;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAO/B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAAG;IAC9D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;CAC1B,CAeA"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { unknownTool, withHostTools } from '@inkbar/core/dom';
|
|
2
|
+
import { untrack } from 'svelte';
|
|
3
|
+
import { useInkContext } from '../context.js';
|
|
4
|
+
/** `select-text` and `select`, then the host's tools, then the plugins' tools, by id. */
|
|
5
|
+
export function toolIdsOf(hostTools, pluginHost) {
|
|
6
|
+
return withHostTools([...(hostTools ?? []), ...(pluginHost?.tools ?? [])]).map((t) => t.id);
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* The tools a control may use: those in `tools` and the plugins now that the open viewer was
|
|
10
|
+
* also built with, so a control never offers a tool the viewer would refuse. A tool added to
|
|
11
|
+
* `tools` counts from the next open; one removed stops at once. With no viewer, `tools` and
|
|
12
|
+
* the plugins alone.
|
|
13
|
+
*/
|
|
14
|
+
export function registeredToolIds(hostTools, pluginHost, opened) {
|
|
15
|
+
const ids = toolIdsOf(hostTools, pluginHost);
|
|
16
|
+
return opened ? ids.filter((id) => opened.includes(id)) : ids;
|
|
17
|
+
}
|
|
18
|
+
const idsIn = (ctx) => registeredToolIds(ctx.hostTools, ctx.pluginHost, ctx.openedToolIds);
|
|
19
|
+
/** Whether a tool by this id is registered, without logging anything when it is not. */
|
|
20
|
+
export function useHasTool(ctx, id) {
|
|
21
|
+
const toolId = () => (typeof id === 'function' ? id() : id);
|
|
22
|
+
return {
|
|
23
|
+
get current() {
|
|
24
|
+
return idsIn(ctx).includes(toolId());
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Whether a tool by this id is registered: always for `select-text` and `select`, else when
|
|
30
|
+
* InkRoot's `tools` or a plugin has it. When it is not, once the plugins are set up, this logs
|
|
31
|
+
* `InkError('UnknownTool')` to the console, once per component. `id` may be a getter.
|
|
32
|
+
*/
|
|
33
|
+
export function useRegisteredTool(id) {
|
|
34
|
+
const ctx = useInkContext('useRegisteredTool()');
|
|
35
|
+
const registered = useHasTool(ctx, id);
|
|
36
|
+
let logged = false;
|
|
37
|
+
// The plugins' tools are known once InkRoot has mounted and set up its plugin host.
|
|
38
|
+
$effect(() => {
|
|
39
|
+
const ready = ctx.pluginHost !== null;
|
|
40
|
+
const ok = registered.current;
|
|
41
|
+
if (!ready || ok || logged)
|
|
42
|
+
return;
|
|
43
|
+
logged = true;
|
|
44
|
+
untrack(() => console.error(unknownTool(typeof id === 'function' ? id() : id, idsIn(ctx))));
|
|
45
|
+
});
|
|
46
|
+
return registered;
|
|
47
|
+
}
|
|
@@ -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,
|
|
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"}
|
|
@@ -8,4 +8,12 @@ export declare function useToolOptions<O extends object = object>(id: ToolId | (
|
|
|
8
8
|
readonly options: O;
|
|
9
9
|
setOptions: (patch: Partial<O>) => void;
|
|
10
10
|
};
|
|
11
|
+
/**
|
|
12
|
+
* `useToolOptions` that reads and sets nothing while `active` is false, so a control for a
|
|
13
|
+
* missing tool leaves the controller's own `UnknownTool` log alone.
|
|
14
|
+
*/
|
|
15
|
+
export declare function useToolOptionsWhile<O extends object = object>(id: ToolId | (() => ToolId), active: () => boolean): {
|
|
16
|
+
readonly options: O;
|
|
17
|
+
setOptions: (patch: Partial<O>) => void;
|
|
18
|
+
};
|
|
11
19
|
//# sourceMappingURL=useToolOptions.svelte.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useToolOptions.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useToolOptions.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAI9C;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACtD,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAC1B;IAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"useToolOptions.svelte.d.ts","sourceRoot":"","sources":["../../src/lib/hooks/useToolOptions.svelte.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAI9C;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EACtD,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,GAC1B;IAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;CAAE,CAElE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAC3D,EAAE,EAAE,MAAM,GAAG,CAAC,MAAM,MAAM,CAAC,EAC3B,MAAM,EAAE,MAAM,OAAO,GACpB;IAAE,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;IAAC,UAAU,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;CAAE,CAelE"}
|
|
@@ -7,13 +7,23 @@ const NO_OPTIONS = {};
|
|
|
7
7
|
* has mounted.
|
|
8
8
|
*/
|
|
9
9
|
export function useToolOptions(id) {
|
|
10
|
+
return useToolOptionsWhile(id, () => true);
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* `useToolOptions` that reads and sets nothing while `active` is false, so a control for a
|
|
14
|
+
* missing tool leaves the controller's own `UnknownTool` log alone.
|
|
15
|
+
*/
|
|
16
|
+
export function useToolOptionsWhile(id, active) {
|
|
10
17
|
const ctx = useInkContext('useToolOptions()');
|
|
11
18
|
const toolId = () => (typeof id === 'function' ? id() : id);
|
|
12
|
-
const options = useReadable(() => ctx.tools?.options(toolId()), NO_OPTIONS);
|
|
19
|
+
const options = useReadable(() => (active() ? ctx.tools?.options(toolId()) : null), NO_OPTIONS);
|
|
13
20
|
return {
|
|
14
21
|
get options() {
|
|
15
22
|
return options.current;
|
|
16
23
|
},
|
|
17
|
-
setOptions: (patch) =>
|
|
24
|
+
setOptions: (patch) => {
|
|
25
|
+
if (active())
|
|
26
|
+
ctx.tools?.setOptions(toolId(), patch);
|
|
27
|
+
},
|
|
18
28
|
};
|
|
19
29
|
}
|
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';
|
|
@@ -38,9 +40,13 @@ export { default as InkToolButton } from './components/InkToolButton.svelte';
|
|
|
38
40
|
export type { InkToolButtonProps } from './components/InkToolButton.svelte';
|
|
39
41
|
export { default as InkCommand } from './components/InkCommand.svelte';
|
|
40
42
|
export type { InkCommandProps } from './components/InkCommand.svelte';
|
|
43
|
+
export { default as InkToolbarButton } from './components/InkToolbarButton.svelte';
|
|
44
|
+
export type { InkToolbarButtonProps } from './components/InkToolbarButton.svelte';
|
|
41
45
|
export { default as InkToolbarSeparator } from './components/InkToolbarSeparator.svelte';
|
|
42
46
|
export type { InkToolbarSeparatorProps } from './components/InkToolbarSeparator.svelte';
|
|
43
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';
|
|
44
50
|
export { default as InkRedo } from './components/InkRedo.svelte';
|
|
45
51
|
export type { InkHistoryButtonProps } from './components/history-button.js';
|
|
46
52
|
export { default as InkZoomIn } from './components/InkZoomIn.svelte';
|
|
@@ -76,4 +82,18 @@ export type { InkPageButtonProps } from './components/page-button.js';
|
|
|
76
82
|
export type { ChildSnippet } from './components/child-snippet.js';
|
|
77
83
|
export { default as InkThreadPopover } from './components/InkThreadPopover.svelte';
|
|
78
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';
|
|
79
99
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -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';
|
|
@@ -21,8 +23,11 @@ export { default as InkToolbar } from './components/InkToolbar.svelte';
|
|
|
21
23
|
export { default as InkIcon } from './components/InkIcon.svelte';
|
|
22
24
|
export { default as InkToolButton } from './components/InkToolButton.svelte';
|
|
23
25
|
export { default as InkCommand } from './components/InkCommand.svelte';
|
|
26
|
+
export { default as InkToolbarButton } from './components/InkToolbarButton.svelte';
|
|
24
27
|
export { default as InkToolbarSeparator } from './components/InkToolbarSeparator.svelte';
|
|
25
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';
|
|
26
31
|
export { default as InkRedo } from './components/InkRedo.svelte';
|
|
27
32
|
export { default as InkZoomIn } from './components/InkZoomIn.svelte';
|
|
28
33
|
export { default as InkZoomOut } from './components/InkZoomOut.svelte';
|
|
@@ -41,3 +46,9 @@ export { default as InkPageCount } from './components/InkPageCount.svelte';
|
|
|
41
46
|
export { default as InkPrevPage } from './components/InkPrevPage.svelte';
|
|
42
47
|
export { default as InkNextPage } from './components/InkNextPage.svelte';
|
|
43
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.
|
|
3
|
+
"version": "0.10.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.
|
|
29
|
+
"@inkbar/icons": "^0.10.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.
|
|
35
|
+
"@inkbar/core": "^0.10.0",
|
|
36
36
|
"svelte": "^5.46.4"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@inkbar/core": "0.
|
|
39
|
+
"@inkbar/core": "0.10.0",
|
|
40
40
|
"@inkbar/fixtures": "0.0.0",
|
|
41
|
-
"@inkbar/theme": "0.
|
|
41
|
+
"@inkbar/theme": "0.10.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",
|