@ai-matrx/design-system 0.19.18 → 0.20.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/CHANGELOG.md +8 -0
- package/dist/content-transfer/alchemy.svg +1 -1
- package/dist/content-transfer/icon.cjs +1 -1
- package/dist/content-transfer/icon.cjs.map +1 -1
- package/dist/content-transfer/icon.js +1 -1
- package/dist/content-transfer/icon.js.map +1 -1
- package/dist/content-transfer/portal.svg +1 -1
- package/dist/content-transfer.cjs +692 -407
- package/dist/content-transfer.cjs.map +1 -1
- package/dist/content-transfer.css +15 -0
- package/dist/content-transfer.d.cts +19 -4
- package/dist/content-transfer.d.ts +19 -4
- package/dist/content-transfer.js +684 -396
- package/dist/content-transfer.js.map +1 -1
- package/dist/data-table/copy-helpers.d.cts +3 -1
- package/dist/data-table/copy-helpers.d.ts +3 -1
- package/dist/data-table/copy-types.cjs.map +1 -1
- package/dist/data-table/copy-types.d.cts +4 -0
- package/dist/data-table/copy-types.d.ts +4 -0
- package/dist/data-table/data-row-inspector.cjs +659 -465
- package/dist/data-table/data-row-inspector.cjs.map +1 -1
- package/dist/data-table/data-row-inspector.js +662 -463
- package/dist/data-table/data-row-inspector.js.map +1 -1
- package/dist/data-table/data-row-window.cjs +657 -463
- package/dist/data-table/data-row-window.cjs.map +1 -1
- package/dist/data-table/data-row-window.js +663 -464
- package/dist/data-table/data-row-window.js.map +1 -1
- package/dist/data-table/filter-engine.d.cts +3 -1
- package/dist/data-table/filter-engine.d.ts +3 -1
- package/dist/data-table/host.cjs.map +1 -1
- package/dist/data-table/host.d.cts +6 -1
- package/dist/data-table/host.d.ts +6 -1
- package/dist/data-table/host.js.map +1 -1
- package/dist/data-table/index.cjs +1204 -980
- package/dist/data-table/index.cjs.map +1 -1
- package/dist/data-table/index.d.cts +4 -2
- package/dist/data-table/index.d.ts +4 -2
- package/dist/data-table/index.js +1343 -1114
- package/dist/data-table/index.js.map +1 -1
- package/dist/data-table/infer-filter.d.cts +3 -1
- package/dist/data-table/infer-filter.d.ts +3 -1
- package/dist/data-table/layered-filters.d.cts +3 -1
- package/dist/data-table/layered-filters.d.ts +3 -1
- package/dist/data-table/pagination.cjs +2 -2
- package/dist/data-table/pagination.cjs.map +1 -1
- package/dist/data-table/pagination.js +2 -2
- package/dist/data-table/pagination.js.map +1 -1
- package/dist/data-table/query-control.d.cts +3 -1
- package/dist/data-table/query-control.d.ts +3 -1
- package/dist/data-table/types.cjs.map +1 -1
- package/dist/data-table/types.d.cts +3 -1
- package/dist/data-table/types.d.ts +3 -1
- package/dist/data-table/url-state.d.cts +3 -1
- package/dist/data-table/url-state.d.ts +3 -1
- package/dist/data-table/uuid-cell.cjs.map +1 -1
- package/dist/data-table/uuid-cell.js.map +1 -1
- package/dist/data-table/xlsx.d.cts +3 -1
- package/dist/data-table/xlsx.d.ts +3 -1
- package/dist/extensions-DCHtNwG3.d.cts +32 -0
- package/dist/extensions-DCHtNwG3.d.ts +32 -0
- package/dist/tap-target.css +2 -2
- package/dist/{types-CRCy-Zy_.d.cts → types-C2yaTspG.d.cts} +5 -0
- package/dist/{types-Ch60uNn-.d.ts → types-DB30aCHu.d.ts} +5 -0
- package/package.json +1 -1
|
@@ -19,6 +19,11 @@
|
|
|
19
19
|
border: 1px solid hsl(var(--border));
|
|
20
20
|
box-shadow: none;
|
|
21
21
|
}
|
|
22
|
+
[data-alchemy-size="compact"] { width: 1.75rem; height: 1.75rem; }
|
|
23
|
+
[data-alchemy-size="compact"] .matrx-tap-icon { width: .875rem; height: .875rem; color: inherit; stroke-width: 2; }
|
|
24
|
+
/* Dense outline toolbars use the same package Button as their neighbors. */
|
|
25
|
+
[data-alchemy-trigger="outline"] { width: 1.75rem; height: 1.75rem; padding: 0; }
|
|
26
|
+
[data-alchemy-trigger="outline"] > svg { width: .875rem; height: .875rem; stroke-width: 2; }
|
|
22
27
|
@media (pointer: coarse) {
|
|
23
28
|
[data-alchemy-trigger] { width: 2.75rem; height: 2.75rem; }
|
|
24
29
|
}
|
|
@@ -448,3 +453,13 @@ body:has(.matrx-alchemy-workspace[data-state="open"]) > .matrx-alchemy-feedback
|
|
|
448
453
|
.matrx-alchemy-palette-destinations > summary > span { font-size: 0.6875rem; color: hsl(var(--muted-foreground)); }
|
|
449
454
|
.matrx-alchemy-palette-destinations > summary:hover { background: hsl(var(--accent)); }
|
|
450
455
|
.matrx-alchemy-palette-destinations > summary:focus-visible { outline: none; box-shadow: inset 0 0 0 2px hsl(var(--ring)); }
|
|
456
|
+
|
|
457
|
+
.matrx-alchemy-scope { display: grid; gap: .375rem; padding: .5rem; font-size: .75rem; }
|
|
458
|
+
.matrx-alchemy-scope select { width: 100%; min-width: 0; padding: .375rem; border: 1px solid hsl(var(--border)); border-radius: .375rem; color: inherit; background: hsl(var(--background)); }
|
|
459
|
+
|
|
460
|
+
/* Email review shares the preparation chrome, including hosts without Tailwind. */
|
|
461
|
+
.matrx-alchemy-email-review { max-height: 85dvh; overflow: auto; }
|
|
462
|
+
.matrx-alchemy-email-review .matrx-alchemy-preview { min-height: 12rem; max-height: 45dvh; resize: vertical; }
|
|
463
|
+
.matrx-alchemy-email-adjustments { font-size: .8125rem; overflow-wrap: anywhere; }
|
|
464
|
+
.matrx-alchemy-email-adjustments ul { margin: .5rem 0 0; padding-left: 1.25rem; }
|
|
465
|
+
@media (min-width: 768px) { .matrx-alchemy-email-review { width: min(32rem, calc(100vw - 2rem)); } }
|
|
@@ -2,6 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import { AgentPayloadInput, TransferOutcome, TransferCapabilities, Transport, PageAction, TransferPreferenceOverrides, Source, Payload, ExportProjection, Section, SurfaceHandle, TransferScope } from '@ai-matrx/kit/content-transfer';
|
|
3
3
|
import { AlchemyIcon } from './content-transfer/icon.cjs';
|
|
4
4
|
export { ALCHEMY_COPY_TRANSFORM_SVG, ALCHEMY_GLYPH_SVG } from './content-transfer/icon.cjs';
|
|
5
|
+
import { C as ContentTransferReference, a as ContentTransferReferencePort, b as ContentTransferEmailPort } from './extensions-DCHtNwG3.cjs';
|
|
6
|
+
export { c as createTransferEmailActions, t as tableDataFormat, d as tableSchemaFormat } from './extensions-DCHtNwG3.cjs';
|
|
5
7
|
|
|
6
8
|
type AlchemyOptionValues = Record<string, boolean | number>;
|
|
7
9
|
type AlchemySourceOption = {
|
|
@@ -106,6 +108,8 @@ interface MatrxCopyMenuProps {
|
|
|
106
108
|
label: string;
|
|
107
109
|
/** Stable record identity when this mounted control can switch between records. */
|
|
108
110
|
sourceId?: string;
|
|
111
|
+
references?: readonly ContentTransferReference[];
|
|
112
|
+
referenceActions?: readonly ContentTransferReferenceAction[];
|
|
109
113
|
/** Prepare the tabular view while keeping raw JSON and human copy formats. */
|
|
110
114
|
primarySource?: "table";
|
|
111
115
|
human?: Resolvable<string>;
|
|
@@ -139,7 +143,7 @@ interface MatrxCopyMenuProps {
|
|
|
139
143
|
unified?: boolean;
|
|
140
144
|
grouped?: boolean;
|
|
141
145
|
icon?: AlchemyIcon;
|
|
142
|
-
triggerVariant?: "transparent" | "glass";
|
|
146
|
+
triggerVariant?: "transparent" | "glass" | "outline";
|
|
143
147
|
}
|
|
144
148
|
/** Opinionated bridge for Matrx's existing content builders, with one transfer UI. */
|
|
145
149
|
declare function MatrxCopyMenu(props: MatrxCopyMenuProps): React.JSX.Element;
|
|
@@ -150,6 +154,11 @@ declare function defaultGroomerSelections(sections: AlchemyGroomerSection[]): Re
|
|
|
150
154
|
declare function buildGroomerPresetPayload(config: AlchemyGroomerConfig, preset: AlchemyGroomerPreset): AgentPayloadInput;
|
|
151
155
|
declare function groomerPresetVariants(getConfig: () => AlchemyGroomerConfig): AlchemyCopyVariant[];
|
|
152
156
|
|
|
157
|
+
type ContentTransferReferenceAction = {
|
|
158
|
+
id: string;
|
|
159
|
+
label: string;
|
|
160
|
+
run(): void | Promise<void>;
|
|
161
|
+
};
|
|
153
162
|
declare function AlchemyGlyph({ icon, ...props }: React.SVGAttributes<SVGSVGElement> & {
|
|
154
163
|
icon?: AlchemyIcon;
|
|
155
164
|
}): React.JSX.Element;
|
|
@@ -157,6 +166,8 @@ type ContentTransferCapabilities = TransferCapabilities & {
|
|
|
157
166
|
/** Opaque host session boundary. It is used only to reset local menu state. */
|
|
158
167
|
identityKey?: string;
|
|
159
168
|
transport?: Transport;
|
|
169
|
+
reference?: ContentTransferReferencePort;
|
|
170
|
+
email?: ContentTransferEmailPort;
|
|
160
171
|
actions?: PageAction[];
|
|
161
172
|
preferences?: TransferPreferenceOverrides;
|
|
162
173
|
onOutcome?: (outcome: TransferOutcome) => void;
|
|
@@ -173,7 +184,7 @@ declare function ContentTransferSurfaceProvider({ handle, children }: {
|
|
|
173
184
|
declare const useContentTransferSurface: () => SurfaceHandle | null;
|
|
174
185
|
type SerializableFormat = "plain" | "markdown" | "html" | "json" | "compact-json" | "csv" | "tsv";
|
|
175
186
|
interface TransferMenuPresentation {
|
|
176
|
-
group?: "save" | "chat";
|
|
187
|
+
group?: "save" | "chat" | "email";
|
|
177
188
|
prepared?: boolean;
|
|
178
189
|
hint?: string;
|
|
179
190
|
icon?: React.ComponentType<{
|
|
@@ -202,7 +213,10 @@ interface ContentTransferMenuProps {
|
|
|
202
213
|
table?: {
|
|
203
214
|
availableScopes: TransferScope[];
|
|
204
215
|
initialScope: TransferScope;
|
|
216
|
+
scopeLabels?: Partial<Record<TransferScope, string>>;
|
|
205
217
|
};
|
|
218
|
+
references?: readonly ContentTransferReference[];
|
|
219
|
+
referenceActions?: readonly ContentTransferReferenceAction[];
|
|
206
220
|
/** A quick format may explicitly capture a different representation. */
|
|
207
221
|
formatSources?: Partial<Record<SerializableFormat, Source | Payload>>;
|
|
208
222
|
/** Set false for action-only hosts; source formats and adapters are then omitted. */
|
|
@@ -215,7 +229,8 @@ interface ContentTransferMenuProps {
|
|
|
215
229
|
/** Portal is the default Alchemy mark; copy-transform remains opt-in. */
|
|
216
230
|
icon?: AlchemyIcon;
|
|
217
231
|
/** Uses the canonical TapTargetButton presentation. */
|
|
218
|
-
triggerVariant?: "transparent" | "glass";
|
|
232
|
+
triggerVariant?: "transparent" | "glass" | "outline";
|
|
233
|
+
triggerSize?: "default" | "compact";
|
|
219
234
|
className?: string;
|
|
220
235
|
stopPropagation?: boolean;
|
|
221
236
|
hide?: readonly ("copy" | "prepare" | "download")[];
|
|
@@ -230,4 +245,4 @@ interface ContentTransferController {
|
|
|
230
245
|
}
|
|
231
246
|
declare function ContentTransferMenu(props: ContentTransferMenuProps): React.JSX.Element;
|
|
232
247
|
|
|
233
|
-
export { type AlchemyCopyVariant, type AlchemyCustomSource, type AlchemyDetail, type AlchemyExportItem, AlchemyGlyph, type AlchemyGroomerConfig, type AlchemyGroomerPreset, type AlchemyGroomerSection, AlchemyIcon, type AlchemyOptionValues, type AlchemySourceOption, type ContentTransferCapabilities, ContentTransferCapabilitiesProvider, type ContentTransferController, ContentTransferMenu, type ContentTransferMenuProps, ContentTransferSurfaceProvider, GROOMER_LEVELS, MatrxCopyMenu, type MatrxCopyMenuProps, type SerializableFormat, type TransferMenuPresentation, type TransferMenuVariant, applyGroomerPreset, buildGroomerPresetPayload, defaultGroomerSelections, groomerPresetVariants, useContentTransferCapabilities, useContentTransferSurface };
|
|
248
|
+
export { type AlchemyCopyVariant, type AlchemyCustomSource, type AlchemyDetail, type AlchemyExportItem, AlchemyGlyph, type AlchemyGroomerConfig, type AlchemyGroomerPreset, type AlchemyGroomerSection, AlchemyIcon, type AlchemyOptionValues, type AlchemySourceOption, type ContentTransferCapabilities, ContentTransferCapabilitiesProvider, type ContentTransferController, ContentTransferEmailPort, ContentTransferMenu, type ContentTransferMenuProps, ContentTransferReference, type ContentTransferReferenceAction, ContentTransferReferencePort, ContentTransferSurfaceProvider, GROOMER_LEVELS, MatrxCopyMenu, type MatrxCopyMenuProps, type SerializableFormat, type TransferMenuPresentation, type TransferMenuVariant, applyGroomerPreset, buildGroomerPresetPayload, defaultGroomerSelections, groomerPresetVariants, useContentTransferCapabilities, useContentTransferSurface };
|
|
@@ -2,6 +2,8 @@ import * as React from 'react';
|
|
|
2
2
|
import { AgentPayloadInput, TransferOutcome, TransferCapabilities, Transport, PageAction, TransferPreferenceOverrides, Source, Payload, ExportProjection, Section, SurfaceHandle, TransferScope } from '@ai-matrx/kit/content-transfer';
|
|
3
3
|
import { AlchemyIcon } from './content-transfer/icon.js';
|
|
4
4
|
export { ALCHEMY_COPY_TRANSFORM_SVG, ALCHEMY_GLYPH_SVG } from './content-transfer/icon.js';
|
|
5
|
+
import { C as ContentTransferReference, a as ContentTransferReferencePort, b as ContentTransferEmailPort } from './extensions-DCHtNwG3.js';
|
|
6
|
+
export { c as createTransferEmailActions, t as tableDataFormat, d as tableSchemaFormat } from './extensions-DCHtNwG3.js';
|
|
5
7
|
|
|
6
8
|
type AlchemyOptionValues = Record<string, boolean | number>;
|
|
7
9
|
type AlchemySourceOption = {
|
|
@@ -106,6 +108,8 @@ interface MatrxCopyMenuProps {
|
|
|
106
108
|
label: string;
|
|
107
109
|
/** Stable record identity when this mounted control can switch between records. */
|
|
108
110
|
sourceId?: string;
|
|
111
|
+
references?: readonly ContentTransferReference[];
|
|
112
|
+
referenceActions?: readonly ContentTransferReferenceAction[];
|
|
109
113
|
/** Prepare the tabular view while keeping raw JSON and human copy formats. */
|
|
110
114
|
primarySource?: "table";
|
|
111
115
|
human?: Resolvable<string>;
|
|
@@ -139,7 +143,7 @@ interface MatrxCopyMenuProps {
|
|
|
139
143
|
unified?: boolean;
|
|
140
144
|
grouped?: boolean;
|
|
141
145
|
icon?: AlchemyIcon;
|
|
142
|
-
triggerVariant?: "transparent" | "glass";
|
|
146
|
+
triggerVariant?: "transparent" | "glass" | "outline";
|
|
143
147
|
}
|
|
144
148
|
/** Opinionated bridge for Matrx's existing content builders, with one transfer UI. */
|
|
145
149
|
declare function MatrxCopyMenu(props: MatrxCopyMenuProps): React.JSX.Element;
|
|
@@ -150,6 +154,11 @@ declare function defaultGroomerSelections(sections: AlchemyGroomerSection[]): Re
|
|
|
150
154
|
declare function buildGroomerPresetPayload(config: AlchemyGroomerConfig, preset: AlchemyGroomerPreset): AgentPayloadInput;
|
|
151
155
|
declare function groomerPresetVariants(getConfig: () => AlchemyGroomerConfig): AlchemyCopyVariant[];
|
|
152
156
|
|
|
157
|
+
type ContentTransferReferenceAction = {
|
|
158
|
+
id: string;
|
|
159
|
+
label: string;
|
|
160
|
+
run(): void | Promise<void>;
|
|
161
|
+
};
|
|
153
162
|
declare function AlchemyGlyph({ icon, ...props }: React.SVGAttributes<SVGSVGElement> & {
|
|
154
163
|
icon?: AlchemyIcon;
|
|
155
164
|
}): React.JSX.Element;
|
|
@@ -157,6 +166,8 @@ type ContentTransferCapabilities = TransferCapabilities & {
|
|
|
157
166
|
/** Opaque host session boundary. It is used only to reset local menu state. */
|
|
158
167
|
identityKey?: string;
|
|
159
168
|
transport?: Transport;
|
|
169
|
+
reference?: ContentTransferReferencePort;
|
|
170
|
+
email?: ContentTransferEmailPort;
|
|
160
171
|
actions?: PageAction[];
|
|
161
172
|
preferences?: TransferPreferenceOverrides;
|
|
162
173
|
onOutcome?: (outcome: TransferOutcome) => void;
|
|
@@ -173,7 +184,7 @@ declare function ContentTransferSurfaceProvider({ handle, children }: {
|
|
|
173
184
|
declare const useContentTransferSurface: () => SurfaceHandle | null;
|
|
174
185
|
type SerializableFormat = "plain" | "markdown" | "html" | "json" | "compact-json" | "csv" | "tsv";
|
|
175
186
|
interface TransferMenuPresentation {
|
|
176
|
-
group?: "save" | "chat";
|
|
187
|
+
group?: "save" | "chat" | "email";
|
|
177
188
|
prepared?: boolean;
|
|
178
189
|
hint?: string;
|
|
179
190
|
icon?: React.ComponentType<{
|
|
@@ -202,7 +213,10 @@ interface ContentTransferMenuProps {
|
|
|
202
213
|
table?: {
|
|
203
214
|
availableScopes: TransferScope[];
|
|
204
215
|
initialScope: TransferScope;
|
|
216
|
+
scopeLabels?: Partial<Record<TransferScope, string>>;
|
|
205
217
|
};
|
|
218
|
+
references?: readonly ContentTransferReference[];
|
|
219
|
+
referenceActions?: readonly ContentTransferReferenceAction[];
|
|
206
220
|
/** A quick format may explicitly capture a different representation. */
|
|
207
221
|
formatSources?: Partial<Record<SerializableFormat, Source | Payload>>;
|
|
208
222
|
/** Set false for action-only hosts; source formats and adapters are then omitted. */
|
|
@@ -215,7 +229,8 @@ interface ContentTransferMenuProps {
|
|
|
215
229
|
/** Portal is the default Alchemy mark; copy-transform remains opt-in. */
|
|
216
230
|
icon?: AlchemyIcon;
|
|
217
231
|
/** Uses the canonical TapTargetButton presentation. */
|
|
218
|
-
triggerVariant?: "transparent" | "glass";
|
|
232
|
+
triggerVariant?: "transparent" | "glass" | "outline";
|
|
233
|
+
triggerSize?: "default" | "compact";
|
|
219
234
|
className?: string;
|
|
220
235
|
stopPropagation?: boolean;
|
|
221
236
|
hide?: readonly ("copy" | "prepare" | "download")[];
|
|
@@ -230,4 +245,4 @@ interface ContentTransferController {
|
|
|
230
245
|
}
|
|
231
246
|
declare function ContentTransferMenu(props: ContentTransferMenuProps): React.JSX.Element;
|
|
232
247
|
|
|
233
|
-
export { type AlchemyCopyVariant, type AlchemyCustomSource, type AlchemyDetail, type AlchemyExportItem, AlchemyGlyph, type AlchemyGroomerConfig, type AlchemyGroomerPreset, type AlchemyGroomerSection, AlchemyIcon, type AlchemyOptionValues, type AlchemySourceOption, type ContentTransferCapabilities, ContentTransferCapabilitiesProvider, type ContentTransferController, ContentTransferMenu, type ContentTransferMenuProps, ContentTransferSurfaceProvider, GROOMER_LEVELS, MatrxCopyMenu, type MatrxCopyMenuProps, type SerializableFormat, type TransferMenuPresentation, type TransferMenuVariant, applyGroomerPreset, buildGroomerPresetPayload, defaultGroomerSelections, groomerPresetVariants, useContentTransferCapabilities, useContentTransferSurface };
|
|
248
|
+
export { type AlchemyCopyVariant, type AlchemyCustomSource, type AlchemyDetail, type AlchemyExportItem, AlchemyGlyph, type AlchemyGroomerConfig, type AlchemyGroomerPreset, type AlchemyGroomerSection, AlchemyIcon, type AlchemyOptionValues, type AlchemySourceOption, type ContentTransferCapabilities, ContentTransferCapabilitiesProvider, type ContentTransferController, ContentTransferEmailPort, ContentTransferMenu, type ContentTransferMenuProps, ContentTransferReference, type ContentTransferReferenceAction, ContentTransferReferencePort, ContentTransferSurfaceProvider, GROOMER_LEVELS, MatrxCopyMenu, type MatrxCopyMenuProps, type SerializableFormat, type TransferMenuPresentation, type TransferMenuVariant, applyGroomerPreset, buildGroomerPresetPayload, defaultGroomerSelections, groomerPresetVariants, useContentTransferCapabilities, useContentTransferSurface };
|