@keepkit/ui 0.21.0 → 0.23.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 +24 -9
- package/dist/index.d.ts +21 -7
- package/dist/index.js +305 -69
- package/dist/index.js.map +1 -1
- package/dist/styles/base.css +19 -1
- package/dist/styles/collection.css +105 -0
- package/dist/tailwind.css +44 -19
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -77,7 +77,12 @@ function SavedArticles() {
|
|
|
77
77
|
<KeepItemCard.Title />
|
|
78
78
|
<KeepItemCard.Tags />
|
|
79
79
|
</KeepItemCard.Content>
|
|
80
|
-
<KeepItemCard.Actions
|
|
80
|
+
<KeepItemCard.Actions>
|
|
81
|
+
<KeepItemCard.Save />
|
|
82
|
+
<KeepItemCard.Pin />
|
|
83
|
+
<KeepItemCard.Archive />
|
|
84
|
+
<KeepItemCard.Remove />
|
|
85
|
+
</KeepItemCard.Actions>
|
|
81
86
|
</KeepItemCard>
|
|
82
87
|
```
|
|
83
88
|
|
|
@@ -88,13 +93,18 @@ const onFeedback = useKeepToastFeedback(toast);
|
|
|
88
93
|
<KeepKitProvider storage={storage} onFeedback={onFeedback}>{children}</KeepKitProvider>;
|
|
89
94
|
```
|
|
90
95
|
|
|
91
|
-
v0.
|
|
96
|
+
v0.23.0ではTailwind CSS v4との統合、ホストテーマ変数との衝突回避、CSS cascade layer対応を追加しました。保存直後の`KeepSavePopover`自動編集、`KeepQuickEditorState.saveStatus`、`KeepItemCard.Save` / `KeepItemCard.Remove`、管理モード向け`KeepBulkActions`、通知からのコレクション再訪導線も引き続き利用できます。
|
|
92
97
|
Phase 4の状態UIとして`KeepItemStatusBadge`、`KeepStaleNotice`、`KeepPruneStaleButton`、`KeepSyncStatusBanner`、`KeepSyncRecoveryDialog`を利用できます。`import "@keepkit/ui/theme.css"`でテーマCSSを有効にできます。
|
|
93
98
|
|
|
94
99
|
### Tailwind/shadcnテーマ
|
|
95
100
|
|
|
101
|
+
```css
|
|
102
|
+
/* globals.css */
|
|
103
|
+
@import "tailwindcss";
|
|
104
|
+
@import "@keepkit/ui/tailwind.css";
|
|
105
|
+
```
|
|
106
|
+
|
|
96
107
|
```tsx
|
|
97
|
-
import "@keepkit/ui/tailwind.css";
|
|
98
108
|
import { KeepThemeProvider, KeepCollection } from "@keepkit/ui";
|
|
99
109
|
|
|
100
110
|
<KeepThemeProvider theme="ocean" mode="system" density="comfortable" radius="medium">
|
|
@@ -104,7 +114,7 @@ import { KeepThemeProvider, KeepCollection } from "@keepkit/ui";
|
|
|
104
114
|
|
|
105
115
|
色テーマは`default`、`ocean`、`forest`、`sunset`、`lavender`から選べます。既存の`compact`、`minimal`、`rounded`、`high-contrast`、`dark`も引き続き利用できます。`theme`は`mode`、`density`、`radius`と独立しており、`KeepKitProvider theme="forest" mode="dark"`のように組み合わせられます。選択肢をUIへ表示する場合は`keepThemeNames`を利用できます。
|
|
106
116
|
|
|
107
|
-
|
|
117
|
+
Tailwind v4の`--color-background`、`--color-foreground`、`--color-card`、`--color-muted`、`--color-border`、`--color-primary`、`--color-destructive`、`--color-ring`をKeepKitのスコープ内へ継承します。KeepKitはホストの`--color-*`変数を上書きせず、`--color-keep-*`としてTailwindへ公開します。`variables`、`accentColor`、`highContrast`、`reducedMotion`による上書きも維持されます。`keepKitTheme`は`@keepkit/ui/tailwind`から、分割CSSは`@keepkit/ui/styles/base.css`、`button.css`、`collection.css`、`sync.css`から読み込めます。`KeepButton icons={{ save, saved, remove }}`と`iconOnly`でLucide等へ差し替えられます。
|
|
108
118
|
|
|
109
119
|
Viewer向け保存カードとカスタムテーマは次のように構成できます。`savedAt`、タイトル、タグ、詳細リンク、保存解除ボタン、期限切れ表示は`KeepItemCard`の標準markupに含まれます。
|
|
110
120
|
|
|
@@ -207,13 +217,18 @@ const onFeedback = useKeepToastFeedback(toast);
|
|
|
207
217
|
<KeepKitProvider storage={storage} onFeedback={onFeedback}>{children}</KeepKitProvider>;
|
|
208
218
|
```
|
|
209
219
|
|
|
210
|
-
In v0.
|
|
220
|
+
In v0.23.0, Tailwind CSS v4 integration, host-theme isolation, and cascade-layer support are included. `KeepSavePopover` post-save editing, `KeepQuickEditorState.saveStatus`, `KeepItemCard.Save` / `KeepItemCard.Remove`, management-mode `KeepBulkActions`, and notification-driven return to the collection remain available.
|
|
211
221
|
Phase 4 adds `KeepItemStatusBadge`, `KeepStaleNotice`, `KeepPruneStaleButton`, `KeepSyncStatusBanner`, and `KeepSyncRecoveryDialog` for unavailable items, sync failures, conflict resolution, and backup recovery. Import `@keepkit/ui/theme.css` or `@keepkit/ui/tailwind.css` for the opt-in theme layer.
|
|
212
222
|
|
|
213
223
|
### Tailwind and shadcn theme
|
|
214
224
|
|
|
225
|
+
```css
|
|
226
|
+
/* globals.css */
|
|
227
|
+
@import "tailwindcss";
|
|
228
|
+
@import "@keepkit/ui/tailwind.css";
|
|
229
|
+
```
|
|
230
|
+
|
|
215
231
|
```tsx
|
|
216
|
-
import "@keepkit/ui/tailwind.css";
|
|
217
232
|
import { KeepThemeProvider, KeepCollection } from "@keepkit/ui";
|
|
218
233
|
|
|
219
234
|
<KeepThemeProvider theme="ocean" mode="system" density="comfortable" radius="medium">
|
|
@@ -223,7 +238,7 @@ import { KeepThemeProvider, KeepCollection } from "@keepkit/ui";
|
|
|
223
238
|
|
|
224
239
|
Color themes include `default`, `ocean`, `forest`, `sunset`, and `lavender`. Existing `compact`, `minimal`, `rounded`, `high-contrast`, and `dark` presets remain available. `theme` composes independently with `mode`, `density`, and `radius`, so `theme="forest" mode="dark"` is supported. Use the exported `keepThemeNames` list when building a selector.
|
|
225
240
|
|
|
226
|
-
The scoped `--keep-*` tokens inherit shadcn/ui
|
|
241
|
+
The scoped `--keep-*` tokens inherit complete Tailwind v4 `--color-*` values from shadcn/ui when present. KeepKit does not replace the host's generic color aliases; its Tailwind aliases are namespaced as `--color-keep-*`. The provider supports `.dark`, system preference, `variables`, `accentColor`, `highContrast`, and `reducedMotion`. Use `keepKitTheme` from `@keepkit/ui/tailwind`, feature CSS from `@keepkit/ui/styles/*`, and `icons={{ save, saved, remove }}` / `iconOnly` on `KeepButton` for Lucide or shadcn replacements. The existing Next.js Pages Router recipe remains unchanged: inject `createNextPagesRouterAdapter(router)` into `urlAdapter`.
|
|
227
242
|
|
|
228
243
|
For a Viewer card, the default `KeepItemCard` markup includes the title, tags, saved date, detail link, remove action, thumbnail, and expired-item notice. Override tokens without replacing the markup, or use render props for a complete replacement:
|
|
229
244
|
|
|
@@ -251,8 +266,8 @@ Framework-neutral APIs remain available from `@keepkit/core/core`, low-level Rea
|
|
|
251
266
|
|
|
252
267
|
## Archive, pin, collections, and quick save editing
|
|
253
268
|
|
|
254
|
-
The UI package exports `KeepArchiveButton`, `KeepPinButton`, `KeepCollectionSelect`, `KeepCollectionFilter`, `KeepSavePopover`, `KeepQuickEditor`, and `useKeepQuickEditor`. Buttons expose `aria-pressed`, `data-archived`/`data-pinned`, and `data-keep-action`. Collection labels default to IDs and can be overridden with `collectionLabels`. Enable `features={{ collectionFilter: true }}` on `KeepCollection` to include the collection filter. `KeepSavePopover` wraps `KeepButton
|
|
269
|
+
The UI package exports `KeepArchiveButton`, `KeepPinButton`, `KeepCollectionSelect`, `KeepCollectionFilter`, `KeepSavePopover`, `KeepQuickEditor`, and `useKeepQuickEditor`. Buttons expose `aria-pressed`, `data-archived`/`data-pinned`, and `data-keep-action`. Collection labels default to IDs and can be overridden with `collectionLabels`. Enable `features={{ collectionFilter: true }}` on `KeepCollection` to include the collection filter. `KeepSavePopover` wraps `KeepButton`, opens after a new save, labels and focuses its dialog, flushes pending edits before closing, and restores focus to the trigger. Its quick editor debounces note, tags, and collection updates by 300ms and exposes `saveStatus`. Set `showSaveButton={false}` when visible save status should replace the submit button. `KeepItemCard.Save` and `KeepItemCard.Remove` let compound cards place those actions alongside `Pin` and `Archive` without replacing the default card API.
|
|
255
270
|
|
|
256
271
|
## アーカイブ・ピン留め・コレクション・保存直後編集
|
|
257
272
|
|
|
258
|
-
UI パッケージは `KeepArchiveButton`、`KeepPinButton`、`KeepCollectionSelect`、`KeepCollectionFilter`、`KeepSavePopover`、`KeepQuickEditor`、`useKeepQuickEditor` を公開します。ボタンは `aria-pressed`、`data-archived` / `data-pinned`、`data-keep-action` を出力します。コレクション名は既定で ID を表示し、`collectionLabels` で置換できます。`KeepCollection` に `features={{ collectionFilter: true }}` を指定するとフィルターを統合できます。`KeepSavePopover` は `KeepButton` を内部 trigger
|
|
273
|
+
UI パッケージは `KeepArchiveButton`、`KeepPinButton`、`KeepCollectionSelect`、`KeepCollectionFilter`、`KeepSavePopover`、`KeepQuickEditor`、`useKeepQuickEditor` を公開します。ボタンは `aria-pressed`、`data-archived` / `data-pinned`、`data-keep-action` を出力します。コレクション名は既定で ID を表示し、`collectionLabels` で置換できます。`KeepCollection` に `features={{ collectionFilter: true }}` を指定するとフィルターを統合できます。`KeepSavePopover` は `KeepButton` を内部 trigger とし、新規保存後にdialogへフォーカスし、閉じる前に未保存編集をflushしてtriggerへフォーカスを戻します。クイックエディターはメモ・タグ・コレクションを一時状態として扱い、既定300msで保存し、`saveStatus`で状態を公開します。自動保存だけを表示する場合は`showSaveButton={false}`を指定します。compound cardでは`KeepItemCard.Save` / `Remove`を`Pin` / `Archive`と同じ操作領域に配置できます。
|
package/dist/index.d.ts
CHANGED
|
@@ -172,6 +172,7 @@ type KeepQuickEditorState<TMeta = Record<string, unknown>> = {
|
|
|
172
172
|
setCollectionId: (value?: string) => void;
|
|
173
173
|
isDirty: boolean;
|
|
174
174
|
isSaving: boolean;
|
|
175
|
+
saveStatus: "idle" | "dirty" | "saving" | "saved" | "error";
|
|
175
176
|
error: unknown | null;
|
|
176
177
|
flush: () => Promise<void>;
|
|
177
178
|
};
|
|
@@ -185,11 +186,12 @@ declare function useKeepQuickEditor<TMeta = Record<string, unknown>>(item: KeepI
|
|
|
185
186
|
note: string;
|
|
186
187
|
tags: string[];
|
|
187
188
|
collectionId: string | undefined;
|
|
188
|
-
setNote:
|
|
189
|
-
setTags:
|
|
190
|
-
setCollectionId:
|
|
189
|
+
setNote: (value: string) => void;
|
|
190
|
+
setTags: (value: string[]) => void;
|
|
191
|
+
setCollectionId: (value: string | undefined) => void;
|
|
191
192
|
isDirty: boolean;
|
|
192
193
|
isSaving: boolean;
|
|
194
|
+
saveStatus: "saved" | "saving" | "error" | "idle" | "dirty";
|
|
193
195
|
error: unknown;
|
|
194
196
|
flush: () => Promise<void>;
|
|
195
197
|
};
|
|
@@ -199,19 +201,21 @@ type KeepQuickEditorProps<TMeta = Record<string, unknown>> = Omit<FormHTMLAttrib
|
|
|
199
201
|
debounceMs?: number;
|
|
200
202
|
collectionIds?: string[];
|
|
201
203
|
collectionLabels?: Record<string, string>;
|
|
204
|
+
showSaveButton?: boolean;
|
|
202
205
|
children?: ReactNode | ((state: KeepQuickEditorState<TMeta>) => ReactNode);
|
|
203
206
|
onClose?: () => void;
|
|
204
207
|
onSaved?: (item: KeepItem<TMeta>) => void;
|
|
205
208
|
onSaveError?: (error: unknown) => void;
|
|
206
209
|
};
|
|
207
210
|
/** A compact, temporary-state editor for note, tags, and collection metadata. */
|
|
208
|
-
declare function KeepQuickEditor<TMeta = Record<string, unknown>>({ item, debounceMs,
|
|
211
|
+
declare function KeepQuickEditor<TMeta = Record<string, unknown>>({ item, debounceMs, onSaved, onSaveError, ...props }: KeepQuickEditorProps<TMeta>): react.JSX.Element;
|
|
209
212
|
|
|
210
213
|
type KeepSavePopoverProps<TMeta = Record<string, unknown>> = Omit<HTMLAttributes<HTMLDivElement>, "children"> & {
|
|
211
214
|
item: KeepItemInput<TMeta>;
|
|
212
215
|
open?: boolean;
|
|
213
216
|
defaultOpen?: boolean;
|
|
214
217
|
onOpenChange?: (open: boolean) => void;
|
|
218
|
+
dialogLabel?: string;
|
|
215
219
|
buttonProps?: Omit<KeepButtonProps<TMeta>, "item" | "asChild"> & {
|
|
216
220
|
asChild?: false;
|
|
217
221
|
};
|
|
@@ -219,7 +223,7 @@ type KeepSavePopoverProps<TMeta = Record<string, unknown>> = Omit<HTMLAttributes
|
|
|
219
223
|
children?: ReactNode;
|
|
220
224
|
};
|
|
221
225
|
/** Opens a quick editor only after this trigger changes from unsaved to saved. */
|
|
222
|
-
declare function KeepSavePopover<TMeta = Record<string, unknown>>({ item, open: controlledOpen, defaultOpen, onOpenChange, buttonProps, editorProps, children, ...props }: KeepSavePopoverProps<TMeta>): react.JSX.Element;
|
|
226
|
+
declare function KeepSavePopover<TMeta = Record<string, unknown>>({ item, open: controlledOpen, defaultOpen, onOpenChange, dialogLabel, buttonProps, editorProps, children, ...props }: KeepSavePopoverProps<TMeta>): react.JSX.Element;
|
|
223
227
|
|
|
224
228
|
type KeepUndoProps = Omit<HTMLAttributes<HTMLElement>, "children"> & {
|
|
225
229
|
children?: ReactNode;
|
|
@@ -583,7 +587,15 @@ declare function KeepItemCardActions({ children, ...props }: KeepItemCardActions
|
|
|
583
587
|
type KeepItemCardActionSlotProps = Omit<KeepPinButtonProps<unknown>, "item" | "children"> & {
|
|
584
588
|
children?: ReactNode;
|
|
585
589
|
};
|
|
590
|
+
type KeepItemCardSaveProps = Omit<KeepButtonProps<unknown>, "item" | "asChild"> & {
|
|
591
|
+
asChild?: false;
|
|
592
|
+
};
|
|
593
|
+
type KeepItemCardRemoveProps = Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children"> & {
|
|
594
|
+
children?: ReactNode;
|
|
595
|
+
};
|
|
586
596
|
type KeepItemCardBadgeProps = HTMLAttributes<HTMLSpanElement>;
|
|
597
|
+
declare function KeepItemCardSave({ labels, getAriaLabel, ...props }: KeepItemCardSaveProps): react.JSX.Element;
|
|
598
|
+
declare function KeepItemCardRemove({ children, disabled, onClick, ...props }: KeepItemCardRemoveProps): react.JSX.Element;
|
|
587
599
|
declare function KeepItemCardPin({ children, ...props }: KeepItemCardActionSlotProps): react.JSX.Element;
|
|
588
600
|
declare function KeepItemCardArchive({ children, ...props }: Omit<KeepArchiveButtonProps<unknown>, "item" | "children"> & {
|
|
589
601
|
children?: ReactNode;
|
|
@@ -595,6 +607,8 @@ declare const KeepItemCard: typeof KeepItemCardRoot & {
|
|
|
595
607
|
Title: typeof KeepItemCardTitle;
|
|
596
608
|
Tags: typeof KeepItemCardTags;
|
|
597
609
|
Actions: typeof KeepItemCardActions;
|
|
610
|
+
Save: typeof KeepItemCardSave;
|
|
611
|
+
Remove: typeof KeepItemCardRemove;
|
|
598
612
|
Pin: typeof KeepItemCardPin;
|
|
599
613
|
Archive: typeof KeepItemCardArchive;
|
|
600
614
|
CollectionBadge: typeof KeepItemCardCollectionBadge;
|
|
@@ -732,7 +746,7 @@ type KeepTagEditorProps<TMeta = Record<string, unknown>> = Omit<FormHTMLAttribut
|
|
|
732
746
|
/** Edits one item's normalized tag set; Enter adds and Backspace removes the last tag. */
|
|
733
747
|
declare function KeepTagEditor<TMeta = Record<string, unknown>>({ item, availableTags, onSaved, onSaveError, render, ...props }: KeepTagEditorProps<TMeta>): react.JSX.Element;
|
|
734
748
|
|
|
735
|
-
type KeepUiLabelKey = "save" | "saved" | "remove" | "loading" | "saving" | "syncing" | "error" | "archive" | "unarchive" | "archived" | "pin" | "unpin" | "pinned" | "collection" | "allCollections" | "filterCollections" | "uncategorized" | "saveWithNote" | "allTags" | "tags" | "filterTags" | "activeFilters" | "clearFilters" | "clearAllFilters" | "removeFilter" | "noFilteredItems" | "noFilteredItemsDescription" | "emptyStorageDescription" | "note" | "saveNote" | "noItems" | "loadingItems" | "errorItems" | "search" | "sort" | "newest" | "oldest" | "savedNewest" | "savedOldest" | "updatedNewest" | "updatedOldest" | "previousPage" | "nextPage" | "pagination" | "page" | "selectItems" | "selectedCount" | "deleteSelected" | "tagsToApply" | "applyTags" | "savedMessage" | "removedMessage" | "restoredMessage" | "syncFailedMessage" | "stalePrunedMessage" | "undo" | "undoAvailable" | "selectionScope" | "currentPage" | "searchResults" | "allItems" | "localVersion" | "remoteVersion" | "updatedAt" | "statusAvailable" | "noteSavedMessage" | "exportData" | "importData" | "importMode" | "merge" | "replace" | "importedCount" | "failedCount" | "storageQuotaError" | "statusExpired" | "statusRemoved" | "statusDeleted" | "statusPrivate" | "statusUnknown" | "retry" | "removeFromList" | "pruneStale" | "retrySync" | "resolveSync" | "keepLocal" | "useServer" | "manualMerge" | "close" | "backupRecovery" | "backupRecoveryDescription" | "syncPending" | "syncSynced" | "syncConflict";
|
|
749
|
+
type KeepUiLabelKey = "save" | "saved" | "remove" | "loading" | "saving" | "syncing" | "error" | "archive" | "unarchive" | "archived" | "pin" | "unpin" | "pinned" | "collection" | "allCollections" | "filterCollections" | "uncategorized" | "saveWithNote" | "editSavedItem" | "unsavedChanges" | "allTags" | "tags" | "filterTags" | "activeFilters" | "clearFilters" | "clearAllFilters" | "removeFilter" | "noFilteredItems" | "noFilteredItemsDescription" | "emptyStorageDescription" | "note" | "saveNote" | "noItems" | "loadingItems" | "errorItems" | "search" | "sort" | "newest" | "oldest" | "savedNewest" | "savedOldest" | "updatedNewest" | "updatedOldest" | "previousPage" | "nextPage" | "pagination" | "page" | "selectItems" | "selectedCount" | "deleteSelected" | "tagsToApply" | "applyTags" | "savedMessage" | "removedMessage" | "restoredMessage" | "syncFailedMessage" | "stalePrunedMessage" | "undo" | "undoAvailable" | "selectionScope" | "currentPage" | "searchResults" | "allItems" | "localVersion" | "remoteVersion" | "updatedAt" | "statusAvailable" | "noteSavedMessage" | "exportData" | "importData" | "importMode" | "merge" | "replace" | "importedCount" | "failedCount" | "storageQuotaError" | "statusExpired" | "statusRemoved" | "statusDeleted" | "statusPrivate" | "statusUnknown" | "retry" | "removeFromList" | "pruneStale" | "retrySync" | "resolveSync" | "keepLocal" | "useServer" | "manualMerge" | "close" | "backupRecovery" | "backupRecoveryDescription" | "syncPending" | "syncSynced" | "syncConflict";
|
|
736
750
|
type KeepUiLabels = Partial<Record<KeepUiLabelKey, string>>;
|
|
737
751
|
type KeepUiLocaleLabels = Record<KeepUiLabelKey, string>;
|
|
738
752
|
|
|
@@ -1091,4 +1105,4 @@ type KeepKit<TMeta = Record<string, unknown>> = {
|
|
|
1091
1105
|
/** Create one typed application API for the core and standard UI layer. */
|
|
1092
1106
|
declare function createKeepKit<TMeta = Record<string, unknown>>(options?: CreateKeepKitOptions<TMeta>): KeepKit<TMeta>;
|
|
1093
1107
|
|
|
1094
|
-
export { type CreateKeepKitOptions, KeepActiveFiltersSummary, type KeepActiveFiltersSummaryProps, type KeepActiveFiltersSummaryState, KeepAnnouncements, type KeepAnnouncementsProps, KeepAnnouncer, KeepArchiveButton, type KeepArchiveButtonProps, type KeepArchiveButtonState, KeepBackup, type KeepBackupProps, KeepBulkActions, type KeepBulkActionsProps, type KeepBulkActionsState, KeepButton, type KeepButtonIcon, type KeepButtonIconProps, type KeepButtonIcons, type KeepButtonLabels, type KeepButtonProps, KeepCollection, type KeepCollectionControlProps, type KeepCollectionFeature, KeepCollectionFilter, type KeepCollectionOption, type KeepCollectionProps, KeepCollectionSelect, type KeepDisplayStatus, KeepEmptyState, type KeepEmptyStateProps, type KeepEmptyStateVariant, KeepHighlight, type KeepHighlightProps, type KeepImageProps, KeepItemCard, type KeepItemCardActionSlotProps, type KeepItemCardActionsProps, type KeepItemCardBadgeProps, type KeepItemCardContentProps, type KeepItemCardLinkProps, type KeepItemCardMediaProps, type KeepItemCardProps, KeepItemCardSkeleton, type KeepItemCardSkeletonProps, type KeepItemCardState, type KeepItemCardTagsProps, type KeepItemCardTitleProps, KeepItemCheckbox, type KeepItemCheckboxProps, KeepItemStatusBadge, type KeepItemStatusBadgeProps, type KeepKit, KeepKitProvider, type KeepKitProviderProps, KeepLayout, type KeepLayoutPreset, type KeepLayoutProps, KeepList, type KeepListProps, type KeepListState, KeepNavigator, KeepNoteEditor, type KeepNoteEditorProps, type KeepNoteEditorState, type KeepPagesRouterLike, KeepPagination, type KeepPaginationProps, type KeepPaginationState, KeepPinButton, type KeepPinButtonProps, type KeepPinButtonState, KeepPruneStaleButton, type KeepPruneStaleButtonProps, KeepQuickEditor, type KeepQuickEditorProps, type KeepQuickEditorState, type KeepReorderableItemState, KeepReorderableList, type KeepReorderableListProps, KeepSavePopover, type KeepSavePopoverProps, KeepSearchInput, type KeepSearchInputProps, type KeepSelectionScope, KeepShortcutHint, type KeepShortcutHintProps, KeepSortSelect, type KeepSortSelectProps, type KeepSortValue, KeepStaleNotice, type KeepStaleNoticeProps, KeepStatus, type KeepStatusLabels, type KeepStatusProps, type KeepStatusState, type KeepStatusValue, KeepSyncRecoveryDialog, type KeepSyncRecoveryDialogProps, KeepSyncStatusBanner, type KeepSyncStatusBannerProps, KeepTagEditor, type KeepTagEditorProps, type KeepTagEditorState, KeepTagFilter, type KeepTagFilterProps, type KeepTagFilterState, type KeepThemeDensity, type KeepThemeMode, type KeepThemeName, KeepThemeProvider, type KeepThemeProviderProps, type KeepThemeRadius, type KeepThemeVariables, type KeepToastFeedbackOptions, type KeepToastHandler, KeepTourBar, type KeepTourBarProps, type KeepTourShortcutsOptions, type KeepUiFeedbackEvent, type KeepUiLabelContext, type KeepUiLabelKey, type KeepUiLabels, type KeepUiLocale, type KeepUiLocaleLabels, KeepUiProvider, type KeepUiProviderProps, KeepUndo, type KeepUndoProps, type KeepUrlAdapter, type RenderProp, chainedFunction, composeRefs, createKeepKit, createNextPagesRouterAdapter, createSlot, getKeepLocaleLabels, highlightText, isAllSelected, keepThemeNames, mergeProps, toggleSelectAll, useKeepQuickEditor, useKeepToastFeedback, useKeepTourShortcuts, useKeepUiLabels, useKeepUrlSync };
|
|
1108
|
+
export { type CreateKeepKitOptions, KeepActiveFiltersSummary, type KeepActiveFiltersSummaryProps, type KeepActiveFiltersSummaryState, KeepAnnouncements, type KeepAnnouncementsProps, KeepAnnouncer, KeepArchiveButton, type KeepArchiveButtonProps, type KeepArchiveButtonState, KeepBackup, type KeepBackupProps, KeepBulkActions, type KeepBulkActionsProps, type KeepBulkActionsState, KeepButton, type KeepButtonIcon, type KeepButtonIconProps, type KeepButtonIcons, type KeepButtonLabels, type KeepButtonProps, KeepCollection, type KeepCollectionControlProps, type KeepCollectionFeature, KeepCollectionFilter, type KeepCollectionOption, type KeepCollectionProps, KeepCollectionSelect, type KeepDisplayStatus, KeepEmptyState, type KeepEmptyStateProps, type KeepEmptyStateVariant, KeepHighlight, type KeepHighlightProps, type KeepImageProps, KeepItemCard, type KeepItemCardActionSlotProps, type KeepItemCardActionsProps, type KeepItemCardBadgeProps, type KeepItemCardContentProps, type KeepItemCardLinkProps, type KeepItemCardMediaProps, type KeepItemCardProps, type KeepItemCardRemoveProps, type KeepItemCardSaveProps, KeepItemCardSkeleton, type KeepItemCardSkeletonProps, type KeepItemCardState, type KeepItemCardTagsProps, type KeepItemCardTitleProps, KeepItemCheckbox, type KeepItemCheckboxProps, KeepItemStatusBadge, type KeepItemStatusBadgeProps, type KeepKit, KeepKitProvider, type KeepKitProviderProps, KeepLayout, type KeepLayoutPreset, type KeepLayoutProps, KeepList, type KeepListProps, type KeepListState, KeepNavigator, KeepNoteEditor, type KeepNoteEditorProps, type KeepNoteEditorState, type KeepPagesRouterLike, KeepPagination, type KeepPaginationProps, type KeepPaginationState, KeepPinButton, type KeepPinButtonProps, type KeepPinButtonState, KeepPruneStaleButton, type KeepPruneStaleButtonProps, KeepQuickEditor, type KeepQuickEditorProps, type KeepQuickEditorState, type KeepReorderableItemState, KeepReorderableList, type KeepReorderableListProps, KeepSavePopover, type KeepSavePopoverProps, KeepSearchInput, type KeepSearchInputProps, type KeepSelectionScope, KeepShortcutHint, type KeepShortcutHintProps, KeepSortSelect, type KeepSortSelectProps, type KeepSortValue, KeepStaleNotice, type KeepStaleNoticeProps, KeepStatus, type KeepStatusLabels, type KeepStatusProps, type KeepStatusState, type KeepStatusValue, KeepSyncRecoveryDialog, type KeepSyncRecoveryDialogProps, KeepSyncStatusBanner, type KeepSyncStatusBannerProps, KeepTagEditor, type KeepTagEditorProps, type KeepTagEditorState, KeepTagFilter, type KeepTagFilterProps, type KeepTagFilterState, type KeepThemeDensity, type KeepThemeMode, type KeepThemeName, KeepThemeProvider, type KeepThemeProviderProps, type KeepThemeRadius, type KeepThemeVariables, type KeepToastFeedbackOptions, type KeepToastHandler, KeepTourBar, type KeepTourBarProps, type KeepTourShortcutsOptions, type KeepUiFeedbackEvent, type KeepUiLabelContext, type KeepUiLabelKey, type KeepUiLabels, type KeepUiLocale, type KeepUiLocaleLabels, KeepUiProvider, type KeepUiProviderProps, KeepUndo, type KeepUndoProps, type KeepUrlAdapter, type RenderProp, chainedFunction, composeRefs, createKeepKit, createNextPagesRouterAdapter, createSlot, getKeepLocaleLabels, highlightText, isAllSelected, keepThemeNames, mergeProps, toggleSelectAll, useKeepQuickEditor, useKeepToastFeedback, useKeepTourShortcuts, useKeepUiLabels, useKeepUrlSync };
|