@atom-learning/components 2.37.0 → 2.38.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/CHANGELOG.md +2 -9
  2. package/dist/components/accordion/AccordionItem.js +1 -1
  3. package/dist/components/action-icon/ActionIcon.js +1 -1
  4. package/dist/components/avatar/Avatar.js +1 -1
  5. package/dist/components/calendar/Calendar.js +1 -1
  6. package/dist/components/carousel/CarouselArrows.js +1 -1
  7. package/dist/components/carousel/CarouselSlide.js +1 -1
  8. package/dist/components/chip/Chip.js +1 -1
  9. package/dist/components/chip/ChipGroup.js +1 -1
  10. package/dist/components/chip-dismissible-group/ChipDismissibleGroupRoot.js +1 -1
  11. package/dist/components/data-table/DataTable.js +1 -1
  12. package/dist/components/data-table/DataTableBody.js +1 -1
  13. package/dist/components/data-table/DataTableDataCell.js +1 -1
  14. package/dist/components/data-table/DataTableRow.js +1 -1
  15. package/dist/components/data-table/drag-and-drop/DraggableRow.js +1 -1
  16. package/dist/components/data-table/drag-and-drop/Handle.js +1 -1
  17. package/dist/components/dismissible/DismissibleRoot.js +1 -1
  18. package/dist/components/dismissible/DismissibleTrigger.js +1 -1
  19. package/dist/components/dropdown-menu/DropdownMenuLinkItem.js +1 -1
  20. package/dist/components/field-wrapper/FieldDescription.js +1 -1
  21. package/dist/components/field-wrapper/InlineFieldWrapper.js +1 -1
  22. package/dist/components/file-input/FileInput.js +1 -1
  23. package/dist/components/grid/Grid.js +1 -1
  24. package/dist/components/icon/Icon.js +1 -1
  25. package/dist/components/inline-message/InlineMessage.js +1 -1
  26. package/dist/components/label/Label.js +1 -1
  27. package/dist/components/link/Link.js +1 -1
  28. package/dist/components/list/List.js +1 -1
  29. package/dist/components/markdown-content/components/MarkdownEmphasis.js +1 -1
  30. package/dist/components/markdown-content/components/MarkdownHeading.js +1 -1
  31. package/dist/components/markdown-content/components/MarkdownImage.js +1 -1
  32. package/dist/components/markdown-content/components/MarkdownInlineCode.js +1 -1
  33. package/dist/components/markdown-content/components/MarkdownLink.js +1 -1
  34. package/dist/components/markdown-content/components/MarkdownListItem.js +1 -1
  35. package/dist/components/markdown-content/components/MarkdownParagraph.js +1 -1
  36. package/dist/components/markdown-content/components/MarkdownStrong.js +1 -1
  37. package/dist/components/markdown-content/components/MarkdownThematicBreak.js +1 -1
  38. package/dist/components/navigation/NavigationMenuDropdownContent.js +1 -1
  39. package/dist/components/navigation/NavigationMenuLink.js +1 -1
  40. package/dist/components/notification-badge/NotificationBadge.js +1 -1
  41. package/dist/components/number-input/NumberInput.js +1 -1
  42. package/dist/components/number-input-field/NumberInputField.js +1 -1
  43. package/dist/components/popover/PopoverContent.js +1 -1
  44. package/dist/components/radio-button/RadioButton.js +1 -1
  45. package/dist/components/radio-button-field/RadioButtonField.js +1 -1
  46. package/dist/components/radio-button-field/RadioField.js +1 -1
  47. package/dist/components/radio-card/RadioCardGroup.js +1 -1
  48. package/dist/components/search-input/SearchInput.js +1 -1
  49. package/dist/components/select-field/SelectField.js +1 -1
  50. package/dist/components/sidedrawer/SidedrawerAccordion/SidedrawerAccordionContent.js +1 -1
  51. package/dist/components/sidedrawer/SidedrawerContent.js +1 -1
  52. package/dist/components/stack-content/StackContent.js +1 -1
  53. package/dist/components/stepper/StepperStepBack.js +1 -1
  54. package/dist/components/table/TableHeader.js +1 -1
  55. package/dist/components/table/TableRow.js +1 -1
  56. package/dist/components/tabs/Tabs.js +1 -1
  57. package/dist/components/tabs/TabsTrigger.js +1 -1
  58. package/dist/components/tabs/TabsTriggerList.js +1 -1
  59. package/dist/components/tabs/TabsTriggerList.js.map +1 -1
  60. package/dist/components/text/Text.js +1 -1
  61. package/dist/components/toast/Toast.js +1 -1
  62. package/dist/components/toast/ToastProvider.js +1 -1
  63. package/dist/components/toggle-group/ToggleGroupButton.js +1 -1
  64. package/dist/components/tooltip/TooltipContent.js +1 -1
  65. package/dist/components/video/Video.js +1 -1
  66. package/dist/experiments/color-scheme/ColorScheme.js +1 -1
  67. package/dist/index.cjs.js +1 -1
  68. package/dist/index.cjs.js.map +1 -1
  69. package/dist/utilities/hooks/useCallbackRef.js +1 -1
  70. package/dist/utilities/hooks/useResizeObserver.d.ts +8 -0
  71. package/dist/utilities/hooks/useResizeObserver.js +2 -0
  72. package/dist/utilities/hooks/useResizeObserver.js.map +1 -0
  73. package/dist/utilities/hooks/useScrollPosition.d.ts +11 -0
  74. package/dist/utilities/hooks/useScrollPosition.js +2 -0
  75. package/dist/utilities/hooks/useScrollPosition.js.map +1 -0
  76. package/dist/utilities/hooks/{useWindowSize.d.ts → useSize.d.ts} +2 -1
  77. package/dist/utilities/hooks/useSize.js +2 -0
  78. package/dist/utilities/hooks/useSize.js.map +1 -0
  79. package/package.json +1 -1
  80. package/dist/utilities/hooks/useWindowSize.js +0 -2
  81. package/dist/utilities/hooks/useWindowSize.js.map +0 -1
