@krak-stack/registry 0.1.32 → 0.1.33

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 (44) hide show
  1. package/dist/components/ui/code-block.d.ts +8 -6
  2. package/dist/components/ui/code-block.js +40 -19
  3. package/dist/components/ui/copy-button.d.ts +9 -6
  4. package/dist/components/ui/copy-button.js +15 -8
  5. package/dist/components/ui/data-table.d.ts +9 -5
  6. package/dist/components/ui/data-table.js +74 -479
  7. package/dist/components/ui/editing-locale-switcher.d.ts +8 -4
  8. package/dist/components/ui/editing-locale-switcher.js +20 -448
  9. package/dist/components/ui/effect-form.d.ts +39 -10
  10. package/dist/components/ui/effect-form.js +141 -527
  11. package/dist/components/ui/error-component.d.ts +4 -2
  12. package/dist/components/ui/error-component.js +24 -450
  13. package/dist/components/ui/file-picker.d.ts +4 -2
  14. package/dist/components/ui/file-picker.js +25 -452
  15. package/dist/components/ui/form.d.ts +123 -71
  16. package/dist/components/ui/form.js +81 -474
  17. package/dist/components/ui/google-map.d.ts +2 -1
  18. package/dist/components/ui/google-map.js +4 -439
  19. package/dist/components/ui/icon-input.d.ts +50 -1
  20. package/dist/components/ui/icon-input.js +30 -446
  21. package/dist/components/ui/loading.d.ts +7 -1
  22. package/dist/components/ui/loading.js +4 -438
  23. package/dist/components/ui/locale-switcher.d.ts +8 -4
  24. package/dist/components/ui/locale-switcher.js +29 -453
  25. package/dist/components/ui/pagination.d.ts +5 -3
  26. package/dist/components/ui/pagination.js +5 -439
  27. package/dist/components/ui/search-menu.d.ts +4 -2
  28. package/dist/components/ui/search-menu.js +6 -440
  29. package/dist/components/ui/theme-switcher.d.ts +5 -3
  30. package/dist/components/ui/theme-switcher.js +6 -440
  31. package/dist/components/ui/virtualized-combobox.d.ts +4 -2
  32. package/dist/components/ui/virtualized-combobox.js +11 -443
  33. package/dist/lib/docs.d.ts +2 -0
  34. package/dist/lib/docs.js +86 -481
  35. package/dist/lib/docs.server.js +0 -21
  36. package/dist/lib/documentation-toolkit.js +0 -21
  37. package/dist/lib/markdown/content.d.ts +4 -5
  38. package/dist/services/agent/client/index.js +75 -463
  39. package/dist/services/agent/client/widget.d.ts +6 -3
  40. package/dist/services/notification/client/index.js +8 -440
  41. package/dist/services/notification/client/notification-menu.d.ts +6 -3
  42. package/dist/services/notification/public.js +8 -440
  43. package/package.json +1 -1
  44. package/dist/paraglide/runtime.d.ts +0 -978
