@atom-learning/components 5.7.0 → 6.0.0-beta.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.
Files changed (122) hide show
  1. package/dist/components/action-icon/ActionIcon.d.ts +1 -1
  2. package/dist/components/action-icon/ActionIcon.js +1 -1
  3. package/dist/components/action-icon/ActionIcon.js.map +1 -1
  4. package/dist/components/banner/BannerContainer.js +1 -1
  5. package/dist/components/banner/BannerContainer.js.map +1 -1
  6. package/dist/components/banner/banner-regular/BannerRegular.d.ts +11 -11
  7. package/dist/components/banner/banner-regular/BannerRegularDismiss.d.ts +3 -3
  8. package/dist/components/banner/banner-regular/BannerRegularHeading.js +1 -1
  9. package/dist/components/banner/banner-regular/BannerRegularHeading.js.map +1 -1
  10. package/dist/components/banner/banner-slim/BannerSlim.d.ts +23 -23
  11. package/dist/components/banner/banner-slim/BannerSlimDismiss.d.ts +3 -3
  12. package/dist/components/button/Button.d.ts +1 -1
  13. package/dist/components/button/Button.js +1 -1
  14. package/dist/components/button/Button.js.map +1 -1
  15. package/dist/components/checkbox-field/CheckboxField.js +1 -1
  16. package/dist/components/checkbox-field/CheckboxField.js.map +1 -1
  17. package/dist/components/checkbox-group/CheckboxGroup.d.ts +1 -1
  18. package/dist/components/checkbox-tree/CheckboxTree.d.ts +2 -2
  19. package/dist/components/create-password-field/CreatePasswordField.d.ts +1 -1
  20. package/dist/components/create-password-field/CreatePasswordField.js +1 -1
  21. package/dist/components/create-password-field/CreatePasswordField.js.map +1 -1
  22. package/dist/components/data-table/DataTable.d.ts +290 -19
  23. package/dist/components/data-table/DataTableBody.d.ts +2 -4
  24. package/dist/components/data-table/DataTableBody.js +1 -1
  25. package/dist/components/data-table/DataTableBody.js.map +1 -1
  26. package/dist/components/data-table/DataTableRow.d.ts +1 -2
  27. package/dist/components/data-table/DataTableRow.js +1 -1
  28. package/dist/components/data-table/DataTableRow.js.map +1 -1
  29. package/dist/components/data-table/DataTableTable.d.ts +1 -2
  30. package/dist/components/data-table/DataTableTable.js +1 -1
  31. package/dist/components/data-table/DataTableTable.js.map +1 -1
  32. package/dist/components/date-field/DateField.d.ts +1 -1
  33. package/dist/components/date-field/DateField.js +1 -1
  34. package/dist/components/date-field/DateField.js.map +1 -1
  35. package/dist/components/field-wrapper/FieldWrapper.d.ts +3 -1
  36. package/dist/components/field-wrapper/FieldWrapper.js +1 -1
  37. package/dist/components/field-wrapper/FieldWrapper.js.map +1 -1
  38. package/dist/components/form/Form.d.ts +3 -2
  39. package/dist/components/form/Form.js +1 -1
  40. package/dist/components/form/Form.js.map +1 -1
  41. package/dist/components/form/index.d.ts +1 -0
  42. package/dist/components/form/useFormCustomContext.d.ts +7 -0
  43. package/dist/components/form/useFormCustomContext.js +2 -0
  44. package/dist/components/form/useFormCustomContext.js.map +1 -0
  45. package/dist/components/heading/Heading.d.ts +1 -0
  46. package/dist/components/heading/Heading.js +1 -1
  47. package/dist/components/heading/Heading.js.map +1 -1
  48. package/dist/components/input/Input.d.ts +3 -1
  49. package/dist/components/input/Input.js +1 -1
  50. package/dist/components/input/Input.js.map +1 -1
  51. package/dist/components/input-field/InputField.d.ts +1 -1
  52. package/dist/components/input-field/InputField.js +1 -1
  53. package/dist/components/input-field/InputField.js.map +1 -1
  54. package/dist/components/label/Label.d.ts +2 -1
  55. package/dist/components/label/Label.js +1 -1
  56. package/dist/components/label/Label.js.map +1 -1
  57. package/dist/components/number-input/NumberInput.d.ts +2 -1
  58. package/dist/components/number-input/NumberInput.js +1 -1
  59. package/dist/components/number-input/NumberInput.js.map +1 -1
  60. package/dist/components/number-input/NumberInputStepper.d.ts +766 -1
  61. package/dist/components/number-input/NumberInputStepper.js +1 -1
  62. package/dist/components/number-input/NumberInputStepper.js.map +1 -1
  63. package/dist/components/number-input-field/NumberInputField.d.ts +1 -1
  64. package/dist/components/number-input-field/NumberInputField.js +1 -1
  65. package/dist/components/number-input-field/NumberInputField.js.map +1 -1
  66. package/dist/components/pagination/PaginationNextButton.d.ts +3 -3
  67. package/dist/components/pagination/PaginationPopover.js +1 -1
  68. package/dist/components/pagination/PaginationPopover.js.map +1 -1
  69. package/dist/components/pagination/PaginationPreviousButton.d.ts +3 -3
  70. package/dist/components/password-field/PasswordField.d.ts +1 -1
  71. package/dist/components/password-field/PasswordField.js +1 -1
  72. package/dist/components/password-field/PasswordField.js.map +1 -1
  73. package/dist/components/progress-bar/ProgressBar.d.ts +3 -2
  74. package/dist/components/progress-bar/ProgressBar.js +1 -1
  75. package/dist/components/progress-bar/ProgressBar.js.map +1 -1
  76. package/dist/components/radio-button-field/RadioButtonField.js +1 -1
  77. package/dist/components/radio-button-field/RadioButtonField.js.map +1 -1
  78. package/dist/components/search-field/SearchField.d.ts +1 -1
  79. package/dist/components/search-field/SearchField.js +1 -1
  80. package/dist/components/search-field/SearchField.js.map +1 -1
  81. package/dist/components/search-input/SearchInput.js +1 -1
  82. package/dist/components/search-input/SearchInput.js.map +1 -1
  83. package/dist/components/section-message/SectionMessage.d.ts +1 -1
  84. package/dist/components/select/Select.d.ts +1 -0
  85. package/dist/components/select/Select.js +1 -1
  86. package/dist/components/select/Select.js.map +1 -1
  87. package/dist/components/select-field/SelectField.d.ts +1 -1
  88. package/dist/components/select-field/SelectField.js +1 -1
  89. package/dist/components/select-field/SelectField.js.map +1 -1
  90. package/dist/components/sortable/Handle.d.ts +3 -3
  91. package/dist/components/textarea/Textarea.d.ts +1 -0
  92. package/dist/components/textarea/Textarea.js +1 -1
  93. package/dist/components/textarea/Textarea.js.map +1 -1
  94. package/dist/components/textarea-field/TextareaField.d.ts +1 -1
  95. package/dist/components/textarea-field/TextareaField.js +1 -1
  96. package/dist/components/textarea-field/TextareaField.js.map +1 -1
  97. package/dist/components/tile/Tile.d.ts +1 -0
  98. package/dist/components/tile/Tile.js +1 -1
  99. package/dist/components/tile/Tile.js.map +1 -1
  100. package/dist/components/tile-interactive/TileInteractive.d.ts +2 -1
  101. package/dist/components/tile-toggle-group/TileToggleGroupItem.d.ts +2 -1
  102. package/dist/components/toast/Toast.js +1 -1
  103. package/dist/components/toast/Toast.js.map +1 -1
  104. package/dist/components/toggle-group/ToggleGroupButton.d.ts +4 -1
  105. package/dist/components/toggle-group/ToggleGroupButton.js +1 -1
  106. package/dist/components/toggle-group/ToggleGroupButton.js.map +1 -1
  107. package/dist/components/toggle-group/ToggleGroupItem.d.ts +6 -2
  108. package/dist/components/toggle-group/ToggleGroupItem.js +1 -1
  109. package/dist/components/toggle-group/ToggleGroupItem.js.map +1 -1
  110. package/dist/components/toggle-group/ToggleGroupRoot.d.ts +1 -0
  111. package/dist/components/toggle-group/ToggleGroupRoot.js +1 -1
  112. package/dist/components/toggle-group/ToggleGroupRoot.js.map +1 -1
  113. package/dist/components/toggle-group/index.d.ts +12 -5
  114. package/dist/components/top-bar/TopBar.d.ts +5 -4
  115. package/dist/components/top-bar/TopBar.js +1 -1
  116. package/dist/components/top-bar/TopBar.js.map +1 -1
  117. package/dist/docgen.json +1 -1
  118. package/dist/index.cjs.js +1 -1
  119. package/dist/index.cjs.js.map +1 -1
  120. package/dist/index.js +1 -1
  121. package/package.json +3 -3
  122. package/CHANGELOG.md +0 -209
@@ -23,19 +23,10 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
23
23
  * Can be configured with alternating colours of rows. If you need more customisation options,
24
24
  * you can build your own implementation with `useDataTable()` and the UI-only `Table` components.
25
25
  */