@@ -1,2 +1,2 @@
1
- import*as l from"react";const n=()=>{const e=l.useRef(null),u=l.useCallback(t=>{t&&(e.current=t)},[]);return[e,u]},s=()=>{const[e,u]=l.useState(null),t=l.useCallback(a=>{a&&u(a)},[]);return[e,t]};export{n as useCallbackRef,s as useCallbackRefState};
1
+ import*as t from"react";const n=()=>{const e=t.useRef(null),u=t.useCallback(l=>{l&&(e.current=l)},[]);return[e,u]},s=()=>{const[e,u]=t.useState(null),l=t.useCallback(a=>{a&&u(a)},[]);return[e,l]};export{n as useCallbackRef,s as useCallbackRefState};
2
2
  //# sourceMappingURL=useCallbackRef.js.map
@@ -0,0 +1,8 @@
1
+ declare type TUseResizeObserverOptions = {
2
+ elements: (HTMLElement | undefined | null)[];
3
+ onResize: (entries: ResizeObserverEntry[]) => void;
4
+ delay?: number;
5
+ };
6
+ declare type TUseResizeObserverOutput = ResizeObserver | null;
7
+ export declare const useResizeObserver: ({ delay, elements, onResize }: TUseResizeObserverOptions) => TUseResizeObserverOutput;
8
+ export {};
@@ -0,0 +1,2 @@
1
+ import*as t from"react";import{debounce as u}from"throttle-debounce";const c=r=>{try{return new ResizeObserver(r)}catch{return null}},l=({delay:r=500,elements:n,onResize:s})=>{const e=t.useMemo(()=>c(u(r,s)),[r,s]);return t.useEffect(()=>(n.forEach(o=>{o&&(e==null||e.observe(o))}),()=>{n.forEach(o=>o&&(e==null?void 0:e.unobserve(o)))}),[e,n]),e};export{l as useResizeObserver};
2
+ //# sourceMappingURL=useResizeObserver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useResizeObserver.js","sources":["../../../src/utilities/hooks/useResizeObserver.ts"],"sourcesContent":["import * as React from 'react'\nimport { debounce } from 'throttle-debounce'\n\ntype TUseResizeObserverOptions = {\n elements: (HTMLElement | undefined | null)[]\n onResize: (entries: ResizeObserverEntry[]) => void\n delay?: number\n}\n\ntype TUseResizeObserverOutput = ResizeObserver | null\n\nconst createResizeObserver = (callback: () => void) => {\n try {\n return new ResizeObserver(callback)\n } catch {\n return null\n }\n}\n\nexport const useResizeObserver = ({\n delay = 500,\n elements,\n onResize\n}: TUseResizeObserverOptions): TUseResizeObserverOutput => {\n const observer = React.useMemo(\n () => createResizeObserver(debounce(delay, onResize)),\n [delay, onResize]\n )\n\n React.useEffect(() => {\n elements.forEach((element) => {\n if (element) {\n observer?.observe(element)\n }\n })\n\n return () => {\n elements.forEach((element) => element && observer?.unobserve(element))\n }\n }, [observer, elements])\n\n return observer\n}\n"],"names":["createResizeObserver","callback","useResizeObserver","delay","elements","onResize","observer","React","debounce","element"],"mappings":"qEAWA,MAAMA,EAAwBC,GAAyB,CACrD,GAAI,CACF,OAAO,IAAI,eAAeA,CAAQ,CACpC,OACE,OAAO,IACT,CACF,EAEaC,EAAoB,CAAC,CAChC,MAAAC,EAAQ,IACR,SAAAC,EACA,SAAAC,CACF,IAA2D,CACzD,MAAMC,EAAWC,EAAM,QACrB,IAAMP,EAAqBQ,EAASL,EAAOE,CAAQ,CAAC,EACpD,CAACF,EAAOE,CAAQ,CAClB,EAEA,OAAAE,EAAM,UAAU,KACdH,EAAS,QAASK,GAAY,CACxBA,IACFH,GAAA,MAAAA,EAAU,QAAQG,CAEtB,EAAA,CAAC,EAEM,IAAM,CACXL,EAAS,QAASK,GAAYA,IAAWH,GAAA,KAAA,OAAAA,EAAU,UAAUG,CAAAA,EAAQ,CACvE,GACC,CAACH,EAAUF,CAAQ,CAAC,EAEhBE,CACT"}
@@ -0,0 +1,11 @@
1
+ declare type TUseScrollPositionOptions = {
2
+ element?: HTMLElement | null;
3
+ delay?: number;
4
+ delayMethod?: 'throttle' | 'debounce';
5
+ };
6
+ declare type TUseScrollPositionOutput = {
7
+ left: number;
8
+ top: number;
9
+ };
10
+ export declare const useScrollPosition: ({ element, delay, delayMethod }: TUseScrollPositionOptions) => TUseScrollPositionOutput;
11
+ export {};
@@ -0,0 +1,2 @@
1
+ import{useState as c,useMemo as u,useEffect as f}from"react";import{throttle as i,debounce as d}from"throttle-debounce";const m=({element:e,delay:r=500,delayMethod:t="throttle"})=>{const[n,s]=c({left:0,top:0}),o=u(()=>{if(t==="throttle")return i;if(t==="debounce")return d},[t]);return f(()=>{if(!e)return;const l=o(r,()=>{s({left:e.scrollLeft,top:e.scrollTop})});return e.addEventListener("scroll",l),()=>{e.removeEventListener("scroll",l)}},[e,o,r]),n};export{m as useScrollPosition};
2
+ //# sourceMappingURL=useScrollPosition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useScrollPosition.js","sources":["../../../src/utilities/hooks/useScrollPosition.ts"],"sourcesContent":["import { useEffect, useState, useMemo } from 'react'\nimport { debounce, throttle } from 'throttle-debounce'\n\ntype TUseScrollPositionOptions = {\n element?: HTMLElement | null\n delay?: number\n delayMethod?: 'throttle' | 'debounce'\n}\n\ntype TUseScrollPositionOutput = {\n left: number\n top: number\n}\n\nexport const useScrollPosition = ({\n element,\n delay = 500,\n delayMethod = 'throttle'\n}: TUseScrollPositionOptions): TUseScrollPositionOutput => {\n const [scrollPosition, setScrollPosition] = useState({ left: 0, top: 0 })\n\n const delayMethodFn = useMemo(() => {\n if (delayMethod === 'throttle') return throttle\n if (delayMethod === 'debounce') return debounce\n }, [delayMethod])\n\n useEffect(() => {\n if (!element) return\n\n const handleScroll = delayMethodFn(delay, () => {\n setScrollPosition({ left: element.scrollLeft, top: element.scrollTop })\n })\n\n element.addEventListener('scroll', handleScroll)\n\n return () => {\n element.removeEventListener('scroll', handleScroll)\n }\n }, [element, delayMethodFn, delay])\n\n return scrollPosition\n}\n"],"names":["useScrollPosition","element","delay","delayMethod","scrollPosition","setScrollPosition","useState","delayMethodFn","useMemo","throttle","debounce","useEffect","handleScroll"],"mappings":"wHAcO,MAAMA,EAAoB,CAAC,CAChC,QAAAC,EACA,MAAAC,EAAQ,IACR,YAAAC,EAAc,UAChB,IAA2D,CACzD,KAAM,CAACC,EAAgBC,CAAiB,EAAIC,EAAS,CAAE,KAAM,EAAG,IAAK,CAAE,CAAC,EAElEC,EAAgBC,EAAQ,IAAM,CAClC,GAAIL,IAAgB,WAAY,OAAOM,EACvC,GAAIN,IAAgB,WAAY,OAAOO,CACzC,EAAG,CAACP,CAAW,CAAC,EAEhB,OAAAQ,EAAU,IAAM,CACd,GAAI,CAACV,EAAS,OAEd,MAAMW,EAAeL,EAAcL,EAAO,IAAM,CAC9CG,EAAkB,CAAE,KAAMJ,EAAQ,WAAY,IAAKA,EAAQ,SAAU,CAAC,CACxE,CAAC,EAED,OAAAA,EAAQ,iBAAiB,SAAUW,CAAY,EAExC,IAAM,CACXX,EAAQ,oBAAoB,SAAUW,CAAY,CACpD,CACF,EAAG,CAACX,EAASM,EAAeL,CAAK,CAAC,EAE3BE,CACT"}
@@ -2,7 +2,8 @@ interface Size {
2
2
  width: number | undefined;
3
3
  height: number | undefined;
4
4
  }