@@ -1,12 +1,14 @@
1
- type CodeBlockMessages = {
2
- copy?: string;
3
- copied?: string;
4
- copyFailed?: string;
1
+ import { type CopyButtonMessages } from "./copy-button.js";
2
+ export type CodeBlockMessages = CopyButtonMessages & {
3
+ codeDescription: (language: string) => string;
5
4
  };
5
+ export type CodeBlockMessageTranslations = Partial<Record<string, Partial<CodeBlockMessages>>>;
6
+ export declare const codeBlockMessages: (locale?: string, translations?: CodeBlockMessageTranslations) => CodeBlockMessages;
6
7
  type CodeBlockProps = {
7
8
  code: string;
8
9
  language?: string;
9
- messages?: CodeBlockMessages;
10
+ locale?: string;
11
+ messages?: CodeBlockMessageTranslations;
10
12
  };
11
- export declare function CodeBlock({ code, language, messages, }: CodeBlockProps): import("react").JSX.Element;
13
+ export declare function CodeBlock({ code, language, locale, messages, }: CodeBlockProps): import("react").JSX.Element;
12
14
  export {};
@@ -50,11 +50,21 @@ function Button({
50
50
  import { Check, Copy, TriangleAlert } from "lucide-react";
51
51
  import { useEffect, useRef, useState } from "react";
52
52
  import { jsx as jsx2, jsxs } from "react/jsx-runtime";
53
+ var messages = {
54
+ en: { copy: "Copy", copied: "Copied", copyFailed: "Copy failed" },
55
+ fr: { copy: "Copier", copied: "Copié", copyFailed: "Échec de la copie" }
56
+ };
57
+ var copyButtonMessages = (locale = "en", translations) => ({
58
+ ...locale.startsWith("fr") ? messages.fr : messages.en,
59
+ ...translations?.[locale.split("-")[0] ?? locale],
60
+ ...translations?.[locale]
61
+ });
53
62
  function CopyButton({
54
63
  value,
55
64
  valueDescription,
56
65
  copyVariant = "default",
57
- messages,
66
+ locale = "en",
67
+ messages: messages2,
58
68
  onCopied,
59
69
  onCopyError,
60
70
  resetDelay = 1500,
@@ -65,11 +75,7 @@ function CopyButton({
65
75
  }) {
66
76
  const [copyState, setCopyState] = useState("idle");
67
77
  const copyTimeout = useRef(undefined);
68
- const labels = {
69
- copy: messages?.copy ?? "Copy",
70
- copied: messages?.copied ?? "Copied",
71
- copyFailed: messages?.copyFailed ?? "Copy failed"
72
- };
78
+ const labels = copyButtonMessages(locale, messages2);
73
79
  const accessibleLabel = ariaLabel ?? (valueDescription ? `${labels.copy} ${valueDescription}` : labels.copy);
74
80
  const isLarge = copyVariant === "large";
75
81
  const defaultSize = copyVariant === "sm" ? "icon-xs" : isLarge ? "sm" : "icon-sm";
@@ -91,7 +97,7 @@ function CopyButton({
91
97
  onCopied?.();
92
98
  } catch (error) {
93
99
  setCopyState("failed");
94
- onCopyError?.(error instanceof Error ? error : new Error("Copy failed", { cause: error }));
100
+ onCopyError?.(error instanceof Error ? error : new Error(labels.copyFailed, { cause: error }));
95
101
  }
96
102
  resetCopyState();
97
103
  };
@@ -147,21 +153,34 @@ var themeCss = `${createThemeCss({
147
153
  color: inherit;
148
154
  }
149
155
  [data-code-theme] pre.th-code code { font: inherit; }`;
156
+ var messages2 = {
157
+ en: {
158
+ codeDescription: (language) => `${language} code`,
159
+ copy: "Copy",
160
+ copied: "Copied",
161
+ copyFailed: "Copy failed"
162
+ },
163
+ fr: {
164
+ codeDescription: (language) => `code ${language}`,
165
+ copy: "Copier",
166
+ copied: "Copié",
167
+ copyFailed: "Échec de la copie"
168
+ }
169
+ };
170
+ var codeBlockMessages = (locale = "en", translations) => ({
171
+ ...locale.startsWith("fr") ? messages2.fr : messages2.en,
172
+ ...translations?.[locale.split("-")[0] ?? locale],
173
+ ...translations?.[locale]
174
+ });
150
175
  function CodeBlock({
151
176
  code,
152
177
  language = "text",
153
- messages
178
+ locale = "en",
179
+ messages: messages3
154
180
  }) {
155
181
  const normalizedLanguage = language.toLowerCase() || "text";
156
182
  const highlighted = highlight(code, { lang: normalizedLanguage });
157
- const copyMessages = {};
158
- if (messages?.copy !== undefined)
159
- copyMessages.copy = messages.copy;
160
- if (messages?.copied !== undefined)
161
- copyMessages.copied = messages.copied;
162
- if (messages?.copyFailed !== undefined) {
163
- copyMessages.copyFailed = messages.copyFailed;
164
- }
183
+ const labels = codeBlockMessages(locale, messages3);
165
184
  return /* @__PURE__ */ jsxs2("div", {
166
185
  className: "not-prose bg-muted overflow-hidden rounded-md border text-[var(--th-token)]",
167
186
  "data-code-theme": true,
@@ -178,9 +197,10 @@ function CodeBlock({
178
197
  }),
179
198
  /* @__PURE__ */ jsx3(CopyButton, {
180
199
  value: code,
181
- valueDescription: `${highlighted.lang} code`,
200
+ valueDescription: labels.codeDescription(highlighted.lang),
182
201
  variant: "secondary",
183
- messages: copyMessages
202
+ locale,
203
+ messages: { [locale]: labels }
184
204
  })
185
205
  ]
186
206
  }),
@@ -192,5 +212,6 @@ function CodeBlock({
192
212
  });
193
213
  }
194
214
  export {
195
- CodeBlock
215
+ CodeBlock,
216
+ codeBlockMessages
196
217
  };
@@ -1,18 +1,21 @@
1
1
  import { Button } from "./button.js";
2
2
  import type { ComponentProps } from "react";
3
- type CopyButtonMessages = {
4
- copy?: string;
5
- copied?: string;
6
- copyFailed?: string;
3
+ export type CopyButtonMessages = {
4
+ copy: string;
5
+ copied: string;
6
+ copyFailed: string;
7
7
  };
8
+ export type CopyButtonMessageTranslations = Partial<Record<string, Partial<CopyButtonMessages>>>;
9
+ export declare const copyButtonMessages: (locale?: string, translations?: CopyButtonMessageTranslations) => CopyButtonMessages;
8
10
  type CopyButtonProps = Omit<ComponentProps<typeof Button>, "children" | "onClick"> & {
9
11
  value: string;
10
12
  valueDescription?: string;
11
13
  copyVariant?: "default" | "sm" | "large";
12
- messages?: CopyButtonMessages;
14
+ locale?: string;
15
+ messages?: CopyButtonMessageTranslations;
13
16
  onCopied?: () => void;
14
17
  onCopyError?: (error: Error) => void;
15
18
  resetDelay?: number;
16
19
  };
17
- export declare function CopyButton({ value, valueDescription, copyVariant, messages, onCopied, onCopyError, resetDelay, disabled, size, "aria-label": ariaLabel, ...props }: CopyButtonProps): import("react").JSX.Element;
20
+ export declare function CopyButton({ value, valueDescription, copyVariant, locale, messages, onCopied, onCopyError, resetDelay, disabled, size, "aria-label": ariaLabel, ...props }: CopyButtonProps): import("react").JSX.Element;
18
21
  export {};
@@ -50,11 +50,21 @@ function Button({
50
50
  import { Check, Copy, TriangleAlert } from "lucide-react";
51
51
  import { useEffect, useRef, useState } from "react";
52
52
  import { jsx as jsx2, jsxs } from "react/jsx-runtime";
53
+ var messages = {
54
+ en: { copy: "Copy", copied: "Copied", copyFailed: "Copy failed" },
55
+ fr: { copy: "Copier", copied: "Copié", copyFailed: "Échec de la copie" }
56
+ };
57
+ var copyButtonMessages = (locale = "en", translations) => ({
58
+ ...locale.startsWith("fr") ? messages.fr : messages.en,
59
+ ...translations?.[locale.split("-")[0] ?? locale],
60
+ ...translations?.[locale]
61
+ });
53
62
  function CopyButton({
54
63
  value,
55
64
  valueDescription,
56
65
  copyVariant = "default",
57
- messages,
66
+ locale = "en",
67
+ messages: messages2,
58
68
  onCopied,
59
69
  onCopyError,
60
70
  resetDelay = 1500,
@@ -65,11 +75,7 @@ function CopyButton({
65
75
  }) {
66
76
  const [copyState, setCopyState] = useState("idle");
67
77
  const copyTimeout = useRef(undefined);
68
- const labels = {
69
- copy: messages?.copy ?? "Copy",
70
- copied: messages?.copied ?? "Copied",
71
- copyFailed: messages?.copyFailed ?? "Copy failed"
72
- };
78
+ const labels = copyButtonMessages(locale, messages2);
73
79
  const accessibleLabel = ariaLabel ?? (valueDescription ? `${labels.copy} ${valueDescription}` : labels.copy);
74
80
  const isLarge = copyVariant === "large";
75
81
  const defaultSize = copyVariant === "sm" ? "icon-xs" : isLarge ? "sm" : "icon-sm";
@@ -91,7 +97,7 @@ function CopyButton({
91
97
  onCopied?.();
92
98
  } catch (error) {
93
99
  setCopyState("failed");
94
- onCopyError?.(error instanceof Error ? error : new Error("Copy failed", { cause: error }));
100
+ onCopyError?.(error instanceof Error ? error : new Error(labels.copyFailed, { cause: error }));
95
101
  }
96
102
  resetCopyState();
97
103
  };
@@ -125,5 +131,6 @@ function CopyButton({
125
131
  });
126
132
  }
127
133
  export {
128
- CopyButton
134
+ CopyButton,
135
+ copyButtonMessages
129
136
  };
@@ -33,6 +33,8 @@ export interface DataTableListItemContext<TData> {
33
33
  export interface DataTableListOptions {
34
34
  emptyLabel: ReactNode;
35
35
  display?: "list" | "icon";
36
+ locale?: string;
37
+ messages?: DataTableMessageTranslations;
36
38
  visibleCount?: number;
37
39
  }
38
40
  export type DataTableListColumn<TData> = DataTableListOptions & {
@@ -84,7 +86,7 @@ export type DataTableListCellProps = DataTableListCellActionsProps & (EditableDa
84
86
  onRemove?: never;
85
87
  }));
86
88
  export interface DataTableDateOptions {
87
- /** Defaults to the current Paraglide locale. */
89
+ /** Defaults to the DataTable locale, or English outside a DataTable. */
88
90
  locale?: string;
89
91
  /** Defaults to UTC. Calendar-only strings retain their date in every zone. */
90
92
  timeZone?: string;
@@ -275,7 +277,8 @@ export type DataTableMessages = PaginationMessages & {
275
277
  selected: string;
276
278
  };
277
279
  export type DataTableMessageOverrides = Partial<DataTableMessages>;
278
- export declare const dataTableMessages: (overrides?: DataTableMessageOverrides) => {
280
+ export type DataTableMessageTranslations = Partial<Record<string, DataTableMessageOverrides>>;
281
+ export declare const dataTableMessages: (locale?: string, translations?: DataTableMessageTranslations) => {
279
282
  pageSize: string;
280
283
  results: (count: number) => string;
281
284
  selectedOf: (selected: number, total: number) => string;
@@ -356,11 +359,12 @@ export interface DataTableProps<TData extends RowData> {
356
359
  getRowId?: (row: TData) => string;
357
360
  state?: DataTablePublicState;
358
361
  initialState?: Partial<DataTablePublicState>;
362
+ locale?: string;
359
363
  onStateChange?: (state: DataTablePublicState) => void;
360
364
  status?: DataTableStatus;
361
365
  features?: DataTableFeatures<TData>;
362
366
  onRowClicked?: (row: TData) => void;
363
- messages?: DataTableMessageOverrides;
367
+ messages?: DataTableMessageTranslations;
364
368
  }
365
369
  export interface DataTableColumn<TData extends RowData> {
366
370
  id: string;
@@ -386,8 +390,8 @@ export interface DataTableModel<TData extends RowData> {
386
390
  export declare const normalizeDataTableColumns: <TData extends RowData>(columnDefs: readonly DataTableColDef<TData>[], columnSizing?: Readonly<Record<string, number>>) => DataTableColumn<TData>[];
387
391
  export declare const getDataTableWidth: <TData extends RowData>(columns: readonly DataTableColumn<TData>[], utilityColumns?: number) => number;
388
392
  export declare const buildDataTableRows: <TData extends RowData>(rowData: readonly TData[], columns: readonly DataTableColumn<TData>[], getRowId?: (row: TData) => string) => DataTableModelRow<TData>[];
389
- export declare const getDataTableExportValue: <TData extends RowData>(row: DataTableModelRow<TData>, column: DataTableColumn<TData>) => unknown;
390
- export declare const filterDataTableRows: <TData extends RowData>(rows: readonly DataTableModelRow<TData>[], columns: readonly DataTableColumn<TData>[], globalFilter: string) => DataTableModelRow<TData>[];
393
+ export declare const getDataTableExportValue: <TData extends RowData>(row: DataTableModelRow<TData>, column: DataTableColumn<TData>, locale?: string) => unknown;
394
+ export declare const filterDataTableRows: <TData extends RowData>(rows: readonly DataTableModelRow<TData>[], columns: readonly DataTableColumn<TData>[], globalFilter: string, locale?: string) => DataTableModelRow<TData>[];
391
395
  export declare const sortDataTableRows: <TData extends RowData>(rows: readonly DataTableModelRow<TData>[], columns: readonly DataTableColumn<TData>[], sorting: NonNullable<QueryType["sort"]>) => DataTableModelRow<TData>[];
392
396
  export declare const paginateDataTableRows: <TData extends RowData>(rows: readonly DataTableModelRow<TData>[], pagination: Pick<QueryType, "page" | "pageSize">) => DataTableModelRow<TData>[];
393
397
  export declare const reorderDataTableRows: <TData extends RowData>(rows: readonly DataTableModelRow<TData>[], sourceRowId: string, targetRowId: string) => TData[];