@oods/components-react 0.3.3 → 0.4.1
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 +1 -1
- package/dist/chunk-2VEQWKGK.js +1 -0
- package/dist/{chunk-BPEHI36W.js → chunk-NLWXBLPA.js} +227 -8
- package/dist/{chunk-XAWAMZUQ.js → chunk-XEX22E24.js} +3 -2
- package/dist/index.cjs +642 -472
- package/dist/index.d.cts +27 -6
- package/dist/index.d.ts +27 -6
- package/dist/index.js +366 -89
- package/dist/ported.cjs +232 -344
- package/dist/ported.js +2 -2
- package/dist/status.cjs +22 -342
- package/dist/status.d.cts +1 -35
- package/dist/status.d.ts +1 -35
- package/dist/status.js +1 -1
- package/dist/table.cjs +5 -303
- package/dist/table.js +2 -2
- package/dist/types.d.cts +111 -3
- package/dist/types.d.ts +111 -3
- package/evidence/react-readiness.v1.json +293 -1
- package/package.json +3 -3
- package/dist/chunk-G74PKSW3.js +0 -338
package/dist/types.d.ts
CHANGED
|
@@ -3,6 +3,8 @@ import * as React from 'react';
|
|
|
3
3
|
type ComponentTone = 'neutral' | 'info' | 'accent' | 'positive' | 'success' | 'warning' | 'critical' | 'danger';
|
|
4
4
|
type ComponentEmphasis = 'subtle' | 'solid';
|
|
5
5
|
type ComponentSize = 'sm' | 'md' | 'lg';
|
|
6
|
+
type ButtonSize = 'xs' | ComponentSize;
|
|
7
|
+
type ButtonIntent = 'neutral' | 'primary' | 'secondary' | 'outline' | 'ghost' | 'link' | 'destructive' | 'success' | 'warning' | 'danger';
|
|
6
8
|
type FieldDensity = 'compact' | 'comfortable';
|
|
7
9
|
type FieldValidation = {
|
|
8
10
|
readonly state: 'error' | 'warning' | 'success' | 'info';
|
|
@@ -39,10 +41,29 @@ interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>
|
|
|
39
41
|
readonly content?: React.ReactNode;
|
|
40
42
|
readonly children?: React.ReactNode;
|
|
41
43
|
readonly asChild?: boolean;
|
|
42
|
-
readonly intent?:
|
|
43
|
-
readonly size?:
|
|
44
|
+
readonly intent?: ButtonIntent;
|
|
45
|
+
readonly size?: ButtonSize;
|
|
44
46
|
readonly onActivate?: React.MouseEventHandler<HTMLElement>;
|
|
45
47
|
}
|
|
48
|
+
type NativeDialogProps = Omit<React.DialogHTMLAttributes<HTMLDialogElement>, 'open' | 'title' | 'children' | 'className' | 'style' | 'onClose' | 'onCancel'>;
|
|
49
|
+
/**
|
|
50
|
+
* s222-m02 (#2502 ruling 11): a native dialog whose consumer owns open. onClose reports the close control, Escape or a
|
|
51
|
+
* browser close request; modal (default true) opens it with showModal(), and modal false shows it in place.
|
|
52
|
+
*/
|
|
53
|
+
interface DialogProps extends NativeDialogProps {
|
|
54
|
+
readonly id?: string;
|
|
55
|
+
readonly open?: boolean;
|
|
56
|
+
readonly modal?: boolean;
|
|
57
|
+
readonly title: React.ReactNode;
|
|
58
|
+
readonly description?: React.ReactNode;
|
|
59
|
+
readonly dismissLabel?: string;
|
|
60
|
+
readonly size?: 'sm' | 'md' | 'lg';
|
|
61
|
+
readonly actions?: React.ReactNode;
|
|
62
|
+
readonly children?: React.ReactNode;
|
|
63
|
+
readonly className?: string;
|
|
64
|
+
readonly style?: React.CSSProperties;
|
|
65
|
+
readonly onClose?: () => void;
|
|
66
|
+
}
|
|
46
67
|
type SafeContainerElement = 'div' | 'section' | 'article' | 'aside' | 'main';
|
|
47
68
|
interface CardProps extends React.HTMLAttributes<HTMLElement> {
|
|
48
69
|
readonly elevated?: boolean;
|
|
@@ -98,6 +119,17 @@ interface VizAreaPreviewProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
98
119
|
readonly svgNarrow?: string;
|
|
99
120
|
/** The same chart rendered at the wide size; the figure shows it instead of svg when its own inline size is at least 900px. */
|
|
100
121
|
readonly svgWide?: string;
|
|
122
|
+
/**
|
|
123
|
+
* s222-m02 (F7): the same chart rendered in the dark and high-contrast themes, at the design, narrow and wide sizes. With
|
|
124
|
+
* any of them, svg, svgNarrow and svgWide are the light renders, and the figure shows the renders of the theme the
|
|
125
|
+
* nearest [data-theme] names.
|
|
126
|
+
*/
|
|
127
|
+
readonly svgDark?: string;
|
|
128
|
+
readonly svgDarkNarrow?: string;
|
|
129
|
+
readonly svgDarkWide?: string;
|
|
130
|
+
readonly svgHc?: string;
|
|
131
|
+
readonly svgHcNarrow?: string;
|
|
132
|
+
readonly svgHcWide?: string;
|
|
101
133
|
readonly description?: string;
|
|
102
134
|
readonly width?: number;
|
|
103
135
|
readonly height?: number;
|
|
@@ -342,6 +374,43 @@ interface CheckboxProps extends NativeCheckboxProps, CommonFieldProps {
|
|
|
342
374
|
readonly onCheckedChange?: (checked: boolean) => void;
|
|
343
375
|
readonly onUpdate?: (checked: boolean) => void;
|
|
344
376
|
}
|
|
377
|
+
type NativeSwitchProps = Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'id' | 'type' | 'role' | 'value' | 'children' | 'className' | 'style' | 'onChange'>;
|
|
378
|
+
/** s222-m02 (#2502 ruling 11): Checkbox's field API on a button with role switch; native button props reach the button. */
|
|
379
|
+
interface SwitchProps extends NativeSwitchProps {
|
|
380
|
+
readonly id: string;
|
|
381
|
+
readonly label: React.ReactNode;
|
|
382
|
+
readonly checked?: boolean;
|
|
383
|
+
readonly defaultChecked?: boolean;
|
|
384
|
+
readonly required?: boolean;
|
|
385
|
+
readonly help?: React.ReactNode;
|
|
386
|
+
readonly validation?: FieldValidation;
|
|
387
|
+
readonly size?: 'sm' | 'md';
|
|
388
|
+
readonly className?: string;
|
|
389
|
+
readonly style?: React.CSSProperties;
|
|
390
|
+
readonly onCheckedChange?: (checked: boolean) => void;
|
|
391
|
+
readonly onUpdate?: (checked: boolean) => void;
|
|
392
|
+
}
|
|
393
|
+
type NativeSegmentedControlProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'id' | 'role' | 'children' | 'className' | 'style' | 'defaultValue' | 'onChange'>;
|
|
394
|
+
/**
|
|
395
|
+
* s223-m02 (#2527 ruling 10): one choice from two to five options, shown as joined segments. Select's value API on native
|
|
396
|
+
* radios: value (controlled) or defaultValue, onChange with the radio's change event, then onValueChange and onUpdate with
|
|
397
|
+
* the chosen value. Native div props reach the radiogroup.
|
|
398
|
+
*/
|
|
399
|
+
interface SegmentedControlProps extends NativeSegmentedControlProps {
|
|
400
|
+
readonly id: string;
|
|
401
|
+
readonly label: React.ReactNode;
|
|
402
|
+
readonly options: readonly SelectOption[];
|
|
403
|
+
readonly value?: string;
|
|
404
|
+
readonly defaultValue?: string;
|
|
405
|
+
readonly name?: string;
|
|
406
|
+
readonly size?: 'xs' | 'sm' | 'md' | 'lg';
|
|
407
|
+
readonly disabled?: boolean;
|
|
408
|
+
readonly className?: string;
|
|
409
|
+
readonly style?: React.CSSProperties;
|
|
410
|
+
readonly onChange?: React.ChangeEventHandler<HTMLInputElement>;
|
|
411
|
+
readonly onValueChange?: (value: string) => void;
|
|
412
|
+
readonly onUpdate?: (value: string) => void;
|
|
413
|
+
}
|
|
345
414
|
type SelectOption = {
|
|
346
415
|
readonly value: string;
|
|
347
416
|
readonly label: React.ReactNode;
|
|
@@ -356,6 +425,38 @@ interface SelectProps extends NativeSelectProps, CommonFieldProps {
|
|
|
356
425
|
readonly onValueChange?: (value: string) => void;
|
|
357
426
|
readonly onUpdate?: (value: string) => void;
|
|
358
427
|
}
|
|
428
|
+
/** s223-m02 (#2527 ruling 11): a combobox option. Its label is text, because typing filters the list on it. */
|
|
429
|
+
type ComboboxOption = {
|
|
430
|
+
readonly value: string;
|
|
431
|
+
readonly label: string;
|
|
432
|
+
readonly disabled?: boolean;
|
|
433
|
+
};
|
|
434
|
+
type NativeComboboxProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'id' | 'type' | 'role' | 'value' | 'defaultValue' | 'size' | 'name' | 'placeholder' | 'required' | 'disabled' | 'children' | 'className' | 'style' | 'onChange'>;
|
|
435
|
+
/**
|
|
436
|
+
* s223-m02 (#2527 ruling 11): pick one value from a list by typing to filter it. Select's field API on an input with role
|
|
437
|
+
* combobox: value (controlled) or defaultValue (uncontrolled) names the chosen option, and picking one calls
|
|
438
|
+
* onValueChange and onUpdate with its value. The input's own text is the filter, so its native onChange is not offered;
|
|
439
|
+
* other native input props reach the input.
|
|
440
|
+
*/
|
|
441
|
+
interface ComboboxProps extends NativeComboboxProps {
|
|
442
|
+
readonly id: string;
|
|
443
|
+
readonly label: React.ReactNode;
|
|
444
|
+
readonly options?: readonly ComboboxOption[];
|
|
445
|
+
readonly value?: string;
|
|
446
|
+
readonly defaultValue?: string;
|
|
447
|
+
readonly placeholder?: string;
|
|
448
|
+
readonly name?: string;
|
|
449
|
+
readonly required?: boolean;
|
|
450
|
+
readonly disabled?: boolean;
|
|
451
|
+
readonly help?: React.ReactNode;
|
|
452
|
+
readonly validation?: FieldValidation;
|
|
453
|
+
/** The control height, as Button, Input and Select: xs 24, sm 28, md 32 (default) or lg 40. */
|
|
454
|
+
readonly size?: 'xs' | 'sm' | 'md' | 'lg';
|
|
455
|
+
readonly className?: string;
|
|
456
|
+
readonly style?: React.CSSProperties;
|
|
457
|
+
readonly onValueChange?: (value: string) => void;
|
|
458
|
+
readonly onUpdate?: (value: string) => void;
|
|
459
|
+
}
|
|
359
460
|
type NativeTextareaProps = Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, 'id' | 'children' | 'className' | 'style'>;
|
|
360
461
|
interface TextareaProps extends NativeTextareaProps, CommonFieldProps {
|
|
361
462
|
readonly textareaClassName?: string;
|
|
@@ -390,6 +491,7 @@ type TableColumn<Row extends TableRowData = TableRowData> = {
|
|
|
390
491
|
};
|
|
391
492
|
interface TableProps<Row extends TableRowData = TableRowData> extends Omit<React.TableHTMLAttributes<HTMLTableElement>, 'children'> {
|
|
392
493
|
readonly caption?: React.ReactNode;
|
|
494
|
+
readonly showCaption?: boolean;
|
|
393
495
|
readonly columns?: readonly TableColumn<Row>[];
|
|
394
496
|
readonly rows?: readonly Row[];
|
|
395
497
|
readonly density?: FieldDensity;
|
|
@@ -523,6 +625,8 @@ interface OwnershipMetaProps extends Omit<React.HTMLAttributes<HTMLDivElement>,
|
|
|
523
625
|
readonly owner_type?: string;
|
|
524
626
|
readonly role?: string;
|
|
525
627
|
readonly ownershipRole?: string;
|
|
628
|
+
/** s223-m01: the owner's display name; with it the meta reads as one phrase, "Owned by <name> · <type>". */
|
|
629
|
+
readonly ownerLabel?: string;
|
|
526
630
|
}
|
|
527
631
|
interface TagSummaryProps extends React.HTMLAttributes<HTMLElement> {
|
|
528
632
|
readonly label?: string;
|
|
@@ -552,11 +656,15 @@ interface ArchiveSummaryProps extends React.HTMLAttributes<HTMLElement> {
|
|
|
552
656
|
interface ArchivePillProps extends Omit<ClassificationBadgeProps, 'category' | 'mode' | 'value'> {
|
|
553
657
|
readonly isArchived?: boolean | string;
|
|
554
658
|
readonly value?: boolean | string;
|
|
659
|
+
/** s223-m01: render nothing while the record is not archived, so a card shows only a state worth stating. */
|
|
660
|
+
readonly hideWhenFalse?: boolean;
|
|
555
661
|
}
|
|
556
662
|
interface CancellationBadgeProps extends Omit<ClassificationBadgeProps, 'category' | 'mode' | 'value'> {
|
|
557
663
|
readonly cancelAtPeriodEnd?: boolean | string;
|
|
558
664
|
readonly isCancelled?: boolean | string;
|
|
559
665
|
readonly value?: boolean | string;
|
|
666
|
+
/** s223-m01: render nothing while no cancellation is scheduled. */
|
|
667
|
+
readonly hideWhenFalse?: boolean;
|
|
560
668
|
}
|
|
561
669
|
interface CancellationFormProps extends Omit<React.FormHTMLAttributes<HTMLFormElement>, 'title' | 'name'>, FormShellProps {
|
|
562
670
|
readonly embedded?: boolean;
|
|
@@ -577,4 +685,4 @@ interface PriceCardMetaProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
577
685
|
readonly billingInterval?: string;
|
|
578
686
|
}
|
|
579
687
|
|
|
580
|
-
export type { AddressCollectionPanelProps, AddressEditorProps, AddressEditorValue, AddressSummaryBadgeProps, AddressValidationTimelineProps, ArchivePillProps, ArchiveSummaryProps, AuditEventProps, BadgeProps, BannerProps, ButtonProps, CancellationBadgeProps, CancellationFormProps, CardHeaderProps, CardProps, CheckboxProps, ClassificationBadgeProps, ClassificationEditorProps, ClassificationPanelProps, ColorSwatchProps, ColorizedBadgeProps, CommonFieldProps, ComponentEmphasis, ComponentSize, ComponentTone, DatePickerProps, DetailHeaderProps, FieldDensity, FieldValidation, FilterDescriptor, FilterPanelProps, FormLabelGroupProps, GridProps, HeaderElement, HeaderLevel, InlineLabelProps, InputProps, LabelCellProps, LayoutGap, MembershipAuditTimelineProps, MembershipPanelProps, MessageEventTimelineProps, MessageStatusBadgeProps, OwnerBadgeProps, OwnershipMetaProps, OwnershipSummaryProps, PanelSectionProps, PreferenceEditorProps, PreferencePanelProps, PreferenceSummaryBadgeProps, PreferenceTimelineProps, PriceCardMetaProps, PriceSummaryProps, RoleAssignmentFormProps, RoleBadgeListProps, SafeContainerElement, SafeTextElement, SelectOption, SelectProps, StackProps, StatusSelectorProps, TabItem, TableBodyProps, TableCaptionProps, TableCellProps, TableColumn, TableCompound, TableHeadProps, TableHeaderCellProps, TableProps, TableRowData, TableRowProps, TabsProps, TagInputProps, TagManagerProps, TagPillsProps, TagSummaryProps, TemplatePickerProps, TextProps, TextareaProps, VizAreaPreviewProps };
|
|
688
|
+
export type { AddressCollectionPanelProps, AddressEditorProps, AddressEditorValue, AddressSummaryBadgeProps, AddressValidationTimelineProps, ArchivePillProps, ArchiveSummaryProps, AuditEventProps, BadgeProps, BannerProps, ButtonIntent, ButtonProps, ButtonSize, CancellationBadgeProps, CancellationFormProps, CardHeaderProps, CardProps, CheckboxProps, ClassificationBadgeProps, ClassificationEditorProps, ClassificationPanelProps, ColorSwatchProps, ColorizedBadgeProps, ComboboxOption, ComboboxProps, CommonFieldProps, ComponentEmphasis, ComponentSize, ComponentTone, DatePickerProps, DetailHeaderProps, DialogProps, FieldDensity, FieldValidation, FilterDescriptor, FilterPanelProps, FormLabelGroupProps, GridProps, HeaderElement, HeaderLevel, InlineLabelProps, InputProps, LabelCellProps, LayoutGap, MembershipAuditTimelineProps, MembershipPanelProps, MessageEventTimelineProps, MessageStatusBadgeProps, OwnerBadgeProps, OwnershipMetaProps, OwnershipSummaryProps, PanelSectionProps, PreferenceEditorProps, PreferencePanelProps, PreferenceSummaryBadgeProps, PreferenceTimelineProps, PriceCardMetaProps, PriceSummaryProps, RoleAssignmentFormProps, RoleBadgeListProps, SafeContainerElement, SafeTextElement, SegmentedControlProps, SelectOption, SelectProps, StackProps, StatusSelectorProps, SwitchProps, TabItem, TableBodyProps, TableCaptionProps, TableCellProps, TableColumn, TableCompound, TableHeadProps, TableHeaderCellProps, TableProps, TableRowData, TableRowProps, TabsProps, TagInputProps, TagManagerProps, TagPillsProps, TagSummaryProps, TemplatePickerProps, TextProps, TextareaProps, VizAreaPreviewProps };
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"mission": "s193-m05",
|
|
4
4
|
"target": "react",
|
|
5
5
|
"contractVersion": "1.1.0",
|
|
6
|
-
"derivation": "Each emissionEligible value is asserted with @oods/component-contracts evaluateEmissionEligibility. Sprint 185 additions have built public declarations and passing shared scenarios, breadth, server-render and accessibility tests; prior nucleus row evidence is preserved. Sprint 186 wave 2 appends ClassificationPanel, FilterPanel, PriceSummary, AddressCollectionPanel, MembershipPanel, PreferencePanel, TagManager, AddressSummaryBadge, MessageStatusBadge, PreferenceSummaryBadge, RoleBadgeList, TagPills, AddressValidationTimeline, AuditEvent, MembershipAuditTimeline, MessageEventTimeline, PreferenceTimeline, AddressEditor, PreferenceEditor, RoleAssignmentForm, StatusSelector, TagInput and TemplatePicker root exports with the same six evidence classes; prior rows are preserved. Sprint 186 m06 folds the former eight ported families into the root contract, exports, declarations and shared scenarios. Historical readiness files remain as evidence; readiness-ported resolved to this root document from Sprint 186 m06 until Sprint 200 m04 retired that subpath, and this root document is now the only readiness export. Sprint 187 m02 adds five naming/classification families with the same six evidence classes. Native classification controls are presentational; no save or domain-change action is claimed. Sprint 187 m03 adds OwnerBadge, OwnershipSummary, OwnershipMeta and TagSummary with the same six reference classes and explicit scalar/trait-array semantics. No ownership transfer or tagging action is claimed. Sprint 192 m03 projects passing per-root axe and executable scenario results into accessibility and interaction evidence; native unwired controls are measured without claiming a domain action. Sprint 192 m04 projects per-root six-cell browser contrast/token checks and screenshot hashes into visualThemes. Sprint 192 m05 adds the three retained roots and derives all accessibility, interaction and theme claims from passing 75-root measurements. Sprint 193 m04 adds nine declared non-Viz recipes and derives all accessibility, interaction and theme claims from passing 84-root measurements. Sprint 193 m05 adds 25 typed Viz recipes and derives all accessibility, interaction and theme claims from passing 109-root measurements.",
|
|
6
|
+
"derivation": "Each emissionEligible value is asserted with @oods/component-contracts evaluateEmissionEligibility. Sprint 185 additions have built public declarations and passing shared scenarios, breadth, server-render and accessibility tests; prior nucleus row evidence is preserved. Sprint 186 wave 2 appends ClassificationPanel, FilterPanel, PriceSummary, AddressCollectionPanel, MembershipPanel, PreferencePanel, TagManager, AddressSummaryBadge, MessageStatusBadge, PreferenceSummaryBadge, RoleBadgeList, TagPills, AddressValidationTimeline, AuditEvent, MembershipAuditTimeline, MessageEventTimeline, PreferenceTimeline, AddressEditor, PreferenceEditor, RoleAssignmentForm, StatusSelector, TagInput and TemplatePicker root exports with the same six evidence classes; prior rows are preserved. Sprint 186 m06 folds the former eight ported families into the root contract, exports, declarations and shared scenarios. Historical readiness files remain as evidence; readiness-ported resolved to this root document from Sprint 186 m06 until Sprint 200 m04 retired that subpath, and this root document is now the only readiness export. Sprint 187 m02 adds five naming/classification families with the same six evidence classes. Native classification controls are presentational; no save or domain-change action is claimed. Sprint 187 m03 adds OwnerBadge, OwnershipSummary, OwnershipMeta and TagSummary with the same six reference classes and explicit scalar/trait-array semantics. No ownership transfer or tagging action is claimed. Sprint 192 m03 projects passing per-root axe and executable scenario results into accessibility and interaction evidence; native unwired controls are measured without claiming a domain action. Sprint 192 m04 projects per-root six-cell browser contrast/token checks and screenshot hashes into visualThemes. Sprint 192 m05 adds the three retained roots and derives all accessibility, interaction and theme claims from passing 75-root measurements. Sprint 193 m04 adds nine declared non-Viz recipes and derives all accessibility, interaction and theme claims from passing 84-root measurements. Sprint 193 m05 adds 25 typed Viz recipes and derives all accessibility, interaction and theme claims from passing 109-root measurements. Sprint 222 m02 adds Switch and Dialog with the same six evidence classes and derives their accessibility, interaction and theme claims from passing 112-root measurements.",
|
|
7
7
|
"rows": [
|
|
8
8
|
{
|
|
9
9
|
"componentId": "AddressCollectionPanel",
|
|
@@ -2259,6 +2259,79 @@
|
|
|
2259
2259
|
}
|
|
2260
2260
|
}
|
|
2261
2261
|
},
|
|
2262
|
+
{
|
|
2263
|
+
"componentId": "Combobox",
|
|
2264
|
+
"state": "implemented-evidence-complete",
|
|
2265
|
+
"emissionEligible": true,
|
|
2266
|
+
"evidence": {
|
|
2267
|
+
"versionedContract": {
|
|
2268
|
+
"status": "passed",
|
|
2269
|
+
"refs": [
|
|
2270
|
+
"packages/component-contracts/src/contracts.ts#Combobox"
|
|
2271
|
+
]
|
|
2272
|
+
},
|
|
2273
|
+
"targetImplementation": {
|
|
2274
|
+
"status": "passed",
|
|
2275
|
+
"refs": [
|
|
2276
|
+
"packages/components-react/src/combobox.tsx#Combobox"
|
|
2277
|
+
]
|
|
2278
|
+
},
|
|
2279
|
+
"packageExport": {
|
|
2280
|
+
"status": "passed",
|
|
2281
|
+
"refs": [
|
|
2282
|
+
"packages/components-react/src/index.ts#Combobox"
|
|
2283
|
+
]
|
|
2284
|
+
},
|
|
2285
|
+
"publicDeclaration": {
|
|
2286
|
+
"status": "passed",
|
|
2287
|
+
"refs": [
|
|
2288
|
+
"packages/components-react/dist/index.d.ts#Combobox"
|
|
2289
|
+
]
|
|
2290
|
+
},
|
|
2291
|
+
"dependencyClosure": {
|
|
2292
|
+
"status": "passed",
|
|
2293
|
+
"refs": [
|
|
2294
|
+
"packages/components-react/test/package-contract.spec.ts#dependency-closure"
|
|
2295
|
+
]
|
|
2296
|
+
},
|
|
2297
|
+
"frameworkScenario": {
|
|
2298
|
+
"status": "passed",
|
|
2299
|
+
"refs": [
|
|
2300
|
+
"packages/components-react/test/scenarios.spec.tsx#combobox-filter-and-pick"
|
|
2301
|
+
]
|
|
2302
|
+
},
|
|
2303
|
+
"accessibility": {
|
|
2304
|
+
"status": "passed",
|
|
2305
|
+
"classification": "verified",
|
|
2306
|
+
"refs": [
|
|
2307
|
+
"artifacts/product-reality/sprint-223/m02/combobox/react-measured.json#Combobox"
|
|
2308
|
+
]
|
|
2309
|
+
},
|
|
2310
|
+
"interaction": {
|
|
2311
|
+
"status": "passed",
|
|
2312
|
+
"classification": "verified",
|
|
2313
|
+
"refs": [
|
|
2314
|
+
"artifacts/product-reality/sprint-223/m02/combobox/react-measured.json#Combobox"
|
|
2315
|
+
]
|
|
2316
|
+
},
|
|
2317
|
+
"visualThemes": {
|
|
2318
|
+
"status": "passed",
|
|
2319
|
+
"classification": "verified",
|
|
2320
|
+
"cells": [
|
|
2321
|
+
"A-light",
|
|
2322
|
+
"A-dark",
|
|
2323
|
+
"A-hc",
|
|
2324
|
+
"B-light",
|
|
2325
|
+
"B-dark",
|
|
2326
|
+
"B-hc"
|
|
2327
|
+
],
|
|
2328
|
+
"refs": [
|
|
2329
|
+
"artifacts/product-reality/sprint-223/m02/combobox/react-theme/report.json#Combobox"
|
|
2330
|
+
]
|
|
2331
|
+
}
|
|
2332
|
+
},
|
|
2333
|
+
"measurementRoot": "artifacts/product-reality/sprint-223/m02/combobox"
|
|
2334
|
+
},
|
|
2262
2335
|
{
|
|
2263
2336
|
"componentId": "CommunicationDetailPanel",
|
|
2264
2337
|
"state": "implemented-evidence-complete",
|
|
@@ -2550,6 +2623,79 @@
|
|
|
2550
2623
|
}
|
|
2551
2624
|
}
|
|
2552
2625
|
},
|
|
2626
|
+
{
|
|
2627
|
+
"componentId": "Dialog",
|
|
2628
|
+
"state": "implemented-evidence-complete",
|
|
2629
|
+
"emissionEligible": true,
|
|
2630
|
+
"evidence": {
|
|
2631
|
+
"versionedContract": {
|
|
2632
|
+
"status": "passed",
|
|
2633
|
+
"refs": [
|
|
2634
|
+
"packages/component-contracts/src/contracts.ts#Dialog"
|
|
2635
|
+
]
|
|
2636
|
+
},
|
|
2637
|
+
"targetImplementation": {
|
|
2638
|
+
"status": "passed",
|
|
2639
|
+
"refs": [
|
|
2640
|
+
"packages/components-react/src/presentational.tsx#Dialog"
|
|
2641
|
+
]
|
|
2642
|
+
},
|
|
2643
|
+
"packageExport": {
|
|
2644
|
+
"status": "passed",
|
|
2645
|
+
"refs": [
|
|
2646
|
+
"packages/components-react/src/index.ts#Dialog"
|
|
2647
|
+
]
|
|
2648
|
+
},
|
|
2649
|
+
"publicDeclaration": {
|
|
2650
|
+
"status": "passed",
|
|
2651
|
+
"refs": [
|
|
2652
|
+
"packages/components-react/dist/index.d.ts#Dialog"
|
|
2653
|
+
]
|
|
2654
|
+
},
|
|
2655
|
+
"dependencyClosure": {
|
|
2656
|
+
"status": "passed",
|
|
2657
|
+
"refs": [
|
|
2658
|
+
"packages/components-react/test/package-contract.spec.ts#dependency-closure"
|
|
2659
|
+
]
|
|
2660
|
+
},
|
|
2661
|
+
"frameworkScenario": {
|
|
2662
|
+
"status": "passed",
|
|
2663
|
+
"refs": [
|
|
2664
|
+
"packages/components-react/test/scenarios.spec.tsx#dialog-confirm"
|
|
2665
|
+
]
|
|
2666
|
+
},
|
|
2667
|
+
"accessibility": {
|
|
2668
|
+
"status": "passed",
|
|
2669
|
+
"classification": "verified",
|
|
2670
|
+
"refs": [
|
|
2671
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-measured.json#Dialog"
|
|
2672
|
+
]
|
|
2673
|
+
},
|
|
2674
|
+
"interaction": {
|
|
2675
|
+
"status": "passed",
|
|
2676
|
+
"classification": "verified",
|
|
2677
|
+
"refs": [
|
|
2678
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-measured.json#Dialog"
|
|
2679
|
+
]
|
|
2680
|
+
},
|
|
2681
|
+
"visualThemes": {
|
|
2682
|
+
"status": "passed",
|
|
2683
|
+
"classification": "verified",
|
|
2684
|
+
"cells": [
|
|
2685
|
+
"A-light",
|
|
2686
|
+
"A-dark",
|
|
2687
|
+
"A-hc",
|
|
2688
|
+
"B-light",
|
|
2689
|
+
"B-dark",
|
|
2690
|
+
"B-hc"
|
|
2691
|
+
],
|
|
2692
|
+
"refs": [
|
|
2693
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-theme/report.json#Dialog"
|
|
2694
|
+
]
|
|
2695
|
+
}
|
|
2696
|
+
},
|
|
2697
|
+
"measurementRoot": "artifacts/product-reality/sprint-222/m02/switch-dialog"
|
|
2698
|
+
},
|
|
2553
2699
|
{
|
|
2554
2700
|
"componentId": "FilterPanel",
|
|
2555
2701
|
"state": "implemented-evidence-complete",
|
|
@@ -4733,6 +4879,79 @@
|
|
|
4733
4879
|
}
|
|
4734
4880
|
}
|
|
4735
4881
|
},
|
|
4882
|
+
{
|
|
4883
|
+
"componentId": "SegmentedControl",
|
|
4884
|
+
"state": "implemented-evidence-complete",
|
|
4885
|
+
"emissionEligible": true,
|
|
4886
|
+
"evidence": {
|
|
4887
|
+
"versionedContract": {
|
|
4888
|
+
"status": "passed",
|
|
4889
|
+
"refs": [
|
|
4890
|
+
"packages/component-contracts/src/contracts.ts#SegmentedControl"
|
|
4891
|
+
]
|
|
4892
|
+
},
|
|
4893
|
+
"targetImplementation": {
|
|
4894
|
+
"status": "passed",
|
|
4895
|
+
"refs": [
|
|
4896
|
+
"packages/components-react/src/segmented-control.tsx#SegmentedControl"
|
|
4897
|
+
]
|
|
4898
|
+
},
|
|
4899
|
+
"packageExport": {
|
|
4900
|
+
"status": "passed",
|
|
4901
|
+
"refs": [
|
|
4902
|
+
"packages/components-react/src/index.ts#SegmentedControl"
|
|
4903
|
+
]
|
|
4904
|
+
},
|
|
4905
|
+
"publicDeclaration": {
|
|
4906
|
+
"status": "passed",
|
|
4907
|
+
"refs": [
|
|
4908
|
+
"packages/components-react/dist/index.d.ts#SegmentedControl"
|
|
4909
|
+
]
|
|
4910
|
+
},
|
|
4911
|
+
"dependencyClosure": {
|
|
4912
|
+
"status": "passed",
|
|
4913
|
+
"refs": [
|
|
4914
|
+
"packages/components-react/test/package-contract.spec.ts#dependency-closure"
|
|
4915
|
+
]
|
|
4916
|
+
},
|
|
4917
|
+
"frameworkScenario": {
|
|
4918
|
+
"status": "passed",
|
|
4919
|
+
"refs": [
|
|
4920
|
+
"packages/components-react/test/scenarios.spec.tsx#segmented-control-billing-period"
|
|
4921
|
+
]
|
|
4922
|
+
},
|
|
4923
|
+
"accessibility": {
|
|
4924
|
+
"status": "passed",
|
|
4925
|
+
"classification": "verified",
|
|
4926
|
+
"refs": [
|
|
4927
|
+
"artifacts/product-reality/sprint-223/m02/segmented-control/react-measured.json#SegmentedControl"
|
|
4928
|
+
]
|
|
4929
|
+
},
|
|
4930
|
+
"interaction": {
|
|
4931
|
+
"status": "passed",
|
|
4932
|
+
"classification": "verified",
|
|
4933
|
+
"refs": [
|
|
4934
|
+
"artifacts/product-reality/sprint-223/m02/segmented-control/react-measured.json#SegmentedControl"
|
|
4935
|
+
]
|
|
4936
|
+
},
|
|
4937
|
+
"visualThemes": {
|
|
4938
|
+
"status": "passed",
|
|
4939
|
+
"classification": "verified",
|
|
4940
|
+
"cells": [
|
|
4941
|
+
"A-light",
|
|
4942
|
+
"A-dark",
|
|
4943
|
+
"A-hc",
|
|
4944
|
+
"B-light",
|
|
4945
|
+
"B-dark",
|
|
4946
|
+
"B-hc"
|
|
4947
|
+
],
|
|
4948
|
+
"refs": [
|
|
4949
|
+
"artifacts/product-reality/sprint-223/m02/segmented-control/react-theme/report.json#SegmentedControl"
|
|
4950
|
+
]
|
|
4951
|
+
}
|
|
4952
|
+
},
|
|
4953
|
+
"measurementRoot": "artifacts/product-reality/sprint-223/m02/segmented-control"
|
|
4954
|
+
},
|
|
4736
4955
|
{
|
|
4737
4956
|
"componentId": "Select",
|
|
4738
4957
|
"state": "implemented-evidence-complete",
|
|
@@ -5314,6 +5533,79 @@
|
|
|
5314
5533
|
}
|
|
5315
5534
|
}
|
|
5316
5535
|
},
|
|
5536
|
+
{
|
|
5537
|
+
"componentId": "Switch",
|
|
5538
|
+
"state": "implemented-evidence-complete",
|
|
5539
|
+
"emissionEligible": true,
|
|
5540
|
+
"evidence": {
|
|
5541
|
+
"versionedContract": {
|
|
5542
|
+
"status": "passed",
|
|
5543
|
+
"refs": [
|
|
5544
|
+
"packages/component-contracts/src/contracts.ts#Switch"
|
|
5545
|
+
]
|
|
5546
|
+
},
|
|
5547
|
+
"targetImplementation": {
|
|
5548
|
+
"status": "passed",
|
|
5549
|
+
"refs": [
|
|
5550
|
+
"packages/components-react/src/fields.tsx#Switch"
|
|
5551
|
+
]
|
|
5552
|
+
},
|
|
5553
|
+
"packageExport": {
|
|
5554
|
+
"status": "passed",
|
|
5555
|
+
"refs": [
|
|
5556
|
+
"packages/components-react/src/index.ts#Switch"
|
|
5557
|
+
]
|
|
5558
|
+
},
|
|
5559
|
+
"publicDeclaration": {
|
|
5560
|
+
"status": "passed",
|
|
5561
|
+
"refs": [
|
|
5562
|
+
"packages/components-react/dist/index.d.ts#Switch"
|
|
5563
|
+
]
|
|
5564
|
+
},
|
|
5565
|
+
"dependencyClosure": {
|
|
5566
|
+
"status": "passed",
|
|
5567
|
+
"refs": [
|
|
5568
|
+
"packages/components-react/test/package-contract.spec.ts#dependency-closure"
|
|
5569
|
+
]
|
|
5570
|
+
},
|
|
5571
|
+
"frameworkScenario": {
|
|
5572
|
+
"status": "passed",
|
|
5573
|
+
"refs": [
|
|
5574
|
+
"packages/components-react/test/scenarios.spec.tsx#switch-controlled"
|
|
5575
|
+
]
|
|
5576
|
+
},
|
|
5577
|
+
"accessibility": {
|
|
5578
|
+
"status": "passed",
|
|
5579
|
+
"classification": "verified",
|
|
5580
|
+
"refs": [
|
|
5581
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-measured.json#Switch"
|
|
5582
|
+
]
|
|
5583
|
+
},
|
|
5584
|
+
"interaction": {
|
|
5585
|
+
"status": "passed",
|
|
5586
|
+
"classification": "verified",
|
|
5587
|
+
"refs": [
|
|
5588
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-measured.json#Switch"
|
|
5589
|
+
]
|
|
5590
|
+
},
|
|
5591
|
+
"visualThemes": {
|
|
5592
|
+
"status": "passed",
|
|
5593
|
+
"classification": "verified",
|
|
5594
|
+
"cells": [
|
|
5595
|
+
"A-light",
|
|
5596
|
+
"A-dark",
|
|
5597
|
+
"A-hc",
|
|
5598
|
+
"B-light",
|
|
5599
|
+
"B-dark",
|
|
5600
|
+
"B-hc"
|
|
5601
|
+
],
|
|
5602
|
+
"refs": [
|
|
5603
|
+
"artifacts/product-reality/sprint-222/m02/switch-dialog/react-theme/report.json#Switch"
|
|
5604
|
+
]
|
|
5605
|
+
}
|
|
5606
|
+
},
|
|
5607
|
+
"measurementRoot": "artifacts/product-reality/sprint-222/m02/switch-dialog"
|
|
5608
|
+
},
|
|
5317
5609
|
{
|
|
5318
5610
|
"componentId": "Table",
|
|
5319
5611
|
"state": "implemented-evidence-complete",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@oods/components-react",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "React components for OODS Foundry: the controls, layouts and domain views its generated screens use.",
|
|
5
5
|
"homepage": "https://oods-foundry.com/",
|
|
6
6
|
"bugs": {
|
|
@@ -64,8 +64,8 @@
|
|
|
64
64
|
],
|
|
65
65
|
"dependencies": {
|
|
66
66
|
"@radix-ui/react-slot": "^1.1.2",
|
|
67
|
-
"@oods/component-contracts": "0.
|
|
68
|
-
"@oods/component-styles": "0.
|
|
67
|
+
"@oods/component-contracts": "0.4.1",
|
|
68
|
+
"@oods/component-styles": "0.4.1"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
71
|
"react": ">=18 <20",
|