5
- export declare const useWindowSize: ({ delay }?: {
5
+ export declare const useSize: ({ element, delay }: {
6
+ element?: HTMLElement | null | undefined;
6
7
  delay?: number | undefined;
7
8
  }) => Size;
8
9
  export {};
@@ -0,0 +1,2 @@
1
+ import{useState as n,useCallback as d,useMemo as r}from"react";import{useResizeObserver as h}from"./useResizeObserver.js";const u=({element:e,delay:t=500})=>{const[o,l]=n({width:void 0,height:void 0}),s=d(()=>{l({width:e==null?void 0:e.clientWidth,height:e==null?void 0:e.clientHeight})},[e]),i=r(()=>[e],[e]);return h({delay:t,elements:i,onResize:s}),o};export{u as useSize};
2
+ //# sourceMappingURL=useSize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSize.js","sources":["../../../src/utilities/hooks/useSize.ts"],"sourcesContent":["import { useCallback, useState, useMemo } from 'react'\nimport { useResizeObserver } from './useResizeObserver'\n\ninterface Size {\n width: number | undefined\n height: number | undefined\n}\n\nexport const useSize = ({\n element,\n delay = 500\n}: {\n element?: HTMLElement | null\n delay?: number\n}): Size => {\n const [size, setSize] = useState<Size>({\n width: undefined,\n height: undefined\n })\n\n const handleResize = useCallback(() => {\n setSize({\n width: element?.clientWidth,\n height: element?.clientHeight\n })\n }, [element])\n\n const elements = useMemo(() => [element], [element])\n\n useResizeObserver({\n delay,\n elements: elements,\n onResize: handleResize\n })\n\n return size\n}\n"],"names":["useSize","element","delay","size","setSize","useState","handleResize","useCallback","elements","useMemo","useResizeObserver"],"mappings":"0HAQa,MAAAA,EAAU,CAAC,CACtB,QAAAC,EACA,MAAAC,EAAQ,GACV,IAGY,CACV,KAAM,CAACC,EAAMC,CAAO,EAAIC,EAAe,CACrC,MAAO,OACP,OAAQ,MACV,CAAC,EAEKC,EAAeC,EAAY,IAAM,CACrCH,EAAQ,CACN,MAAOH,GAAA,KAAA,OAAAA,EAAS,YAChB,OAAQA,GAAA,KAAA,OAAAA,EAAS,YACnB,CAAC,CACH,EAAG,CAACA,CAAO,CAAC,EAENO,EAAWC,EAAQ,IAAM,CAACR,CAAO,EAAG,CAACA,CAAO,CAAC,EAEnD,OAAAS,EAAkB,CAChB,MAAAR,EACA,SAAUM,EACV,SAAUF,CACZ,CAAC,EAEMH,CACT"}
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "main": "dist/index.cjs.js",
5
5
  "typings": "dist/index.d.ts",
6
6
  "module": "dist/index.js",
7
- "version": "2.37.0",
7
+ "version": "2.38.0",
8
8
  "description": "",
9
9
  "files": [
10
10
  "dist"
@@ -1,2 +0,0 @@
1
- import{useState as o,useEffect as r}from"react";import{debounce as d}from"throttle-debounce";const w=({delay:t=500}={})=>{const[i,n]=o({width:void 0,height:void 0});return r(()=>{const e=d(t,()=>{n({width:window.innerWidth,height:window.innerHeight})});return window.addEventListener("resize",e),e(),()=>window.removeEventListener("resize",e)},[t]),i};export{w as useWindowSize};
2
- //# sourceMappingURL=useWindowSize.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useWindowSize.js","sources":["../../../src/utilities/hooks/useWindowSize.ts"],"sourcesContent":["import { useEffect, useState } from 'react'\nimport { debounce } from 'throttle-debounce'\n\ninterface Size {\n width: number | undefined\n height: number | undefined\n}\n\nexport const useWindowSize = ({\n delay = 500\n}: { delay?: number } = {}): Size => {\n const [windowSize, setWindowSize] = useState<Size>({\n width: undefined,\n height: undefined\n })\n\n useEffect(() => {\n const handleResize = debounce(delay, () => {\n setWindowSize({\n width: window.innerWidth,\n height: window.innerHeight\n })\n })\n\n window.addEventListener('resize', handleResize)\n handleResize()\n\n return () => window.removeEventListener('resize', handleResize)\n }, [delay])\n\n return windowSize\n}\n"],"names":["useWindowSize","delay","windowSize","setWindowSize","useState","useEffect","handleResize","debounce"],"mappings":"mGAQaA,EAAgB,CAAC,CAC5B,MAAAC,EAAQ,GACV,EAAwB,CAAC,IAAY,CACnC,KAAM,CAACC,EAAYC,CAAa,EAAIC,EAAe,CACjD,MAAO,OACP,OAAQ,MACV,CAAC,EAED,OAAAC,EAAU,IAAM,CACd,MAAMC,EAAeC,EAASN,EAAO,IAAM,CACzCE,EAAc,CACZ,MAAO,OAAO,WACd,OAAQ,OAAO,WACjB,CAAC,CACH,CAAC,EAED,OAAO,OAAA,iBAAiB,SAAUG,CAAY,EAC9CA,IAEO,IAAM,OAAO,oBAAoB,SAAUA,CAAY,CAChE,EAAG,CAACL,CAAK,CAAC,EAEHC,CACT"}