26
- Body: ({ striped, rowAction, ...props }: Omit<Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLTableSectionElement>, HTMLTableSectionElement>, "ref"> & {
27
- ref?: ((instance: HTMLTableSectionElement | null) => void) | import("react").RefObject<HTMLTableSectionElement> | null | undefined;
28
- }, "css" | "striped"> & import("@atom-learning/stitches-react/types/styled-component").TransformProps<{
29
- striped?: boolean | "true" | "false" | undefined;
30
- }, {
31
- sm: string;
32
- md: string;
33
- lg: string;
34
- xl: string;
35
- reducedMotion: string;
36
- allowMotion: string;
37
- hover: string;
38
- }> & {
26
+ Body: ({ striped, ...props }: {
27
+ color?: string | undefined;
28
+ content?: string | undefined;
29
+ translate?: "yes" | "no" | undefined;
39
30
  css?: import("@atom-learning/stitches-react/types/css-util").CSS<{
40
31
  sm: string;
41
32
  md: string;
@@ -397,8 +388,277 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
397
388
  marginBottom: string | number | import("@atom-learning/stitches-react/types/css-util").WithScaleValue<"space">;
398
389
  };
399
390
  }> | undefined;
400
- }, "children"> & {
401
- rowAction?: (row: Record<string, unknown>, event: import("react").MouseEvent) => void;
391
+ prefix?: string | undefined;
392
+ slot?: string | undefined;
393
+ style?: import("react").CSSProperties | undefined;
394
+ title?: string | undefined;
395
+ ref?: ((instance: HTMLTableSectionElement | null) => void) | import("react").RefObject<HTMLTableSectionElement> | null | undefined;
396
+ key?: import("react").Key | null | undefined;
397
+ defaultChecked?: boolean | undefined;
398
+ defaultValue?: string | number | readonly string[] | undefined;
399
+ suppressContentEditableWarning?: boolean | undefined;
400
+ suppressHydrationWarning?: boolean | undefined;
401
+ accessKey?: string | undefined;
402
+ autoFocus?: boolean | undefined;
403
+ className?: string | undefined;
404
+ contentEditable?: (boolean | "true" | "false") | "inherit" | undefined;
405
+ contextMenu?: string | undefined;
406
+ dir?: string | undefined;
407
+ draggable?: (boolean | "true" | "false") | undefined;
408
+ hidden?: boolean | undefined;
409
+ id?: string | undefined;
410
+ lang?: string | undefined;
411
+ nonce?: string | undefined;
412
+ placeholder?: string | undefined;
413
+ spellCheck?: (boolean | "true" | "false") | undefined;
414
+ tabIndex?: number | undefined;
415
+ radioGroup?: string | undefined;
416
+ role?: import("react").AriaRole | undefined;
417
+ about?: string | undefined;
418
+ datatype?: string | undefined;
419
+ inlist?: any;
420
+ property?: string | undefined;
421
+ rel?: string | undefined;
422
+ resource?: string | undefined;
423
+ rev?: string | undefined;
424
+ typeof?: string | undefined;
425
+ vocab?: string | undefined;
426
+ autoCapitalize?: string | undefined;
427
+ autoCorrect?: string | undefined;
428
+ autoSave?: string | undefined;
429
+ itemProp?: string | undefined;
430
+ itemScope?: boolean | undefined;
431
+ itemType?: string | undefined;
432
+ itemID?: string | undefined;
433
+ itemRef?: string | undefined;
434
+ results?: number | undefined;
435
+ security?: string | undefined;
436
+ unselectable?: "on" | "off" | undefined;
437
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
438
+ is?: string | undefined;
439
+ "aria-activedescendant"?: string | undefined;
440
+ "aria-atomic"?: (boolean | "true" | "false") | undefined;
441
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
442
+ "aria-busy"?: (boolean | "true" | "false") | undefined;
443
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
444
+ "aria-colcount"?: number | undefined;
445
+ "aria-colindex"?: number | undefined;
446
+ "aria-colspan"?: number | undefined;
447
+ "aria-controls"?: string | undefined;
448
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
449
+ "aria-describedby"?: string | undefined;
450
+ "aria-details"?: string | undefined;
451
+ "aria-disabled"?: (boolean | "true" | "false") | undefined;
452
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
453
+ "aria-errormessage"?: string | undefined;
454
+ "aria-expanded"?: (boolean | "true" | "false") | undefined;
455
+ "aria-flowto"?: string | undefined;
456
+ "aria-grabbed"?: (boolean | "true" | "false") | undefined;
457
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
458
+ "aria-hidden"?: (boolean | "true" | "false") | undefined;
459
+ "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
460
+ "aria-keyshortcuts"?: string | undefined;
461
+ "aria-label"?: string | undefined;
462
+ "aria-labelledby"?: string | undefined;
463
+ "aria-level"?: number | undefined;
464
+ "aria-live"?: "off" | "assertive" | "polite" | undefined;
465
+ "aria-modal"?: (boolean | "true" | "false") | undefined;
466
+ "aria-multiline"?: (boolean | "true" | "false") | undefined;
467
+ "aria-multiselectable"?: (boolean | "true" | "false") | undefined;
468
+ "aria-orientation"?: "horizontal" | "vertical" | undefined;
469
+ "aria-owns"?: string | undefined;
470
+ "aria-placeholder"?: string | undefined;
471
+ "aria-posinset"?: number | undefined;
472
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
473
+ "aria-readonly"?: (boolean | "true" | "false") | undefined;
474
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
475
+ "aria-required"?: (boolean | "true" | "false") | undefined;
476
+ "aria-roledescription"?: string | undefined;
477
+ "aria-rowcount"?: number | undefined;
478
+ "aria-rowindex"?: number | undefined;
479
+ "aria-rowspan"?: number | undefined;
480
+ "aria-selected"?: (boolean | "true" | "false") | undefined;
481
+ "aria-setsize"?: number | undefined;
482
+ "aria-sort"?: "none" | "ascending" | "descending" | "other" | undefined;
483
+ "aria-valuemax"?: number | undefined;
484
+ "aria-valuemin"?: number | undefined;
485
+ "aria-valuenow"?: number | undefined;
486
+ "aria-valuetext"?: string | undefined;
487
+ dangerouslySetInnerHTML?: {
488
+ __html: string | TrustedHTML;
489
+ } | undefined;
490
+ onCopy?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
491
+ onCopyCapture?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
492
+ onCut?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
493
+ onCutCapture?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
494
+ onPaste?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
495
+ onPasteCapture?: import("react").ClipboardEventHandler<HTMLTableSectionElement> | undefined;
496
+ onCompositionEnd?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
497
+ onCompositionEndCapture?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
498
+ onCompositionStart?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
499
+ onCompositionStartCapture?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
500
+ onCompositionUpdate?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
501
+ onCompositionUpdateCapture?: import("react").CompositionEventHandler<HTMLTableSectionElement> | undefined;
502
+ onFocus?: import("react").FocusEventHandler<HTMLTableSectionElement> | undefined;
503
+ onFocusCapture?: import("react").FocusEventHandler<HTMLTableSectionElement> | undefined;
504
+ onBlur?: import("react").FocusEventHandler<HTMLTableSectionElement> | undefined;
505
+ onBlurCapture?: import("react").FocusEventHandler<HTMLTableSectionElement> | undefined;
506
+ onChange?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
507
+ onChangeCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
508
+ onBeforeInput?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
509
+ onBeforeInputCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
510
+ onInput?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
511
+ onInputCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
512
+ onReset?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
513
+ onResetCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
514
+ onSubmit?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
515
+ onSubmitCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
516
+ onInvalid?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
517
+ onInvalidCapture?: import("react").FormEventHandler<HTMLTableSectionElement> | undefined;
518
+ onLoad?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
519
+ onLoadCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
520
+ onError?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
521
+ onErrorCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
522
+ onKeyDown?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
523
+ onKeyDownCapture?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
524
+ onKeyPress?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
525
+ onKeyPressCapture?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
526
+ onKeyUp?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
527
+ onKeyUpCapture?: import("react").KeyboardEventHandler<HTMLTableSectionElement> | undefined;
528
+ onAbort?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
529
+ onAbortCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
530
+ onCanPlay?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
531
+ onCanPlayCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
532
+ onCanPlayThrough?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
533
+ onCanPlayThroughCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
534
+ onDurationChange?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
535
+ onDurationChangeCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
536
+ onEmptied?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
537
+ onEmptiedCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
538
+ onEncrypted?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
539
+ onEncryptedCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
540
+ onEnded?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
541
+ onEndedCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
542
+ onLoadedData?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
543
+ onLoadedDataCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
544
+ onLoadedMetadata?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
545
+ onLoadedMetadataCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
546
+ onLoadStart?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
547
+ onLoadStartCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
548
+ onPause?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
549
+ onPauseCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
550
+ onPlay?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
551
+ onPlayCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
552
+ onPlaying?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
553
+ onPlayingCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
554
+ onProgress?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
555
+ onProgressCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
556
+ onRateChange?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
557
+ onRateChangeCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
558
+ onSeeked?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
559
+ onSeekedCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
560
+ onSeeking?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
561
+ onSeekingCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
562
+ onStalled?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
563
+ onStalledCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
564
+ onSuspend?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
565
+ onSuspendCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
566
+ onTimeUpdate?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
567
+ onTimeUpdateCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
568
+ onVolumeChange?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
569
+ onVolumeChangeCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
570
+ onWaiting?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
571
+ onWaitingCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
572
+ onAuxClick?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
573
+ onAuxClickCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
574
+ onClick?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
575
+ onClickCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
576
+ onContextMenu?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
577
+ onContextMenuCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
578
+ onDoubleClick?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
579
+ onDoubleClickCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
580
+ onDrag?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
581
+ onDragCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
582
+ onDragEnd?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
583
+ onDragEndCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
584
+ onDragEnter?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
585
+ onDragEnterCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
586
+ onDragExit?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
587
+ onDragExitCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
588
+ onDragLeave?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
589
+ onDragLeaveCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
590
+ onDragOver?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
591
+ onDragOverCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
592
+ onDragStart?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
593
+ onDragStartCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
594
+ onDrop?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
595
+ onDropCapture?: import("react").DragEventHandler<HTMLTableSectionElement> | undefined;
596
+ onMouseDown?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
597
+ onMouseDownCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
598
+ onMouseEnter?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
599
+ onMouseLeave?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
600
+ onMouseMove?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
601
+ onMouseMoveCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
602
+ onMouseOut?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
603
+ onMouseOutCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
604
+ onMouseOver?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
605
+ onMouseOverCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
606
+ onMouseUp?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
607
+ onMouseUpCapture?: import("react").MouseEventHandler<HTMLTableSectionElement> | undefined;
608
+ onSelect?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
609
+ onSelectCapture?: import("react").ReactEventHandler<HTMLTableSectionElement> | undefined;
610
+ onTouchCancel?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
611
+ onTouchCancelCapture?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
612
+ onTouchEnd?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
613
+ onTouchEndCapture?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
614
+ onTouchMove?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
615
+ onTouchMoveCapture?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
616
+ onTouchStart?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
617
+ onTouchStartCapture?: import("react").TouchEventHandler<HTMLTableSectionElement> | undefined;
618
+ onPointerDown?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
619
+ onPointerDownCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
620
+ onPointerMove?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
621
+ onPointerMoveCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
622
+ onPointerUp?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
623
+ onPointerUpCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
624
+ onPointerCancel?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
625
+ onPointerCancelCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
626
+ onPointerEnter?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
627
+ onPointerEnterCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
628
+ onPointerLeave?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
629
+ onPointerLeaveCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
630
+ onPointerOver?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
631
+ onPointerOverCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
632
+ onPointerOut?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
633
+ onPointerOutCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
634
+ onGotPointerCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
635
+ onGotPointerCaptureCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
636
+ onLostPointerCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
637
+ onLostPointerCaptureCapture?: import("react").PointerEventHandler<HTMLTableSectionElement> | undefined;
638
+ onScroll?: import("react").UIEventHandler<HTMLTableSectionElement> | undefined;
639
+ onScrollCapture?: import("react").UIEventHandler<HTMLTableSectionElement> | undefined;
640
+ onWheel?: import("react").WheelEventHandler<HTMLTableSectionElement> | undefined;
641
+ onWheelCapture?: import("react").WheelEventHandler<HTMLTableSectionElement> | undefined;
642
+ onAnimationStart?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
643
+ onAnimationStartCapture?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
644
+ onAnimationEnd?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
645
+ onAnimationEndCapture?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
646
+ onAnimationIteration?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
647
+ onAnimationIterationCapture?: import("react").AnimationEventHandler<HTMLTableSectionElement> | undefined;
648
+ onTransitionEnd?: import("react").TransitionEventHandler<HTMLTableSectionElement> | undefined;
649
+ onTransitionEndCapture?: import("react").TransitionEventHandler<HTMLTableSectionElement> | undefined;
650
+ striped?: boolean | "true" | "false" | ({
651
+ "@sm"?: boolean | "true" | "false" | undefined;
652
+ "@md"?: boolean | "true" | "false" | undefined;
653
+ "@lg"?: boolean | "true" | "false" | undefined;
654
+ "@xl"?: boolean | "true" | "false" | undefined;
655
+ "@reducedMotion"?: boolean | "true" | "false" | undefined;
656
+ "@allowMotion"?: boolean | "true" | "false" | undefined;
657
+ "@hover"?: boolean | "true" | "false" | undefined;
658
+ "@initial"?: boolean | "true" | "false" | undefined;
659
+ } & {
660
+ [x: string]: boolean | "true" | "false" | undefined;
661
+ }) | undefined;
402
662
  }) => import("react").JSX.Element;
403
663
  /** Default table data cell implementation for `DataTable`
404
664
  *
@@ -1550,7 +1810,6 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
1550
1810
  numberOfStickyColumns?: number;
1551
1811
  scrollContainerCss?: import("../..").CSS;
1552
1812
  };
1553
- rowAction?: (row: Record<string, unknown>, event: import("react").MouseEvent) => void;
1554
1813
  } & {
1555
1814
  idColumn?: string;
1556
1815
  onDragAndDrop?: (onDragAndDropData: {
@@ -1939,7 +2198,7 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
1939
2198
  size: import("react").ComponentProps<typeof import("..").Text>["size"];
1940
2199
  type?: "text" | "number" | "email" | "password" | "tel" | "url" | "search";
1941
2200
  as?: never;
1942
- }, "size" | "state"> & {
2201
+ }, "appearance" | "size" | "state"> & {
1943
2202
  size?: "sm" | "md" | "lg" | "xl" | ({
1944
2203
  "@sm"?: "sm" | "md" | "lg" | "xl" | undefined;
1945
2204
  "@md"?: "sm" | "md" | "lg" | "xl" | undefined;
@@ -1964,6 +2223,18 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
1964
2223
  } & {
1965
2224
  [x: string]: "error" | undefined;
1966
2225
  }) | undefined;
2226
+ appearance?: "standard" | "modern" | ({
2227
+ "@sm"?: "standard" | "modern" | undefined;
2228
+ "@md"?: "standard" | "modern" | undefined;
2229
+ "@lg"?: "standard" | "modern" | undefined;
2230
+ "@xl"?: "standard" | "modern" | undefined;
2231
+ "@reducedMotion"?: "standard" | "modern" | undefined;
2232
+ "@allowMotion"?: "standard" | "modern" | undefined;
2233
+ "@hover"?: "standard" | "modern" | undefined;
2234
+ "@initial"?: "standard" | "modern" | undefined;
2235
+ } & {
2236
+ [x: string]: "standard" | "modern" | undefined;
2237
+ }) | undefined;
1967
2238
  } & {
1968
2239
  size?: "sm" | "md" | "lg";
1969
2240
  css?: import("../..").CSS;
@@ -3144,7 +3415,7 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
3144
3415
  * Renders all visible cells as `Table.Cell`. If you need more customisation options,
3145
3416
  * you can build your own implementation with the UI-only `Table` components.
3146
3417
  */
3147
- Row: ({ row, rowAction }: import("./DataTableRow").DataTableRowProps) => import("react").JSX.Element;
3418
+ Row: ({ row }: import("./DataTableRow").DataTableRowProps) => import("react").JSX.Element;
3148
3419
  /** Default table implementation for `DataTable`.
3149
3420
  *
3150
3421
  * Can be configured with sortable columns and different visual themes.
@@ -3154,7 +3425,7 @@ export declare const DataTable: (({ columns, data: dataProp, getAsyncData, defau
3154
3425
  * scratch with `useDataTable` and the UI-only `Table` components.
3155
3426
  *
3156
3427
  */
3157
- Table: ({ sortable, striped, theme, css, scrollOptions, rowAction, ...props }: import("./DataTableTable").DataTableTableProps) => import("react").JSX.Element | null;
3428
+ Table: ({ sortable, striped, theme, css, scrollOptions, ...props }: import("./DataTableTable").DataTableTableProps) => import("react").JSX.Element | null;
3158
3429
  /** Default loading implementation for remote data
3159
3430
  *
3160
3431
  * Renders a loading component while fetching the paginated data using `getAsyncData`.
@@ -1,7 +1,5 @@
1
1
  import * as React from 'react';
2
2
  import { Table } from '../table';
3
- type DataTableBodyProps = Omit<React.ComponentProps<typeof Table.Body>, 'children'> & {
4
- rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void;
5
- };
6
- export declare const DataTableBody: ({ striped, rowAction, ...props }: DataTableBodyProps) => React.JSX.Element;
3
+ type DataTableBodyProps = Omit<React.ComponentProps<typeof Table.Body>, 'children'>;
4
+ export declare const DataTableBody: ({ striped, ...props }: DataTableBodyProps) => React.JSX.Element;
7
5
  export {};
@@ -1,2 +1,2 @@
1
- import*as o from"react";import{Table as i}from"../table/Table.js";import{useDataTable as n}from"./DataTableContext.js";import{DataTable as p}from"./DataTable.js";const l=({striped:t=!1,rowAction:r,...a})=>{const{getRowModel:m}=n();return o.createElement(i.Body,{...a,striped:t},m().rows.map(e=>o.createElement(p.Row,{row:e,key:e.id,rowAction:r})))};export{l as DataTableBody};
1
+ import*as r from"react";import{Table as m}from"../table/Table.js";import{useDataTable as p}from"./DataTableContext.js";import{DataTable as i}from"./DataTable.js";const l=({striped:t=!1,...o})=>{const{getRowModel:a}=p();return r.createElement(m.Body,{...o,striped:t},a().rows.map(e=>r.createElement(i.Row,{row:e,key:e.id})))};export{l as DataTableBody};
2
2
  //# sourceMappingURL=DataTableBody.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableBody.js","sources":["../../../src/components/data-table/DataTableBody.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Table } from '../table'\nimport { DataTable } from '.'\nimport { useDataTable } from './DataTableContext'\n\ntype DataTableBodyProps = Omit<\n React.ComponentProps<typeof Table.Body>,\n 'children'\n> & {\n rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void\n}\n\nexport const DataTableBody = ({\n striped = false,\n rowAction,\n ...props\n}: DataTableBodyProps) => {\n const { getRowModel } = useDataTable()\n\n return (\n <Table.Body {...props} striped={striped}>\n {getRowModel().rows.map((row) => {\n return <DataTable.Row row={row} key={row.id} rowAction={rowAction} />\n })}\n </Table.Body>\n )\n}\n"],"names":["DataTableBody","striped","rowAction","props","getRowModel","useDataTable","React","Table","row","DataTable"],"mappings":"kKAaa,MAAAA,EAAgB,CAAC,CAC5B,QAAAC,EAAU,GACV,UAAAC,KACGC,CACL,IAA0B,CACxB,KAAM,CAAE,YAAAC,CAAY,EAAIC,EAAa,EAErC,OACEC,EAAA,cAACC,EAAM,KAAN,CAAY,GAAGJ,EAAO,QAASF,CAAAA,EAC7BG,EAAY,EAAE,KAAK,IAAKI,GAChBF,EAAA,cAACG,EAAU,IAAV,CAAc,IAAKD,EAAK,IAAKA,EAAI,GAAI,UAAWN,CAAW,CAAA,CACpE,CACH,CAEJ"}
1
+ {"version":3,"file":"DataTableBody.js","sources":["../../../src/components/data-table/DataTableBody.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { Table } from '../table'\nimport { DataTable } from '.'\nimport { useDataTable } from './DataTableContext'\n\ntype DataTableBodyProps = Omit<\n React.ComponentProps<typeof Table.Body>,\n 'children'\n>\n\nexport const DataTableBody = ({\n striped = false,\n ...props\n}: DataTableBodyProps) => {\n const { getRowModel } = useDataTable()\n\n return (\n <Table.Body {...props} striped={striped}>\n {getRowModel().rows.map((row) => {\n return <DataTable.Row row={row} key={row.id} />\n })}\n </Table.Body>\n )\n}\n"],"names":["DataTableBody","striped","props","getRowModel","useDataTable","React","Table","row","DataTable"],"mappings":"kKAWO,MAAMA,EAAgB,CAAC,CAC5B,QAAAC,EAAU,MACPC,CACL,IAA0B,CACxB,KAAM,CAAE,YAAAC,CAAY,EAAIC,IAExB,OACEC,EAAA,cAACC,EAAM,KAAN,CAAY,GAAGJ,EAAO,QAASD,CAC7BE,EAAAA,EAAAA,EAAc,KAAK,IAAKI,GAChBF,EAAA,cAACG,EAAU,IAAV,CAAc,IAAKD,EAAK,IAAKA,EAAI,EAAA,CAAI,CAC9C,CACH,CAEJ"}
@@ -3,6 +3,5 @@ import * as React from 'react';
3
3
  import { Table } from '../table';
4
4
  export type DataTableRowProps = React.ComponentProps<typeof Table.Row> & {
5
5
  row: Row<Record<string, unknown>>;
6
- rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void;
7
6
  };
8
- export declare const DataTableRow: ({ row, rowAction }: DataTableRowProps) => React.JSX.Element;
7
+ export declare const DataTableRow: ({ row }: DataTableRowProps) => React.JSX.Element;
@@ -1,2 +1,2 @@
1
- import{ChevronDown as w,ChevronRight as C}from"@atom-learning/icons";import*as a from"react";import{styled as D}from"../../stitches.js";import{Icon as E}from"../icon/Icon.js";import{Table as i}from"../table/Table.js";import{useDataTable as x}from"./DataTableContext.js";import{DataTableDataCell as S}from"./DataTableDataCell.js";import{DataTableRowSelectionCheckbox as k}from"./DataTableRowSelectionCheckbox.js";const y=D(i.Row,{bg:"initial",variants:{isSelected:{true:{bg:"$primary100 !important"}},isDisabled:{true:{opacity:"30%"}},isFocusable:{true:{"&:focus":{outline:"2px solid $primary500",outlineOffset:"-4px","& td":{bg:"transparent"}}}}}}),d=e=>e?!!(e.closest("button, a, input, select, textarea")||e.getAttribute("role")==="button"):!1,h=({row:e,rowAction:n})=>{const{enableRowSelection:m,disabledRows:l,getCanSomeRowsExpand:p}=x(),s=!!(l!=null&&l[e.id]),g=e.getToggleExpandedHandler(),u=e.getToggleSelectedHandler(),b=()=>e.getIsSomeSelected()?"indeterminate":e.getIsSelected(),c=(t,o)=>{!n||!o.target.closest("tr")||d(o.target)||n(t.original,o)},f=t=>{if(t.key==="Enter"||t.key===" "){if(d(t.target))return;t.preventDefault(),c(e,t)}if(t.key==="ArrowDown"){t.preventDefault();const o=t.target.closest("tr"),r=o==null?void 0:o.nextElementSibling;r&&r.tagName==="TR"&&r.focus()}if(t.key==="ArrowUp"){t.preventDefault();const o=t.target.closest("tr"),r=o==null?void 0:o.previousElementSibling;r&&r.tagName==="TR"&&r.focus()}};return a.createElement(y,{isSelected:e.getIsSelected(),isDisabled:s,isFocusable:!!n&&!s,...n&&{onClick:t=>c(e,t),tabIndex:0,css:{cursor:"pointer"},onKeyDown:f}},p()&&a.createElement(i.Cell,{"data-testid":`expand-icon-${e.id}`,css:{width:"$4",cursor:e.getCanExpand()?"pointer":"auto"},onClick:g},e.getCanExpand()&&a.createElement(E,{is:e.getIsExpanded()?w:C})),m&&a.createElement(i.Cell,{css:{width:"$4"}},a.createElement(k,{row:e,checked:b(),onCheckedChange:u})),e.getVisibleCells().map((t,o)=>a.createElement(S,{key:t.id,cell:t})))};export{h as DataTableRow};
1
+ import{ChevronDown as m,ChevronRight as p}from"@atom-learning/icons";import*as t from"react";import{styled as g}from"../../stitches.js";import{Icon as b}from"../icon/Icon.js";import{Table as a}from"../table/Table.js";import{useDataTable as C}from"./DataTableContext.js";import{DataTableDataCell as w}from"./DataTableDataCell.js";import{DataTableRowSelectionCheckbox as E}from"./DataTableRowSelectionCheckbox.js";const S=g(a.Row,{bg:"initial",variants:{isSelected:{true:{bg:"$primary100 !important"}},isDisabled:{true:{opacity:"30%"}}}}),f=({row:e})=>{const{enableRowSelection:r,disabledRows:o,getCanSomeRowsExpand:i}=C(),n=!!(o!=null&&o[e.id]),d=e.getToggleExpandedHandler(),s=e.getToggleSelectedHandler(),c=()=>e.getIsSomeSelected()?"indeterminate":e.getIsSelected();return t.createElement(S,{isSelected:e.getIsSelected(),isDisabled:n},i()&&t.createElement(a.Cell,{"data-testid":`expand-icon-${e.id}`,css:{width:"$4",cursor:e.getCanExpand()?"pointer":"auto"},onClick:d},e.getCanExpand()&&t.createElement(b,{is:e.getIsExpanded()?m:p})),r&&t.createElement(a.Cell,{css:{width:"$4"}},t.createElement(E,{row:e,checked:c(),onCheckedChange:s})),e.getVisibleCells().map((l,h)=>t.createElement(w,{key:l.id,cell:l})))};export{f as DataTableRow};
2
2
  //# sourceMappingURL=DataTableRow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableRow.js","sources":["../../../src/components/data-table/DataTableRow.tsx"],"sourcesContent":["import { ChevronDown, ChevronRight } from '@atom-learning/icons'\nimport type { Row } from '@tanstack/react-table'\nimport * as React from 'react'\n\nimport { styled } from '~/stitches'\n\nimport { Icon } from '../icon'\nimport { Table } from '../table'\nimport { useDataTable } from './DataTableContext'\nimport { DataTableDataCell } from './DataTableDataCell'\nimport { DataTableRowSelectionCheckbox } from './DataTableRowSelectionCheckbox'\n\nexport type DataTableRowProps = React.ComponentProps<typeof Table.Row> & {\n row: Row<Record<string, unknown>>\n rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void\n}\n\nconst StyledRow = styled(Table.Row, {\n bg: 'initial',\n variants: {\n isSelected: {\n true: {\n // the !important rule is needed because the bg property is set elsewhere and it's more specific than this one would be without the !important modifier.\n bg: '$primary100 !important'\n }\n },\n isDisabled: {\n true: {\n opacity: '30%'\n }\n },\n isFocusable: {\n true: {\n '&:focus': {\n outline: '2px solid $primary500',\n outlineOffset: '-4px',\n '& td': {\n bg: 'transparent'\n }\n }\n }\n }\n }\n})\n\nconst isElementInteractive = (element: Element | null): boolean => {\n if (!element) return false\n if (element.closest('button, a, input, select, textarea')) return true\n if (element.getAttribute('role') === 'button') return true\n return false\n}\n\nexport const DataTableRow = ({ row, rowAction }: DataTableRowProps) => {\n const { enableRowSelection, disabledRows, getCanSomeRowsExpand } =\n useDataTable()\n\n const isDisabled = !!disabledRows?.[row.id]\n\n const toggleExpandHandler = row.getToggleExpandedHandler()\n const toggleSelectHandler = row.getToggleSelectedHandler()\n\n const getCheckedState = (): boolean | 'indeterminate' => {\n if (row.getIsSomeSelected()) return 'indeterminate'\n return row.getIsSelected()\n }\n\n const handleRowClick = (\n rowData: Row<Record<string, unknown>>,\n event: React.MouseEvent<HTMLTableRowElement>\n ) => {\n if (!rowAction) return\n\n // Skip if clicking on an interactive element\n const rowElement = (event.target as Element).closest('tr')\n if (!rowElement || isElementInteractive(event.target as Element)) {\n return\n }\n\n rowAction(rowData.original, event)\n }\n\n const handleKeyDown = (event: React.KeyboardEvent<HTMLTableRowElement>) => {\n if (event.key === 'Enter' || event.key === ' ') {\n if (isElementInteractive(event.target as Element)) {\n return\n }\n event.preventDefault()\n handleRowClick(\n row,\n event as unknown as React.MouseEvent<HTMLTableRowElement>\n )\n }\n if (event.key === 'ArrowDown') {\n event.preventDefault()\n const currentRow = (event.target as HTMLElement).closest('tr')\n const nextRow = currentRow?.nextElementSibling as HTMLElement\n if (nextRow && nextRow.tagName === 'TR') {\n nextRow.focus()\n }\n }\n if (event.key === 'ArrowUp') {\n event.preventDefault()\n const currentRow = (event.target as HTMLElement).closest('tr')\n const previousRow = currentRow?.previousElementSibling as HTMLElement\n if (previousRow && previousRow.tagName === 'TR') {\n previousRow.focus()\n }\n }\n }\n\n return (\n <StyledRow\n isSelected={row.getIsSelected()}\n isDisabled={isDisabled}\n isFocusable={!!rowAction && !isDisabled}\n {...(rowAction && {\n onClick: (event) => handleRowClick(row, event),\n tabIndex: 0,\n css: { cursor: 'pointer' },\n onKeyDown: handleKeyDown\n })}\n >\n {getCanSomeRowsExpand() && (\n <Table.Cell\n data-testid={`expand-icon-${row.id}`}\n css={{ width: '$4', cursor: row.getCanExpand() ? 'pointer' : 'auto' }}\n onClick={toggleExpandHandler}\n >\n {row.getCanExpand() && (\n <Icon is={row.getIsExpanded() ? ChevronDown : ChevronRight} />\n )}\n </Table.Cell>\n )}\n\n {enableRowSelection && (\n <Table.Cell css={{ width: '$4' }}>\n <DataTableRowSelectionCheckbox\n row={row}\n checked={getCheckedState()}\n onCheckedChange={toggleSelectHandler}\n />\n </Table.Cell>\n )}\n {row.getVisibleCells().map((cell, i) => {\n return <DataTableDataCell key={cell.id} cell={cell} />\n })}\n </StyledRow>\n )\n}\n"],"names":["StyledRow","styled","Table","isElementInteractive","element","DataTableRow","row","rowAction","enableRowSelection","disabledRows","getCanSomeRowsExpand","useDataTable","isDisabled","toggleExpandHandler","toggleSelectHandler","getCheckedState","handleRowClick","rowData","event","handleKeyDown","currentRow","nextRow","previousRow","React","Icon","ChevronDown","ChevronRight","DataTableRowSelectionCheckbox","cell","i","DataTableDataCell"],"mappings":"4ZAiBA,MAAMA,EAAYC,EAAOC,EAAM,IAAK,CAClC,GAAI,UACJ,SAAU,CACR,WAAY,CACV,KAAM,CAEJ,GAAI,wBACN,CACF,EACA,WAAY,CACV,KAAM,CACJ,QAAS,KACX,CACF,EACA,YAAa,CACX,KAAM,CACJ,UAAW,CACT,QAAS,wBACT,cAAe,OACf,OAAQ,CACN,GAAI,aACN,CACF,CACF,CACF,CACF,CACF,CAAC,EAEKC,EAAwBC,GACvBA,EACD,CAAA,EAAAA,EAAQ,QAAQ,oCAAoC,GACpDA,EAAQ,aAAa,MAAM,IAAM,UAFhB,GAMVC,EAAe,CAAC,CAAE,IAAAC,EAAK,UAAAC,CAAU,IAAyB,CACrE,KAAM,CAAE,mBAAAC,EAAoB,aAAAC,EAAc,qBAAAC,CAAqB,EAC7DC,EAAAA,EAEIC,EAAa,CAAC,EAACH,GAAA,MAAAA,EAAeH,EAAI,KAElCO,EAAsBP,EAAI,yBAAA,EAC1BQ,EAAsBR,EAAI,2BAE1BS,EAAkB,IAClBT,EAAI,kBAA4B,EAAA,gBAC7BA,EAAI,cAAc,EAGrBU,EAAiB,CACrBC,EACAC,IACG,CACC,CAACX,GAID,CADgBW,EAAM,OAAmB,QAAQ,IAAI,GACtCf,EAAqBe,EAAM,MAAiB,GAI/DX,EAAUU,EAAQ,SAAUC,CAAK,CACnC,EAEMC,EAAiBD,GAAoD,CACzE,GAAIA,EAAM,MAAQ,SAAWA,EAAM,MAAQ,IAAK,CAC9C,GAAIf,EAAqBe,EAAM,MAAiB,EAC9C,OAEFA,EAAM,eAAe,EACrBF,EACEV,EACAY,CACF,CACF,CACA,GAAIA,EAAM,MAAQ,YAAa,CAC7BA,EAAM,iBACN,MAAME,EAAcF,EAAM,OAAuB,QAAQ,IAAI,EACvDG,EAAUD,GAAA,YAAAA,EAAY,mBACxBC,GAAWA,EAAQ,UAAY,MACjCA,EAAQ,MAEZ,CAAA,CACA,GAAIH,EAAM,MAAQ,UAAW,CAC3BA,EAAM,eAAA,EACN,MAAME,EAAcF,EAAM,OAAuB,QAAQ,IAAI,EACvDI,EAAcF,GAAA,KAAA,OAAAA,EAAY,uBAC5BE,GAAeA,EAAY,UAAY,MACzCA,EAAY,MAAM,CAEtB,CACF,EAEA,OACEC,EAAA,cAACvB,EAAA,CACC,WAAYM,EAAI,cAAc,EAC9B,WAAYM,EACZ,YAAa,CAAC,CAACL,GAAa,CAACK,EAC5B,GAAIL,GAAa,CAChB,QAAUW,GAAUF,EAAeV,EAAKY,CAAK,EAC7C,SAAU,EACV,IAAK,CAAE,OAAQ,SAAU,EACzB,UAAWC,CACb,GAECT,EAAqB,GACpBa,EAAA,cAACrB,EAAM,KAAN,CACC,cAAa,eAAeI,EAAI,KAChC,IAAK,CAAE,MAAO,KAAM,OAAQA,EAAI,aAAa,EAAI,UAAY,MAAO,EACpE,QAASO,CAERP,EAAAA,EAAI,aACHiB,GAAAA,EAAA,cAACC,EAAA,CAAK,GAAIlB,EAAI,cAAA,EAAkBmB,EAAcC,CAAAA,CAAc,CAEhE,EAGDlB,GACCe,EAAA,cAACrB,EAAM,KAAN,CAAW,IAAK,CAAE,MAAO,IAAK,CAC7BqB,EAAAA,EAAA,cAACI,EAAA,CACC,IAAKrB,EACL,QAASS,IACT,gBAAiBD,CACnB,CAAA,CACF,EAEDR,EAAI,kBAAkB,IAAI,CAACsB,EAAMC,IACzBN,EAAA,cAACO,EAAA,CAAkB,IAAKF,EAAK,GAAI,KAAMA,CAAM,CAAA,CACrD,CACH,CAEJ"}
1
+ {"version":3,"file":"DataTableRow.js","sources":["../../../src/components/data-table/DataTableRow.tsx"],"sourcesContent":["import { ChevronDown, ChevronRight } from '@atom-learning/icons'\nimport type { Row } from '@tanstack/react-table'\nimport * as React from 'react'\n\nimport { styled } from '~/stitches'\n\nimport { Icon } from '../icon'\nimport { Table } from '../table'\nimport { useDataTable } from './DataTableContext'\nimport { DataTableDataCell } from './DataTableDataCell'\nimport { DataTableRowSelectionCheckbox } from './DataTableRowSelectionCheckbox'\n\nexport type DataTableRowProps = React.ComponentProps<typeof Table.Row> & {\n row: Row<Record<string, unknown>>\n}\n\nconst StyledRow = styled(Table.Row, {\n bg: 'initial',\n variants: {\n isSelected: {\n true: {\n // the !important rule is needed because the bg property is set elsewhere and it's more specific than this one would be without the !important modifier.\n bg: '$primary100 !important'\n }\n },\n isDisabled: {\n true: {\n opacity: '30%'\n }\n }\n }\n})\n\nexport const DataTableRow = ({ row }: DataTableRowProps) => {\n const { enableRowSelection, disabledRows, getCanSomeRowsExpand } =\n useDataTable()\n\n const isDisabled = !!disabledRows?.[row.id]\n\n const toggleExpandHandler = row.getToggleExpandedHandler()\n const toggleSelectHandler = row.getToggleSelectedHandler()\n\n const getCheckedState = (): boolean | 'indeterminate' => {\n if (row.getIsSomeSelected()) return 'indeterminate'\n return row.getIsSelected()\n }\n\n return (\n <StyledRow isSelected={row.getIsSelected()} isDisabled={isDisabled}>\n {getCanSomeRowsExpand() && (\n <Table.Cell\n data-testid={`expand-icon-${row.id}`}\n css={{ width: '$4', cursor: row.getCanExpand() ? 'pointer' : 'auto' }}\n onClick={toggleExpandHandler}\n >\n {row.getCanExpand() && (\n <Icon is={row.getIsExpanded() ? ChevronDown : ChevronRight} />\n )}\n </Table.Cell>\n )}\n\n {enableRowSelection && (\n <Table.Cell css={{ width: '$4' }}>\n <DataTableRowSelectionCheckbox\n row={row}\n checked={getCheckedState()}\n onCheckedChange={toggleSelectHandler}\n />\n </Table.Cell>\n )}\n {row.getVisibleCells().map((cell, i) => {\n return <DataTableDataCell key={cell.id} cell={cell} />\n })}\n </StyledRow>\n )\n}\n"],"names":["StyledRow","styled","Table","DataTableRow","row","enableRowSelection","disabledRows","getCanSomeRowsExpand","useDataTable","isDisabled","toggleExpandHandler","toggleSelectHandler","getCheckedState","React","Icon","ChevronDown","ChevronRight","DataTableRowSelectionCheckbox","cell","i","DataTableDataCell"],"mappings":"4ZAgBA,MAAMA,EAAYC,EAAOC,EAAM,IAAK,CAClC,GAAI,UACJ,SAAU,CACR,WAAY,CACV,KAAM,CAEJ,GAAI,wBACN,CACF,EACA,WAAY,CACV,KAAM,CACJ,QAAS,KACX,CACF,CACF,CACF,CAAC,EAEYC,EAAe,CAAC,CAAE,IAAAC,CAAI,IAAyB,CAC1D,KAAM,CAAE,mBAAAC,EAAoB,aAAAC,EAAc,qBAAAC,CAAqB,EAC7DC,IAEIC,EAAa,CAAC,EAACH,GAAA,MAAAA,EAAeF,EAAI,KAElCM,EAAsBN,EAAI,yBAAA,EAC1BO,EAAsBP,EAAI,yBAAyB,EAEnDQ,EAAkB,IAClBR,EAAI,kBAAkB,EAAU,gBAC7BA,EAAI,gBAGb,OACES,EAAA,cAACb,EAAA,CAAU,WAAYI,EAAI,gBAAiB,WAAYK,CAAAA,EACrDF,KACCM,EAAA,cAACX,EAAM,KAAN,CACC,cAAa,eAAeE,EAAI,KAChC,IAAK,CAAE,MAAO,KAAM,OAAQA,EAAI,aAAa,EAAI,UAAY,MAAO,EACpE,QAASM,CAERN,EAAAA,EAAI,aACHS,GAAAA,EAAA,cAACC,EAAA,CAAK,GAAIV,EAAI,cAAc,EAAIW,EAAcC,CAAc,CAAA,CAEhE,EAGDX,GACCQ,EAAA,cAACX,EAAM,KAAN,CAAW,IAAK,CAAE,MAAO,IAAK,CAAA,EAC7BW,EAAA,cAACI,EAAA,CACC,IAAKb,EACL,QAASQ,IACT,gBAAiBD,EACnB,CACF,EAEDP,EAAI,kBAAkB,IAAI,CAACc,EAAMC,IACzBN,EAAA,cAACO,EAAA,CAAkB,IAAKF,EAAK,GAAI,KAAMA,CAAAA,CAAM,CACrD,CACH,CAEJ"}
@@ -10,6 +10,5 @@ export type DataTableTableProps = Omit<React.ComponentProps<typeof Table>, 'chil
10
10
  numberOfStickyColumns?: number;
11
11
  scrollContainerCss?: CSS;
12
12
  };
13
- rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void;
14
13
  };
15
- export declare const DataTableTable: ({ sortable, striped, theme, css, scrollOptions, rowAction, ...props }: DataTableTableProps) => React.JSX.Element | null;
14
+ export declare const DataTableTable: ({ sortable, striped, theme, css, scrollOptions, ...props }: DataTableTableProps) => React.JSX.Element | null;
@@ -1,2 +1,2 @@
1
- import*as e from"react";import{Table as S}from"../table/Table.js";import{DataTable as s}from"./DataTable.js";import{AsyncDataState as E}from"./DataTable.types.js";import{useDataTable as k}from"./DataTableContext.js";import{DataTableLoading as D}from"./DataTableLoading.js";const T=({sortable:l,striped:m,theme:c,css:i,scrollOptions:t={numberOfStickyColumns:0,hasStickyHeader:!1},rowAction:p,...u})=>{const{asyncDataState:b,getTotalRows:y,getCanSomeRowsExpand:r,enableRowSelection:n,tableId:d}=k(),o=b===E.PENDING,C=!o&&y()===0,f=()=>{let a=0;return r()&&!!n?a=2:(r()||!!n)&&(a=1),`${d}_${a}_control_columns`};return C?null:e.createElement(e.Fragment,null,e.createElement(D,null),e.createElement(S,{...u,numberOfStickyColumns:t.numberOfStickyColumns,scrollContainerCss:t.scrollContainerCss,scrollContainerkey:f(),css:{...i,...o&&{opacity:.5,pointerEvents:"none",transition:"opacity 250ms linear 150ms"}}},e.createElement(s.Head,{theme:c,sortable:l,isSticky:t.hasStickyHeader,css:t.headerCss}),e.createElement(s.Body,{striped:m,rowAction:p})))};export{T as DataTableTable};
1
+ import*as e from"react";import{Table as f}from"../table/Table.js";import{DataTable as s}from"./DataTable.js";import{AsyncDataState as S}from"./DataTable.types.js";import{useDataTable as E}from"./DataTableContext.js";import{DataTableLoading as k}from"./DataTableLoading.js";const D=({sortable:l,striped:m,theme:c,css:i,scrollOptions:t={numberOfStickyColumns:0,hasStickyHeader:!1},...p})=>{const{asyncDataState:u,getTotalRows:b,getCanSomeRowsExpand:r,enableRowSelection:n,tableId:y}=E(),o=u===S.PENDING,C=!o&&b()===0,d=()=>{let a=0;return r()&&!!n?a=2:(r()||!!n)&&(a=1),`${y}_${a}_control_columns`};return C?null:e.createElement(e.Fragment,null,e.createElement(k,null),e.createElement(f,{...p,numberOfStickyColumns:t.numberOfStickyColumns,scrollContainerCss:t.scrollContainerCss,scrollContainerkey:d(),css:{...i,...o&&{opacity:.5,pointerEvents:"none",transition:"opacity 250ms linear 150ms"}}},e.createElement(s.Head,{theme:c,sortable:l,isSticky:t.hasStickyHeader,css:t.headerCss}),e.createElement(s.Body,{striped:m})))};export{D as DataTableTable};
2
2
  //# sourceMappingURL=DataTableTable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataTableTable.js","sources":["../../../src/components/data-table/DataTableTable.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { CSS } from '~/stitches'\n\nimport { Table } from '../table'\nimport { TableBody } from '../table/TableBody'\nimport { DataTable } from './DataTable'\nimport { AsyncDataState } from './DataTable.types'\nimport { useDataTable } from './DataTableContext'\nimport { DataTableHead } from './DataTableHead'\nimport { DataTableLoading } from './DataTableLoading'\n\nexport type DataTableTableProps = Omit<\n React.ComponentProps<typeof Table>,\n 'children' | 'numberOfStickyColumns'\n> &\n Partial<\n Pick<React.ComponentProps<typeof DataTableHead>, 'theme' | 'sortable'>\n > &\n Partial<Pick<React.ComponentProps<typeof TableBody>, 'striped'>> & {\n scrollOptions?: {\n hasStickyHeader?: boolean\n headerCss?: CSS\n numberOfStickyColumns?: number\n scrollContainerCss?: CSS\n }\n rowAction?: (row: Record<string, unknown>, event: React.MouseEvent) => void\n }\n\nexport const DataTableTable = ({\n sortable,\n striped,\n theme,\n css,\n scrollOptions = {\n numberOfStickyColumns: 0,\n hasStickyHeader: false\n },\n rowAction,\n ...props\n}: DataTableTableProps) => {\n const {\n asyncDataState,\n getTotalRows,\n getCanSomeRowsExpand,\n enableRowSelection,\n tableId\n } = useDataTable()\n\n const isPending = asyncDataState === AsyncDataState.PENDING\n const isEmpty = !isPending && getTotalRows() === 0\n\n const buildScrollContainerKey = (): string => {\n let controlColumnCount = 0\n\n if (getCanSomeRowsExpand() && !!enableRowSelection) {\n controlColumnCount = 2\n } else if (getCanSomeRowsExpand() || !!enableRowSelection) {\n controlColumnCount = 1\n }\n\n return `${tableId}_${controlColumnCount}_control_columns`\n }\n\n if (isEmpty) return null\n\n return (\n <>\n <DataTableLoading />\n\n <Table\n {...props}\n numberOfStickyColumns={scrollOptions.numberOfStickyColumns}\n scrollContainerCss={scrollOptions.scrollContainerCss}\n scrollContainerkey={buildScrollContainerKey()}\n css={{\n ...css,\n ...(isPending && {\n opacity: 0.5,\n pointerEvents: 'none',\n transition: 'opacity 250ms linear 150ms'\n })\n }}\n >\n <DataTable.Head\n theme={theme}\n sortable={sortable}\n isSticky={scrollOptions.hasStickyHeader}\n css={scrollOptions.headerCss}\n />\n <DataTable.Body striped={striped} rowAction={rowAction} />\n </Table>\n </>\n )\n}\n"],"names":["DataTableTable","sortable","striped","theme","css","scrollOptions","rowAction","props","asyncDataState","getTotalRows","getCanSomeRowsExpand","enableRowSelection","tableId","useDataTable","isPending","AsyncDataState","isEmpty","buildScrollContainerKey","controlColumnCount","React","DataTableLoading","Table","DataTable"],"mappings":"iRA6Ba,MAAAA,EAAiB,CAAC,CAC7B,SAAAC,EACA,QAAAC,EACA,MAAAC,EACA,IAAAC,EACA,cAAAC,EAAgB,CACd,sBAAuB,EACvB,gBAAiB,EACnB,EACA,UAAAC,KACGC,CACL,IAA2B,CACzB,KAAM,CACJ,eAAAC,EACA,aAAAC,EACA,qBAAAC,EACA,mBAAAC,EACA,QAAAC,CACF,EAAIC,EAEEC,EAAAA,EAAYN,IAAmBO,EAAe,QAC9CC,EAAU,CAACF,GAAaL,EAAmB,IAAA,EAE3CQ,EAA0B,IAAc,CAC5C,IAAIC,EAAqB,EAEzB,OAAIR,KAA0B,CAAC,CAACC,EAC9BO,EAAqB,GACZR,EAAqB,GAAK,CAAC,CAACC,KACrCO,EAAqB,GAGhB,GAAGN,KAAWM,mBACvB,EAEA,OAAIF,EAAgB,KAGlBG,EAAA,cAAAA,EAAA,SAAA,KACEA,EAAA,cAACC,EAAA,IAAiB,EAElBD,EAAA,cAACE,EAAA,CACE,GAAGd,EACJ,sBAAuBF,EAAc,sBACrC,mBAAoBA,EAAc,mBAClC,mBAAoBY,EACpB,EAAA,IAAK,CACH,GAAGb,EACH,GAAIU,GAAa,CACf,QAAS,GACT,cAAe,OACf,WAAY,4BACd,CACF,CAEAK,EAAAA,EAAA,cAACG,EAAU,KAAV,CACC,MAAOnB,EACP,SAAUF,EACV,SAAUI,EAAc,gBACxB,IAAKA,EAAc,SAAA,CACrB,EACAc,EAAA,cAACG,EAAU,KAAV,CAAe,QAASpB,EAAS,UAAWI,CAAW,CAAA,CAC1D,CACF,CAEJ"}
1
+ {"version":3,"file":"DataTableTable.js","sources":["../../../src/components/data-table/DataTableTable.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { CSS } from '~/stitches'\n\nimport { Table } from '../table'\nimport { TableBody } from '../table/TableBody'\nimport { DataTable } from './DataTable'\nimport { AsyncDataState } from './DataTable.types'\nimport { useDataTable } from './DataTableContext'\nimport { DataTableHead } from './DataTableHead'\nimport { DataTableLoading } from './DataTableLoading'\n\nexport type DataTableTableProps = Omit<\n React.ComponentProps<typeof Table>,\n 'children' | 'numberOfStickyColumns'\n> &\n Partial<\n Pick<React.ComponentProps<typeof DataTableHead>, 'theme' | 'sortable'>\n > &\n Partial<Pick<React.ComponentProps<typeof TableBody>, 'striped'>> & {\n scrollOptions?: {\n hasStickyHeader?: boolean\n headerCss?: CSS\n numberOfStickyColumns?: number\n scrollContainerCss?: CSS\n }\n }\n\nexport const DataTableTable = ({\n sortable,\n striped,\n theme,\n css,\n scrollOptions = {\n numberOfStickyColumns: 0,\n hasStickyHeader: false\n },\n ...props\n}: DataTableTableProps) => {\n const {\n asyncDataState,\n getTotalRows,\n getCanSomeRowsExpand,\n enableRowSelection,\n tableId\n } = useDataTable()\n\n const isPending = asyncDataState === AsyncDataState.PENDING\n const isEmpty = !isPending && getTotalRows() === 0\n\n const buildScrollContainerKey = (): string => {\n let controlColumnCount = 0\n\n if (getCanSomeRowsExpand() && !!enableRowSelection) {\n controlColumnCount = 2\n } else if (getCanSomeRowsExpand() || !!enableRowSelection) {\n controlColumnCount = 1\n }\n\n return `${tableId}_${controlColumnCount}_control_columns`\n }\n\n if (isEmpty) return null\n\n return (\n <>\n <DataTableLoading />\n\n <Table\n {...props}\n numberOfStickyColumns={scrollOptions.numberOfStickyColumns}\n scrollContainerCss={scrollOptions.scrollContainerCss}\n scrollContainerkey={buildScrollContainerKey()}\n css={{\n ...css,\n ...(isPending && {\n opacity: 0.5,\n pointerEvents: 'none',\n transition: 'opacity 250ms linear 150ms'\n })\n }}\n >\n <DataTable.Head\n theme={theme}\n sortable={sortable}\n isSticky={scrollOptions.hasStickyHeader}\n css={scrollOptions.headerCss}\n />\n <DataTable.Body striped={striped} />\n </Table>\n </>\n )\n}\n"],"names":["DataTableTable","sortable","striped","theme","css","scrollOptions","props","asyncDataState","getTotalRows","getCanSomeRowsExpand","enableRowSelection","tableId","useDataTable","isPending","AsyncDataState","isEmpty","buildScrollContainerKey","controlColumnCount","React","DataTableLoading","Table","DataTable"],"mappings":"iRA4BO,MAAMA,EAAiB,CAAC,CAC7B,SAAAC,EACA,QAAAC,EACA,MAAAC,EACA,IAAAC,EACA,cAAAC,EAAgB,CACd,sBAAuB,EACvB,gBAAiB,EACnB,KACGC,CACL,IAA2B,CACzB,KAAM,CACJ,eAAAC,EACA,aAAAC,EACA,qBAAAC,EACA,mBAAAC,EACA,QAAAC,CACF,EAAIC,EAAa,EAEXC,EAAYN,IAAmBO,EAAe,QAC9CC,EAAU,CAACF,GAAaL,EAAmB,IAAA,EAE3CQ,EAA0B,IAAc,CAC5C,IAAIC,EAAqB,EAEzB,OAAIR,EAAAA,GAA0B,CAAC,CAACC,EAC9BO,EAAqB,GACZR,EAAqB,GAAK,CAAC,CAACC,KACrCO,EAAqB,GAGhB,GAAGN,KAAWM,mBACvB,EAEA,OAAIF,EAAgB,KAGlBG,EAAA,cAAAA,EAAA,SACEA,KAAAA,EAAA,cAACC,EAAA,IAAiB,EAElBD,EAAA,cAACE,EAAA,CACE,GAAGd,EACJ,sBAAuBD,EAAc,sBACrC,mBAAoBA,EAAc,mBAClC,mBAAoBW,EAAwB,EAC5C,IAAK,CACH,GAAGZ,EACH,GAAIS,GAAa,CACf,QAAS,GACT,cAAe,OACf,WAAY,4BACd,CACF,CAAA,EAEAK,EAAA,cAACG,EAAU,KAAV,CACC,MAAOlB,EACP,SAAUF,EACV,SAAUI,EAAc,gBACxB,IAAKA,EAAc,SACrB,CAAA,EACAa,EAAA,cAACG,EAAU,KAAV,CAAe,QAASnB,CAAS,CAAA,CACpC,CACF,CAEJ"}
@@ -3,7 +3,7 @@ import { DateInputProps } from '../../components/date-input';
3
3
  import { FieldElementWrapperProps } from '../../components/field-wrapper';
4
4
  type DateFieldProps = DateInputProps & FieldElementWrapperProps;
5
5
  export declare const DateField: {
6
- ({ css, hideLabel, label, name, validation, prompt, description, ...remainingProps }: DateFieldProps): React.JSX.Element;
6
+ ({ css, hideLabel, label, name, validation, prompt, description, appearance, ...remainingProps }: DateFieldProps): React.JSX.Element;
7
7
  displayName: string;
8
8
  };
9
9
  export {};
@@ -1,2 +1,2 @@
1
- import*as i from"react";import{useFormContext as u}from"react-hook-form";import{DateInput as F}from"../date-input/DateInput.js";import{FieldWrapper as b}from"../field-wrapper/FieldWrapper.js";import"../field-wrapper/InlineFieldWrapper.js";import"../form/Form.js";import{useFieldError as g}from"../form/useFieldError.js";const a=({css:m,hideLabel:l,label:p,name:e,validation:r,prompt:d,description:n,...s})=>{const{register:t,trigger:c}=u(),{error:o}=g(e),f=r?t(r):t;return i.createElement(b,{css:m,description:n,error:o,fieldId:e,hideLabel:l,label:p,prompt:d,required:Boolean(r==null?void 0:r.required)},i.createElement(F,{id:e,name:e,ref:f,...o&&{state:"error"},...s,revalidate:c}))};a.displayName="DateField";export{a as DateField};
1
+ import*as i from"react";import{useFormContext as F}from"react-hook-form";import{DateInput as b}from"../date-input/DateInput.js";import{FieldWrapper as g}from"../field-wrapper/FieldWrapper.js";import"../field-wrapper/InlineFieldWrapper.js";import"../form/Form.js";import{useFieldError as v}from"../form/useFieldError.js";import"../form/useFormCustomContext.js";const p=({css:m,hideLabel:l,label:d,name:e,validation:r,prompt:n,description:s,appearance:t,...c})=>{const{register:o,trigger:f}=F(),{error:a}=v(e),u=r?o(r):o;return i.createElement(g,{css:m,description:s,error:a,fieldId:e,hideLabel:l,label:d,prompt:n,required:Boolean(r==null?void 0:r.required),appearance:t},i.createElement(b,{id:e,name:e,ref:u,appearance:t,...a&&{state:"error"},...c,revalidate:f}))};p.displayName="DateField";export{p as DateField};
2
2
  //# sourceMappingURL=DateField.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateField.js","sources":["../../../src/components/date-field/DateField.tsx"],"sourcesContent":["import * as React from 'react'\nimport { useFormContext } from 'react-hook-form'\n\nimport { DateInput, DateInputProps } from '~/components/date-input'\nimport {\n FieldElementWrapperProps,\n FieldWrapper\n} from '~/components/field-wrapper'\nimport { useFieldError } from '~/components/form'\n\ntype DateFieldProps = DateInputProps & FieldElementWrapperProps\n\nexport const DateField = ({\n css,\n hideLabel,\n label,\n name,\n validation,\n prompt,\n description,\n ...remainingProps\n}: DateFieldProps) => {\n const { register, trigger } = useFormContext()\n const { error } = useFieldError(name)\n const ref = validation ? register(validation) : register\n\n return (\n <FieldWrapper\n css={css}\n description={description}\n error={error}\n fieldId={name}\n hideLabel={hideLabel}\n label={label}\n prompt={prompt}\n required={Boolean(validation?.required)}\n >\n <DateInput\n id={name}\n name={name}\n ref={ref}\n {...(error && { state: 'error' })}\n {...remainingProps}\n revalidate={trigger}\n />\n </FieldWrapper>\n )\n}\n\nDateField.displayName = 'DateField'\n"],"names":["DateField","css","hideLabel","label","name","validation","prompt","description","remainingProps","register","trigger","useFormContext","error","useFieldError","ref","React","FieldWrapper","DateInput"],"mappings":"gUAYO,MAAMA,EAAY,CAAC,CACxB,IAAAC,EACA,UAAAC,EACA,MAAAC,EACA,KAAAC,EACA,WAAAC,EACA,OAAAC,EACA,YAAAC,KACGC,CACL,IAAsB,CACpB,KAAM,CAAE,SAAAC,EAAU,QAAAC,CAAQ,EAAIC,EACxB,EAAA,CAAE,MAAAC,CAAM,EAAIC,EAAcT,CAAI,EAC9BU,EAAMT,EAAaI,EAASJ,CAAU,EAAII,EAEhD,OACEM,EAAA,cAACC,EAAA,CACC,IAAKf,EACL,YAAaM,EACb,MAAOK,EACP,QAASR,EACT,UAAWF,EACX,MAAOC,EACP,OAAQG,EACR,SAAU,QAAQD,GAAA,KAAA,OAAAA,EAAY,QAAQ,CAAA,EAEtCU,EAAA,cAACE,EAAA,CACC,GAAIb,EACJ,KAAMA,EACN,IAAKU,EACJ,GAAIF,GAAS,CAAE,MAAO,OAAQ,EAC9B,GAAGJ,EACJ,WAAYE,CAAAA,CACd,CACF,CAEJ,EAEAV,EAAU,YAAc"}
1
+ {"version":3,"file":"DateField.js","sources":["../../../src/components/date-field/DateField.tsx"],"sourcesContent":["import * as React from 'react'\nimport { useFormContext } from 'react-hook-form'\n\nimport { DateInput, DateInputProps } from '~/components/date-input'\nimport {\n FieldElementWrapperProps,\n FieldWrapper\n} from '~/components/field-wrapper'\nimport { useFieldError } from '~/components/form'\n\ntype DateFieldProps = DateInputProps & FieldElementWrapperProps\n\nexport const DateField = ({\n css,\n hideLabel,\n label,\n name,\n validation,\n prompt,\n description,\n appearance,\n ...remainingProps\n}: DateFieldProps) => {\n const { register, trigger } = useFormContext()\n const { error } = useFieldError(name)\n const ref = validation ? register(validation) : register\n\n return (\n <FieldWrapper\n css={css}\n description={description}\n error={error}\n fieldId={name}\n hideLabel={hideLabel}\n label={label}\n prompt={prompt}\n required={Boolean(validation?.required)}\n appearance={appearance}\n >\n <DateInput\n id={name}\n name={name}\n ref={ref}\n appearance={appearance}\n {...(error && { state: 'error' })}\n {...remainingProps}\n revalidate={trigger}\n />\n </FieldWrapper>\n )\n}\n\nDateField.displayName = 'DateField'\n"],"names":["DateField","css","hideLabel","label","name","validation","prompt","description","appearance","remainingProps","register","trigger","useFormContext","error","useFieldError","ref","React","FieldWrapper","DateInput"],"mappings":"wWAYa,MAAAA,EAAY,CAAC,CACxB,IAAAC,EACA,UAAAC,EACA,MAAAC,EACA,KAAAC,EACA,WAAAC,EACA,OAAAC,EACA,YAAAC,EACA,WAAAC,KACGC,CACL,IAAsB,CACpB,KAAM,CAAE,SAAAC,EAAU,QAAAC,CAAQ,EAAIC,EAAe,EACvC,CAAE,MAAAC,CAAM,EAAIC,EAAcV,CAAI,EAC9BW,EAAMV,EAAaK,EAASL,CAAU,EAAIK,EAEhD,OACEM,EAAA,cAACC,EAAA,CACC,IAAKhB,EACL,YAAaM,EACb,MAAOM,EACP,QAAST,EACT,UAAWF,EACX,MAAOC,EACP,OAAQG,EACR,SAAU,QAAQD,GAAA,KAAA,OAAAA,EAAY,QAAQ,EACtC,WAAYG,CAAAA,EAEZQ,EAAA,cAACE,EAAA,CACC,GAAId,EACJ,KAAMA,EACN,IAAKW,EACL,WAAYP,EACX,GAAIK,GAAS,CAAE,MAAO,OAAQ,EAC9B,GAAGJ,EACJ,WAAYE,CAAAA,CACd,CACF,CAEJ,EAEAX,EAAU,YAAc"}
@@ -1,6 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { ValidationOptions } from '../../components/form';
3
3
  import type { CSS } from '../../stitches';
4
+ import { type LabelProps } from '../label/Label';
4
5
  export type FieldWrapperProps = {
5
6
  css?: CSS;
6
7
  error?: string;
@@ -14,12 +15,13 @@ export type FieldWrapperProps = {
14
15
  description?: string;
15
16
  required?: boolean;
16
17
  hideLabel?: boolean;
18
+ appearance?: LabelProps['appearance'];
17
19
  };
18
20
  export type FieldElementWrapperProps = Omit<FieldWrapperProps, 'fieldId'> & {
19
21
  name: string;
20
22
  validation?: ValidationOptions;
21
23
  };
22
24
  export declare const FieldWrapper: {
23
- ({ css, children, error, fieldId, label, prompt, description, required, hideLabel }: React.PropsWithChildren<FieldWrapperProps>): React.JSX.Element;
25
+ ({ css, children, error, fieldId, label, prompt, description, required, hideLabel, appearance }: React.PropsWithChildren<FieldWrapperProps>): React.JSX.Element;
24
26
  displayName: string;
25
27
  };
@@ -1,2 +1,2 @@
1
- import*as d from"@radix-ui/react-visually-hidden";import*as r from"react";import{Box as f}from"../box/Box.js";import{Flex as b}from"../flex/Flex.js";import{InlineMessage as u}from"../inline-message/InlineMessage.js";import{Label as E}from"../label/Label.js";import{Link as h}from"../link/Link.js";import{Description as k}from"./FieldDescription.js";const m=({css:l,children:i,error:t,fieldId:n,label:s,prompt:e,description:o,required:c,hideLabel:a})=>{const p=a?d.Root:b;return r.createElement(f,{css:l},r.createElement(p,{css:{justifyContent:"space-between",alignItems:"center",mb:"$3"}},r.createElement(E,{htmlFor:n,required:c},s),e&&r.createElement(h,{href:e==null?void 0:e.link,onClick:e==null?void 0:e.onClick,size:"sm"},e.label)),o&&r.createElement(k,{css:{mb:"$3"}},o),i,t&&r.createElement(u,{css:{mt:"$2"}},t))};m.displayName="FieldWrapper";export{m as FieldWrapper};
1
+ import*as f from"@radix-ui/react-visually-hidden";import*as r from"react";import{Box as b}from"../box/Box.js";import{Flex as u}from"../flex/Flex.js";import{InlineMessage as E}from"../inline-message/InlineMessage.js";import{Label as h}from"../label/Label.js";import{Link as k}from"../link/Link.js";import{Description as F}from"./FieldDescription.js";const o=({css:m,children:l,error:t,fieldId:n,label:a,prompt:e,description:i,required:s,hideLabel:p,appearance:c})=>{const d=p?f.Root:u;return r.createElement(b,{css:m},r.createElement(d,{css:{justifyContent:"space-between",alignItems:"center",mb:"$3"}},r.createElement(h,{htmlFor:n,required:s,appearance:c},a),e&&r.createElement(k,{href:e==null?void 0:e.link,onClick:e==null?void 0:e.onClick,size:"sm"},e.label)),i&&r.createElement(F,{css:{mb:"$3"}},i),l,t&&r.createElement(E,{css:{mt:"$2"}},t))};o.displayName="FieldWrapper";export{o as FieldWrapper};
2
2
  //# sourceMappingURL=FieldWrapper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FieldWrapper.js","sources":["../../../src/components/field-wrapper/FieldWrapper.tsx"],"sourcesContent":["import * as VisuallyHidden from '@radix-ui/react-visually-hidden'\nimport * as React from 'react'\n\nimport { Box } from '~/components/box'\nimport { Flex } from '~/components/flex'\nimport { ValidationOptions } from '~/components/form'\nimport { InlineMessage } from '~/components/inline-message'\nimport { Label } from '~/components/label'\nimport { Link } from '~/components/link'\nimport type { CSS } from '~/stitches'\n\nimport { Description } from './FieldDescription'\n\nexport type FieldWrapperProps = {\n css?: CSS\n error?: string\n fieldId: string\n label: string\n prompt?: { link?: string; label: string; onClick?: () => void }\n description?: string\n required?: boolean\n hideLabel?: boolean\n}\n\nexport type FieldElementWrapperProps = Omit<FieldWrapperProps, 'fieldId'> & {\n name: string\n validation?: ValidationOptions\n}\n\nexport const FieldWrapper = ({\n css,\n children,\n error,\n fieldId,\n label,\n prompt,\n description,\n required,\n hideLabel\n}: React.PropsWithChildren<FieldWrapperProps>) => {\n const LabelContainer = hideLabel ? VisuallyHidden.Root : Flex\n\n return (\n <Box css={css}>\n <LabelContainer\n css={{\n justifyContent: 'space-between',\n alignItems: 'center',\n mb: '$3'\n }}\n >\n <Label htmlFor={fieldId} required={required}>\n {label}\n </Label>\n {prompt && (\n <Link href={prompt?.link} onClick={prompt?.onClick} size=\"sm\">\n {prompt.label}\n </Link>\n )}\n </LabelContainer>\n {description && (\n <Description css={{ mb: '$3' }}>{description}</Description>\n )}\n {children}\n {error && <InlineMessage css={{ mt: '$2' }}>{error}</InlineMessage>}\n </Box>\n )\n}\n\nFieldWrapper.displayName = 'FieldWrapper'\n"],"names":["FieldWrapper","css","children","error","fieldId","label","prompt","description","required","hideLabel","LabelContainer","VisuallyHidden","Flex","React","Box","Label","Link","Description","InlineMessage"],"mappings":"6VA6BO,MAAMA,EAAe,CAAC,CAC3B,IAAAC,EACA,SAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EACA,OAAAC,EACA,YAAAC,EACA,SAAAC,EACA,UAAAC,CACF,IAAkD,CAChD,MAAMC,EAAiBD,EAAYE,EAAe,KAAOC,EAEzD,OACEC,EAAA,cAACC,EAAA,CAAI,IAAKb,CAAAA,EACRY,EAAA,cAACH,EAAA,CACC,IAAK,CACH,eAAgB,gBAChB,WAAY,SACZ,GAAI,IACN,CAAA,EAEAG,EAAA,cAACE,EAAA,CAAM,QAASX,EAAS,SAAUI,CAChCH,EAAAA,CACH,EACCC,GACCO,EAAA,cAACG,EAAA,CAAK,KAAMV,GAAA,KAAA,OAAAA,EAAQ,KAAM,QAASA,GAAA,YAAAA,EAAQ,QAAS,KAAK,IAAA,EACtDA,EAAO,KACV,CAEJ,EACCC,GACCM,EAAA,cAACI,EAAA,CAAY,IAAK,CAAE,GAAI,IAAK,GAAIV,CAAY,EAE9CL,EACAC,GAASU,EAAA,cAACK,EAAA,CAAc,IAAK,CAAE,GAAI,IAAK,CAAA,EAAIf,CAAM,CACrD,CAEJ,EAEAH,EAAa,YAAc"}
1
+ {"version":3,"file":"FieldWrapper.js","sources":["../../../src/components/field-wrapper/FieldWrapper.tsx"],"sourcesContent":["import * as VisuallyHidden from '@radix-ui/react-visually-hidden'\nimport * as React from 'react'\n\nimport { Box } from '~/components/box'\nimport { Flex } from '~/components/flex'\nimport { ValidationOptions } from '~/components/form'\nimport { InlineMessage } from '~/components/inline-message'\nimport { Label } from '~/components/label'\nimport { Link } from '~/components/link'\nimport type { CSS } from '~/stitches'\n\nimport { Description } from './FieldDescription'\nimport { type LabelProps } from '../label/Label'\n\nexport type FieldWrapperProps = {\n css?: CSS\n error?: string\n fieldId: string\n label: string\n prompt?: { link?: string; label: string; onClick?: () => void }\n description?: string\n required?: boolean\n hideLabel?: boolean\n appearance?: LabelProps['appearance']\n}\n\nexport type FieldElementWrapperProps = Omit<FieldWrapperProps, 'fieldId'> & {\n name: string\n validation?: ValidationOptions\n}\n\nexport const FieldWrapper = ({\n css,\n children,\n error,\n fieldId,\n label,\n prompt,\n description,\n required,\n hideLabel,\n appearance\n}: React.PropsWithChildren<FieldWrapperProps>) => {\n const LabelContainer = hideLabel ? VisuallyHidden.Root : Flex\n\n return (\n <Box css={css}>\n <LabelContainer\n css={{\n justifyContent: 'space-between',\n alignItems: 'center',\n mb: '$3'\n }}\n >\n <Label htmlFor={fieldId} required={required} appearance={appearance}>\n {label}\n </Label>\n {prompt && (\n <Link href={prompt?.link} onClick={prompt?.onClick} size=\"sm\">\n {prompt.label}\n </Link>\n )}\n </LabelContainer>\n {description && (\n <Description css={{ mb: '$3' }}>{description}</Description>\n )}\n {children}\n {error && <InlineMessage css={{ mt: '$2' }}>{error}</InlineMessage>}\n </Box>\n )\n}\n\nFieldWrapper.displayName = 'FieldWrapper'\n"],"names":["FieldWrapper","css","children","error","fieldId","label","prompt","description","required","hideLabel","appearance","LabelContainer","VisuallyHidden","Flex","React","Box","Label","Link","Description","InlineMessage"],"mappings":"6VA+Ba,MAAAA,EAAe,CAAC,CAC3B,IAAAC,EACA,SAAAC,EACA,MAAAC,EACA,QAAAC,EACA,MAAAC,EACA,OAAAC,EACA,YAAAC,EACA,SAAAC,EACA,UAAAC,EACA,WAAAC,CACF,IAAkD,CAChD,MAAMC,EAAiBF,EAAYG,EAAe,KAAOC,EAEzD,OACEC,EAAA,cAACC,EAAA,CAAI,IAAKd,CAAAA,EACRa,EAAA,cAACH,EAAA,CACC,IAAK,CACH,eAAgB,gBAChB,WAAY,SACZ,GAAI,IACN,CAEAG,EAAAA,EAAA,cAACE,EAAA,CAAM,QAASZ,EAAS,SAAUI,EAAU,WAAYE,CAAAA,EACtDL,CACH,EACCC,GACCQ,EAAA,cAACG,EAAA,CAAK,KAAMX,GAAA,KAAAA,OAAAA,EAAQ,KAAM,QAASA,GAAA,KAAAA,OAAAA,EAAQ,QAAS,KAAK,IACtDA,EAAAA,EAAO,KACV,CAEJ,EACCC,GACCO,EAAA,cAACI,EAAA,CAAY,IAAK,CAAE,GAAI,IAAK,CAAIX,EAAAA,CAAY,EAE9CL,EACAC,GAASW,EAAA,cAACK,EAAA,CAAc,IAAK,CAAE,GAAI,IAAK,GAAIhB,CAAM,CACrD,CAEJ,EAEAH,EAAa,YAAc"}
@@ -1,5 +1,6 @@
1
- import React from 'react';
1
+ import * as React from 'react';
2
2
  import type { DefaultValues, FieldValues, Mode, SubmitErrorHandler, SubmitHandler, UseFormMethods } from 'react-hook-form';
3
+ import { type FormCustomContextType } from './useFormCustomContext';
3
4
  declare const StyledForm: import("@atom-learning/stitches-react/types/styled-component").StyledComponent<"form", {}, {
4
5
  sm: string;
5
6
  md: string;
@@ -378,7 +379,7 @@ interface FormProps<TFormData extends FieldValues> extends StyledFormProps {
378
379
  children: React.ReactNode | ((methods: UseFormMethods<TFormData>) => React.ReactNode);
379
380
  }
380
381
  export declare const Form: {
381
- <TFormData extends FieldValues>(props: FormProps<TFormData>): React.JSX.Element;
382
+ <TFormData extends FieldValues>(props: FormProps<TFormData> & FormCustomContextType): React.JSX.Element;
382
383
  displayName: string;
383
384
  };
384
385
  export {};