@os-design/core 1.0.217 → 1.0.218

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 (105) hide show
  1. package/dist/cjs/Alert/index.js +1 -1
  2. package/dist/cjs/Avatar/index.js +1 -1
  3. package/dist/cjs/AvatarSkeleton/index.js +1 -1
  4. package/dist/cjs/Breadcrumb/index.js +3 -3
  5. package/dist/cjs/Breadcrumb/index.js.map +1 -1
  6. package/dist/cjs/BreadcrumbItem/index.js +1 -1
  7. package/dist/cjs/Button/index.js +1 -1
  8. package/dist/cjs/Checkbox/index.js +2 -2
  9. package/dist/cjs/Checkbox/index.js.map +1 -1
  10. package/dist/cjs/CheckboxSkeleton/index.js +1 -1
  11. package/dist/cjs/DatePicker/DatePickerCalendar.js +1 -1
  12. package/dist/cjs/DatePicker/index.js +6 -6
  13. package/dist/cjs/DatePicker/index.js.map +1 -1
  14. package/dist/cjs/Drawer/index.js +1 -1
  15. package/dist/cjs/Form/index.js +1 -1
  16. package/dist/cjs/FormDivider/index.js +1 -1
  17. package/dist/cjs/FormItem/index.js +1 -1
  18. package/dist/cjs/Gallery/index.js +2 -2
  19. package/dist/cjs/Gallery/index.js.map +1 -1
  20. package/dist/cjs/HeaderSkeleton/index.js +1 -1
  21. package/dist/cjs/Image/index.js +1 -1
  22. package/dist/cjs/ImageSkeleton/index.js +1 -1
  23. package/dist/cjs/Input/index.js +2 -2
  24. package/dist/cjs/Input/index.js.map +1 -1
  25. package/dist/cjs/InputNumber/index.js +2 -2
  26. package/dist/cjs/InputNumber/index.js.map +1 -1
  27. package/dist/cjs/InputPassword/index.js +2 -2
  28. package/dist/cjs/InputPassword/index.js.map +1 -1
  29. package/dist/cjs/InputSearch/index.js +2 -2
  30. package/dist/cjs/InputSearch/index.js.map +1 -1
  31. package/dist/cjs/InputSkeleton/index.js +1 -1
  32. package/dist/cjs/Layout/index.js +1 -1
  33. package/dist/cjs/Link/index.js +1 -1
  34. package/dist/cjs/LinkButton/index.js +1 -1
  35. package/dist/cjs/List/WindowScroller.js +1 -1
  36. package/dist/cjs/List/index.js +4 -4
  37. package/dist/cjs/List/index.js.map +1 -1
  38. package/dist/cjs/ListItem/index.js +1 -1
  39. package/dist/cjs/ListItemActions/index.js +2 -2
  40. package/dist/cjs/ListItemActions/index.js.map +1 -1
  41. package/dist/cjs/ListItemLink/index.js +1 -1
  42. package/dist/cjs/ListSkeleton/index.js +1 -1
  43. package/dist/cjs/LogoLink/index.js +1 -1
  44. package/dist/cjs/Menu/index.js +2 -2
  45. package/dist/cjs/Menu/index.js.map +1 -1
  46. package/dist/cjs/MenuDivider/index.js +1 -1
  47. package/dist/cjs/MenuGroup/index.js +4 -4
  48. package/dist/cjs/MenuGroup/index.js.map +1 -1
  49. package/dist/cjs/MenuItem/index.js +1 -1
  50. package/dist/cjs/Modal/index.js +1 -1
  51. package/dist/cjs/Navigation/index.js +1 -1
  52. package/dist/cjs/Navigation/utils/useScrollFlags.js +1 -1
  53. package/dist/cjs/Navigation/utils/useScrollFlags.js.map +1 -1
  54. package/dist/cjs/NavigationItem/index.js +1 -1
  55. package/dist/cjs/PageContent/index.js +1 -1
  56. package/dist/cjs/PageHeader/index.js +1 -1
  57. package/dist/cjs/PageHeaderInputSearch/index.js +2 -2
  58. package/dist/cjs/PageHeaderInputSearch/index.js.map +1 -1
  59. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js +3 -3
  60. package/dist/cjs/PageHeaderInputSearch/utils/defaultLocale.js.map +1 -1
  61. package/dist/cjs/PageHeaderSkeleton/index.js +1 -1
  62. package/dist/cjs/ParagraphSkeleton/index.js +1 -1
  63. package/dist/cjs/Popover/index.js +2 -2
  64. package/dist/cjs/Popover/index.js.map +1 -1
  65. package/dist/cjs/Popover/utils/usePopoverPosition.js +3 -3
  66. package/dist/cjs/Popover/utils/usePopoverPosition.js.map +1 -1
  67. package/dist/cjs/Progress/index.js +1 -1
  68. package/dist/cjs/RadioGroup/index.js +2 -2
  69. package/dist/cjs/RadioGroup/index.js.map +1 -1
  70. package/dist/cjs/RadioGroupSkeleton/index.js +1 -1
  71. package/dist/cjs/Result/index.js +1 -1
  72. package/dist/cjs/ScrollButton/index.js +1 -1
  73. package/dist/cjs/ScrollButton/utils/useContainerPosition.js +1 -1
  74. package/dist/cjs/ScrollButton/utils/useContainerPosition.js.map +1 -1
  75. package/dist/cjs/ScrollButton/utils/useVisibility.js +1 -1
  76. package/dist/cjs/ScrollButton/utils/useVisibility.js.map +1 -1
  77. package/dist/cjs/Select/index.js +9 -7
  78. package/dist/cjs/Select/index.js.map +1 -1
  79. package/dist/cjs/Skeleton/index.js +1 -1
  80. package/dist/cjs/Switch/index.js +2 -2
  81. package/dist/cjs/Switch/index.js.map +1 -1
  82. package/dist/cjs/SwitchSkeleton/index.js +1 -1
  83. package/dist/cjs/Tag/index.js +1 -1
  84. package/dist/cjs/TagLink/index.js +1 -1
  85. package/dist/cjs/TagList/index.js +2 -2
  86. package/dist/cjs/TagList/index.js.map +1 -1
  87. package/dist/cjs/TagListSkeleton/index.js +1 -1
  88. package/dist/cjs/TagSkeleton/index.js +1 -1
  89. package/dist/cjs/TextArea/index.js +2 -2
  90. package/dist/cjs/TextArea/index.js.map +1 -1
  91. package/dist/cjs/TextAreaSkeleton/index.js +1 -1
  92. package/dist/cjs/ThemeSwitcher/index.js +1 -1
  93. package/dist/cjs/TimePicker/index.js +2 -2
  94. package/dist/cjs/TimePicker/index.js.map +1 -1
  95. package/dist/cjs/Video/index.js +1 -1
  96. package/dist/cjs/index.js +1 -1
  97. package/dist/cjs/message/Message.js +1 -1
  98. package/dist/cjs/message/index.js +1 -1
  99. package/dist/cjs/message/styles.js +1 -1
  100. package/dist/esm/Select/index.js +2 -1
  101. package/dist/esm/Select/index.js.map +1 -1
  102. package/dist/types/Select/index.d.ts +1 -0
  103. package/dist/types/Select/index.d.ts.map +1 -1
  104. package/package.json +2 -2
  105. package/src/Select/index.tsx +13 -4
@@ -1 +1 @@
1
- {"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","obj","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","o","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","object","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","target","arguments","source","forEach","key","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":"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"}
1
+ {"version":3,"file":"usePopoverPosition.js","names":["_utils","require","_react","_typeof","o","Symbol","iterator","constructor","prototype","_toConsumableArray","arr","_arrayWithoutHoles","_iterableToArray","_unsupportedIterableToArray","_nonIterableSpread","TypeError","minLen","_arrayLikeToArray","n","Object","toString","call","slice","name","Array","from","test","iter","isArray","len","length","i","arr2","ownKeys","e","r","t","keys","getOwnPropertySymbols","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","arg","_toPrimitive","String","input","hint","prim","toPrimitive","undefined","res","Number","popoverPositionGetters","rectKey","sizeKey","windowSizeKey","windowOffsetKey","fitToWindow","start","_ref","elementRect","popoverRect","popoverStart","windowStart","window","windowEnd","elementStart","elementEnd","popoverEnd","before","options","gap","flip","afterPopoverStart","after","afterPopoverEnd","diffStart","diffEnd","beforePopoverStart","_ref2","end","_ref3","center","_ref4","getPopoverPosition","top","left","placementPositionKeysMap","bottom","right","usePopoverPosition","_ref5","_ref5$placement","placement","_ref5$gap","_ref5$flip","bodyFontSize","useFontSize","document","body","gapPx","useMemo","positionKeys","concat","_default","exports"],"sources":["../../../../src/Popover/utils/usePopoverPosition.ts"],"sourcesContent":["import { useFontSize } from '@os-design/utils';\nimport { useMemo } from 'react';\n\ntype Side = 'top' | 'left' | 'right' | 'bottom';\ntype Alignment = 'start' | 'end';\ntype AlignedPlacement = `${Side}-${Alignment}`;\n\nexport type Placement = Side | AlignedPlacement;\n\nexport interface Rect {\n top: number;\n left: number;\n width: number;\n height: number;\n}\n\ninterface UsePopoverPositionProps {\n /**\n * The rect of the element.\n */\n elementRect: Rect;\n /**\n * The rect of the popover.\n */\n popoverRect: Rect;\n /**\n * On which side of the element the popover will appear.\n * @default top\n */\n placement?: Placement;\n /**\n * The gap between the element and the popover in em.\n * @default 0.5\n */\n gap?: number;\n /**\n * Whether to flip the popover if it does not fit in the window.\n * @default true\n */\n flip?: boolean;\n}\n\ninterface PopoverPositionGetterOptions {\n elementRect: Rect;\n popoverRect: Rect;\n gap: number;\n flip: boolean;\n}\ntype PositionKeys = 'before' | 'after' | 'start' | 'end' | 'center';\ntype PopoverPositionGetterFn = (\n options: PopoverPositionGetterOptions\n) => number;\ntype PopoverPositionGetters = Record<PositionKeys, PopoverPositionGetterFn>;\ntype FitToWindow = Pick<\n PopoverPositionGetterOptions,\n 'elementRect' | 'popoverRect'\n>;\n\nconst popoverPositionGetters = (\n rectKey: 'top' | 'left'\n): PopoverPositionGetters => {\n const sizeKey = rectKey === 'top' ? 'height' : 'width';\n const windowSizeKey = rectKey === 'top' ? 'innerHeight' : 'innerWidth';\n const windowOffsetKey = rectKey === 'top' ? 'pageYOffset' : 'pageXOffset';\n\n const fitToWindow = (\n start: number,\n { elementRect, popoverRect }: FitToWindow\n ): number => {\n let popoverStart = start;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n\n // Fit the popover to the end of the window\n if (popoverEnd > windowEnd) {\n if (elementEnd < windowEnd)\n popoverStart = windowEnd - popoverRect[sizeKey];\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementEnd - popoverRect[sizeKey];\n else if (windowEnd - elementStart > popoverRect[sizeKey])\n popoverStart = windowEnd - popoverRect[sizeKey];\n else popoverStart = elementStart;\n }\n\n // Fit the popover to the beginning of the window\n if (popoverStart < windowStart) {\n if (elementStart > windowStart) popoverStart = windowStart;\n else if (popoverRect[sizeKey] > elementRect[sizeKey])\n popoverStart = elementStart;\n else if (elementEnd - windowStart > popoverRect[sizeKey])\n popoverStart = windowStart;\n else popoverStart = elementEnd - popoverRect[sizeKey];\n }\n\n return popoverStart;\n };\n\n return {\n before(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart = elementStart - popoverRect[sizeKey] - gap;\n if (flip && popoverStart < windowStart) {\n const afterPopoverStart = this.after({ ...options, flip: false });\n const afterPopoverEnd = afterPopoverStart + popoverRect[sizeKey];\n const diffStart = windowStart - popoverStart;\n const diffEnd = afterPopoverEnd - windowEnd;\n if (afterPopoverEnd <= windowEnd || diffStart > diffEnd)\n return afterPopoverStart;\n }\n return popoverStart;\n },\n after(options) {\n const { elementRect, popoverRect, gap, flip } = options;\n const windowStart = window[windowOffsetKey];\n const windowEnd = windowStart + window[windowSizeKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd + gap;\n const popoverEnd = popoverStart + popoverRect[sizeKey];\n if (flip && popoverEnd > windowEnd) {\n const beforePopoverStart = this.before({ ...options, flip: false });\n const diffStart = windowStart - beforePopoverStart;\n const diffEnd = popoverEnd - windowEnd;\n if (beforePopoverStart >= windowStart || diffEnd > diffStart)\n return beforePopoverStart;\n }\n return popoverStart;\n },\n start: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n return fitToWindow(elementStart, { elementRect, popoverRect });\n },\n end: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const elementEnd = elementStart + elementRect[sizeKey];\n const popoverStart = elementEnd - popoverRect[sizeKey];\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n center: ({ elementRect, popoverRect }) => {\n const windowStart = window[windowOffsetKey];\n const elementStart = windowStart + elementRect[rectKey];\n const popoverStart =\n elementStart + (elementRect[sizeKey] - popoverRect[sizeKey]) / 2;\n return fitToWindow(popoverStart, { elementRect, popoverRect });\n },\n };\n};\n\nconst getPopoverPosition = (\n top: PositionKeys,\n left: PositionKeys,\n options: PopoverPositionGetterOptions\n) => ({\n top: popoverPositionGetters('top')[top](options),\n left: popoverPositionGetters('left')[left](options),\n});\n\ntype PlacementPositionKeysMap = Record<Placement, [PositionKeys, PositionKeys]>;\nconst placementPositionKeysMap: PlacementPositionKeysMap = {\n top: ['before', 'center'],\n bottom: ['after', 'center'],\n left: ['center', 'before'],\n right: ['center', 'after'],\n 'top-start': ['before', 'start'],\n 'top-end': ['before', 'end'],\n 'bottom-start': ['after', 'start'],\n 'bottom-end': ['after', 'end'],\n 'left-start': ['start', 'before'],\n 'left-end': ['end', 'before'],\n 'right-start': ['start', 'after'],\n 'right-end': ['end', 'after'],\n};\n\ninterface PopoverPosition {\n top: number;\n left: number;\n}\n\n/**\n * Computes the position of the popover.\n * Note that you must change the elementRect when the scroll and resize events of the parent scrollable container occur.\n * In most cases, it will be the window.\n */\nconst usePopoverPosition = ({\n elementRect,\n popoverRect,\n placement = 'top',\n gap = 0.5,\n flip = true,\n}: UsePopoverPositionProps): PopoverPosition => {\n const bodyFontSize = useFontSize(document.body);\n const gapPx = useMemo(() => gap * bodyFontSize, [gap, bodyFontSize]);\n\n const positionKeys = useMemo(() => {\n if (typeof placement === 'string' && !!placementPositionKeysMap[placement])\n return placementPositionKeysMap[placement];\n return placementPositionKeysMap.top;\n }, [placement]);\n\n return getPopoverPosition(...positionKeys, {\n elementRect,\n popoverRect,\n gap: gapPx,\n flip,\n });\n};\n\nexport default usePopoverPosition;\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -23,7 +23,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
23
23
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
24
24
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
25
25
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
26
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
26
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
27
27
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
28
28
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
29
29
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","type","e","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":["_react","require","_styled","_interopRequireDefault","_media","_theming","_utils","_react2","_interopRequireWildcard","_Button","_excluded","_excluded2","_templateObject","_templateObject2","_templateObject3","_templateObject4","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","_typeof","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_extends","assign","bind","target","i","arguments","length","source","apply","_slicedToArray","arr","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","toString","slice","constructor","name","Array","from","test","len","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","_taggedTemplateLiteral","strings","raw","freeze","defineProperties","wideDefaultStyles","p","wide","css","m","max","xxs","wideAlwaysStyles","Container","styled","omitEmotionProps","theme","borderRadius","disabled","clr","buttonDisabledGhostColorText","colorPrimary","StyledButton","Button","RadioGroup","forwardRef","_ref","ref","_ref$options","options","_ref$wide","_ref$disabled","defaultValue","_ref$onChange","onChange","size","rest","_useForwardedState","useForwardedState","_useForwardedState2","forwardedValue","setForwardedValue","createElement","map","_ref2","title","valueOption","disabledOption","_ref2$onClick","onClick","buttonRest","type","displayName","_default","exports"],"sources":["../../../src/RadioGroup/index.tsx"],"sourcesContent":["import { css } from '@emotion/react';\nimport styled from '@emotion/styled';\nimport { m } from '@os-design/media';\nimport { WithSize } from '@os-design/styles';\nimport { clr } from '@os-design/theming';\nimport { omitEmotionProps, useForwardedState } from '@os-design/utils';\nimport React, { forwardRef } from 'react';\nimport Button, { ButtonProps } from '../Button';\n\nexport interface RadioGroupOption\n extends Omit<ButtonProps, 'type' | 'wide' | 'size'> {\n /**\n * The title of the option.\n */\n title: string;\n /**\n * The value of the option.\n */\n value: string;\n}\n\ntype JsxDivProps = Omit<\n JSX.IntrinsicElements['div'],\n 'value' | 'defaultValue' | 'onChange' | 'ref'\n>;\nexport interface RadioGroupProps extends JsxDivProps, WithSize {\n /**\n * Options of the radio group.\n * @default undefined\n */\n options?: RadioGroupOption[];\n /**\n * Whether the radio group has full width.\n * Possible values:\n * `default` – the radio group has full width if the screen width is less than xs;\n * `always` – the radio group always has full width;\n * `never` – the radio group never has full width.\n * @default default\n */\n wide?: 'default' | 'always' | 'never';\n /**\n * Whether the radio group is disabled.\n * @default false\n */\n disabled?: boolean;\n /**\n * Selected option.\n * @default false\n */\n value?: string;\n /**\n * The default value.\n * @default undefined\n */\n defaultValue?: string;\n /**\n * The change event handler.\n * @default undefined\n */\n onChange?: (value: string) => void;\n}\n\nconst wideDefaultStyles = (p) =>\n p.wide === 'default' &&\n css`\n ${m.max.xxs} {\n width: 100%;\n & > button {\n flex: 1;\n }\n }\n `;\n\nconst wideAlwaysStyles = (p) =>\n p.wide === 'always' &&\n css`\n width: 100%;\n & > button {\n flex: 1;\n }\n `;\n\ntype ContainerProps = Required<Pick<RadioGroupProps, 'wide' | 'disabled'>>;\nconst Container = styled(\n 'div',\n omitEmotionProps('wide', 'disabled')\n)<ContainerProps>`\n display: inline-flex;\n flex-wrap: wrap;\n\n border-radius: ${(p) => p.theme.borderRadius}em;\n overflow: hidden;\n border: 1px solid\n ${(p) =>\n p.disabled\n ? clr(p.theme.buttonDisabledGhostColorText)\n : clr(p.theme.colorPrimary)};\n\n ${wideDefaultStyles};\n ${wideAlwaysStyles};\n`;\n\nconst StyledButton = styled(Button)`\n border-radius: 0;\n`;\n\n/**\n * The radio buttons that allow a user to select only one of a limited number of options.\n */\nconst RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n (\n {\n options = [],\n wide = 'default',\n disabled = false,\n value,\n defaultValue,\n onChange = () => {},\n size,\n ...rest\n },\n ref\n ) => {\n const [forwardedValue, setForwardedValue] = useForwardedState({\n value,\n defaultValue,\n onChange,\n });\n\n return (\n <div>\n <Container wide={wide} disabled={disabled} {...rest} ref={ref}>\n {options?.map(\n ({\n title,\n value: valueOption,\n disabled: disabledOption,\n onClick = () => {},\n ...buttonRest\n }) => (\n <StyledButton\n key={valueOption}\n type={forwardedValue === valueOption ? 'primary' : 'ghost'}\n wide='never'\n disabled={disabled || disabledOption}\n size={size}\n onClick={(e) => {\n setForwardedValue(valueOption);\n onClick(e);\n }}\n {...buttonRest}\n >\n {title}\n </StyledButton>\n )\n )}\n </Container>\n </div>\n );\n }\n);\n\nRadioGroup.displayName = 'RadioGroup';\n\nexport default RadioGroup;\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -10,7 +10,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
10
10
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
11
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
12
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
14
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
15
  /**
16
16
  * Calculates the position of the container.
@@ -1 +1 @@
1
- {"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useContainerPosition.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useContainerPosition","container","_useState","useState","right","bottom","_useState2","position","setPosition","updatePosition","useCallback","element","Element","current","_element$getBoundingC","getBoundingClientRect","_window","window","innerWidth","innerHeight","useBrowserLayoutEffect","useResizeObserver","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useContainerPosition.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useResizeObserver } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\nexport interface ContainerPosition {\n right: number;\n bottom: number;\n}\n\n/**\n * Calculates the position of the container.\n */\nconst useContainerPosition = (\n container?: Element | RefObject<Element>\n): ContainerPosition => {\n const [position, setPosition] = useState<ContainerPosition>({\n right: 0,\n bottom: 0,\n });\n\n const updatePosition = useCallback(() => {\n if (!container) return;\n const element =\n container instanceof Element ? container : container.current;\n if (!element) return;\n\n const { right, bottom } = element.getBoundingClientRect();\n const { innerWidth, innerHeight } = window;\n\n setPosition({\n right: innerWidth - right,\n bottom: innerHeight - bottom,\n });\n }, [container]);\n\n useBrowserLayoutEffect(() => updatePosition(), [updatePosition]);\n useResizeObserver(container as never, updatePosition);\n\n return position;\n};\n\nexport default useContainerPosition;\n"],"mappings":"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"}
@@ -10,7 +10,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
10
10
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
11
11
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
12
12
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
13
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
13
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
14
14
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
15
15
  /**
16
16
  * Controls the visibility of the button.
@@ -1 +1 @@
1
- {"version":3,"file":"useVisibility.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","_i","Symbol","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","push","value","err","isArray","useVisibility","_ref","container","scrollTo","minOffset","_useState","useState","_useState2","visible","setVisible","updateVisibility","useCallback","offset","window","scrollY","document","body","scrollHeight","innerHeight","containerElement","Element","current","scrollTop","clientHeight","useBrowserLayoutEffect","useEvent","undefined","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useVisibility.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useEvent } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\ninterface UseVisibilityProps {\n container?: Element | RefObject<Element>;\n scrollTo: 'top' | 'bottom';\n minOffset: number;\n}\n\n/**\n * Controls the visibility of the button.\n */\nconst useVisibility = ({\n container,\n scrollTo,\n minOffset,\n}: UseVisibilityProps): boolean => {\n const [visible, setVisible] = useState(false);\n\n // Update the visibility of the button when the user scrolls the container\n const updateVisibility = useCallback(() => {\n let offset = 0;\n\n if (!container) {\n offset =\n scrollTo === 'top'\n ? window.scrollY\n : document.body.scrollHeight - window.scrollY - window.innerHeight;\n } else {\n const containerElement =\n container instanceof Element ? container : container.current;\n if (containerElement === null) return;\n\n offset =\n scrollTo === 'top'\n ? containerElement.scrollTop\n : containerElement.scrollHeight -\n containerElement.scrollTop -\n containerElement.clientHeight;\n }\n\n setVisible(offset >= minOffset);\n }, [container, scrollTo, minOffset]);\n\n useBrowserLayoutEffect(() => updateVisibility(), [updateVisibility]);\n useEvent(\n container ||\n ((typeof window !== 'undefined' ? window : undefined) as EventTarget),\n 'scroll',\n updateVisibility\n );\n\n return visible;\n};\n\nexport default useVisibility;\n"],"mappings":"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"}
1
+ {"version":3,"file":"useVisibility.js","names":["_utils","require","_react","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","TypeError","o","minLen","_arrayLikeToArray","n","Object","prototype","toString","call","slice","constructor","name","Array","from","test","len","length","arr2","r","l","t","Symbol","iterator","e","u","a","f","next","done","push","value","isArray","useVisibility","_ref","container","scrollTo","minOffset","_useState","useState","_useState2","visible","setVisible","updateVisibility","useCallback","offset","window","scrollY","document","body","scrollHeight","innerHeight","containerElement","Element","current","scrollTop","clientHeight","useBrowserLayoutEffect","useEvent","undefined","_default","exports"],"sources":["../../../../src/ScrollButton/utils/useVisibility.ts"],"sourcesContent":["import { useBrowserLayoutEffect, useEvent } from '@os-design/utils';\nimport { RefObject, useCallback, useState } from 'react';\n\ninterface UseVisibilityProps {\n container?: Element | RefObject<Element>;\n scrollTo: 'top' | 'bottom';\n minOffset: number;\n}\n\n/**\n * Controls the visibility of the button.\n */\nconst useVisibility = ({\n container,\n scrollTo,\n minOffset,\n}: UseVisibilityProps): boolean => {\n const [visible, setVisible] = useState(false);\n\n // Update the visibility of the button when the user scrolls the container\n const updateVisibility = useCallback(() => {\n let offset = 0;\n\n if (!container) {\n offset =\n scrollTo === 'top'\n ? window.scrollY\n : document.body.scrollHeight - window.scrollY - window.innerHeight;\n } else {\n const containerElement =\n container instanceof Element ? container : container.current;\n if (containerElement === null) return;\n\n offset =\n scrollTo === 'top'\n ? containerElement.scrollTop\n : containerElement.scrollHeight -\n containerElement.scrollTop -\n containerElement.clientHeight;\n }\n\n setVisible(offset >= minOffset);\n }, [container, scrollTo, minOffset]);\n\n useBrowserLayoutEffect(() => updateVisibility(), [updateVisibility]);\n useEvent(\n container ||\n ((typeof window !== 'undefined' ? window : undefined) as EventTarget),\n 'scroll',\n updateVisibility\n );\n\n return visible;\n};\n\nexport default useVisibility;\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
@@ -22,7 +22,7 @@ var _Menu = _interopRequireDefault(require("../Menu"));
22
22
  var _MenuItem = _interopRequireDefault(require("../MenuItem"));
23
23
  var _Tag = _interopRequireDefault(require("../Tag"));
24
24
  var _defaultLocale = _interopRequireDefault(require("./utils/defaultLocale"));
25
- var _excluded = ["options", "left", "leftHasPadding", "right", "rightHasPadding", "placeholder", "searchVisible", "searchProps", "notFoundText", "unbordered", "loading", "disabled", "autoFocus", "autoOpen", "clearVisible", "threshold", "visibleCount", "overscanCount", "multiple", "maxSelectedItems", "locale", "value", "defaultValue", "onChange", "onLoadNext", "onClose", "onBlur", "size", "placement"],
25
+ var _excluded = ["options", "initSelectedOptions", "left", "leftHasPadding", "right", "rightHasPadding", "placeholder", "searchVisible", "searchProps", "notFoundText", "unbordered", "loading", "disabled", "autoFocus", "autoOpen", "clearVisible", "threshold", "visibleCount", "overscanCount", "multiple", "maxSelectedItems", "locale", "value", "defaultValue", "onChange", "onLoadNext", "onClose", "onBlur", "size", "placement"],
26
26
  _excluded2 = ["style"],
27
27
  _excluded3 = ["title", "value", "onClick"];
28
28
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9, _templateObject10, _templateObject11, _templateObject12, _templateObject13, _templateObject14, _templateObject15, _templateObject16, _templateObject17, _templateObject18, _templateObject19, _templateObject20, _templateObject21, _templateObject22, _templateObject23, _templateObject24, _templateObject25, _templateObject26, _templateObject27;
@@ -30,8 +30,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
30
30
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
31
31
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
32
32
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
33
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
34
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
33
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
34
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
35
35
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
36
36
  function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
37
37
  function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
@@ -43,7 +43,7 @@ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArra
43
43
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
44
44
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
45
45
  function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
46
- function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i["return"] && (_r = _i["return"](), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
46
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
47
47
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
48
48
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
49
49
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
@@ -154,6 +154,8 @@ exports.ToggleRightAddon = ToggleRightAddon;
154
154
  var Select = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, ref) {
155
155
  var _ref$options = _ref.options,
156
156
  options = _ref$options === void 0 ? [] : _ref$options,
157
+ _ref$initSelectedOpti = _ref.initSelectedOptions,
158
+ initSelectedOptions = _ref$initSelectedOpti === void 0 ? [] : _ref$initSelectedOpti,
157
159
  left = _ref.left,
158
160
  _ref$leftHasPadding = _ref.leftHasPadding,
159
161
  leftHasPadding = _ref$leftHasPadding === void 0 ? false : _ref$leftHasPadding,
@@ -227,7 +229,7 @@ var Select = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, ref) {
227
229
  setForwardedValue = _useForwardedState2[1];
228
230
  (0, _react2.useEffect)(function () {
229
231
  var _containerRef$current;
230
- if (autoFocus) (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.focus();
232
+ if (autoFocus) (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 || _containerRef$current.focus();
231
233
  }, [autoFocus, containerRef]);
232
234
  var onCloseRef = (0, _react2.useRef)(onClose);
233
235
  (0, _react2.useEffect)(function () {
@@ -276,7 +278,7 @@ var Select = /*#__PURE__*/(0, _react2.forwardRef)(function (_ref, ref) {
276
278
  (0, _react2.useEffect)(function () {
277
279
  optionsRef.current = options;
278
280
  }, [options]);
279
- var prevSelectedOptions = (0, _react2.useRef)([]);
281
+ var prevSelectedOptions = (0, _react2.useRef)(initSelectedOptions);
280
282
  var selectedOptions = (0, _react2.useMemo)(function () {
281
283
  if (!forwardedValue) return [];
282
284
  var values = Array.isArray(forwardedValue) ? forwardedValue : [forwardedValue];