@cloudtower/eagle 0.27.53 → 0.27.55
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/UIKitProvider/index.js +77 -0
- package/dist/cjs/core/AccordionCard/index.js +59 -0
- package/dist/cjs/core/Alert/index.js +80 -0
- package/dist/cjs/core/Arch/index.js +17 -0
- package/dist/cjs/core/Badge/index.js +51 -0
- package/dist/cjs/core/BaseIcon/index.js +76 -0
- package/dist/cjs/core/Bit/index.js +40 -0
- package/dist/cjs/core/BitPerSecond/index.js +40 -0
- package/dist/cjs/core/Bps/index.js +40 -0
- package/dist/cjs/core/Breadcrumb/index.js +58 -0
- package/dist/cjs/core/Button/HoverableElement.js +14 -0
- package/dist/cjs/core/Button/index.js +89 -0
- package/dist/cjs/core/ButtonGroup/index.js +110 -0
- package/dist/cjs/core/Byte/index.js +49 -0
- package/dist/cjs/core/Calendar/index.js +25 -0
- package/dist/cjs/core/Card/CardBody.js +12 -0
- package/dist/cjs/core/Card/CardTitle.js +12 -0
- package/dist/cjs/core/Card/CardWrapper.js +55 -0
- package/dist/cjs/core/Card/index.js +94 -0
- package/dist/cjs/core/Cascader/cascader.style.js +23 -0
- package/dist/cjs/core/Cascader/cascader.widget.js +86 -0
- package/dist/cjs/core/Cascader/index.js +74 -0
- package/dist/cjs/core/Checkbox/checkbox.style.js +5 -0
- package/dist/cjs/core/Checkbox/index.js +53 -0
- package/dist/cjs/core/DetailCard/index.js +23 -0
- package/dist/cjs/core/DonutChart/index.js +167 -0
- package/dist/cjs/core/DropdownMenu/index.js +66 -0
- package/dist/cjs/core/Empty/index.js +11 -0
- package/dist/cjs/core/ExpandableList/ExpandIcon.js +17 -0
- package/dist/cjs/core/ExpandableList/ExpandableContainer.js +17 -0
- package/dist/cjs/core/ExpandableList/ExpandableItem.js +48 -0
- package/dist/cjs/core/ExpandableList/RoundOrder.js +22 -0
- package/dist/cjs/core/FailedLoad/index.js +32 -0
- package/dist/cjs/core/Fields/FieldsBoolean/index.js +47 -0
- package/dist/cjs/core/Fields/FieldsDateTime/index.js +24 -0
- package/dist/cjs/core/Fields/FieldsDateTimeRange/index.js +50 -0
- package/dist/cjs/core/Fields/FieldsEnum/index.js +60 -0
- package/dist/cjs/core/Fields/FieldsFloat/index.js +60 -0
- package/dist/cjs/core/Fields/FieldsInt/index.js +78 -0
- package/dist/cjs/core/Fields/FieldsInteger/index.js +57 -0
- package/dist/cjs/core/Fields/FieldsString/index.js +116 -0
- package/dist/cjs/core/Fields/FieldsTextArea/index.js +64 -0
- package/dist/cjs/core/Fields/FieldsTimePicker/index.js +54 -0
- package/dist/cjs/core/Fields/index.js +28 -0
- package/dist/cjs/core/Form/index.js +10 -0
- package/dist/cjs/core/FormItem/index.js +38 -0
- package/dist/cjs/core/Frequency/index.js +40 -0
- package/dist/cjs/core/Icon/index.js +117 -0
- package/dist/cjs/core/Input/index.js +66 -0
- package/dist/cjs/core/InputGroup/index.js +14 -0
- package/dist/cjs/core/InputInteger/formatterInteger.js +15 -0
- package/dist/cjs/core/InputInteger/index.js +97 -0
- package/dist/cjs/core/InputNumber/index.js +90 -0
- package/dist/cjs/core/InputTagItem/index.js +12 -0
- package/dist/cjs/core/KitStoreProvider/index.js +23 -0
- package/dist/cjs/core/Link/index.js +56 -0
- package/dist/cjs/core/Loading/index.js +33 -0
- package/dist/cjs/core/Loading/style.js +11 -0
- package/dist/cjs/core/Metric/metric.js +21 -0
- package/dist/cjs/core/Modal/index.js +214 -0
- package/dist/cjs/core/ModalStack/index.js +47 -0
- package/dist/cjs/core/Overflow/index.js +117 -0
- package/dist/cjs/core/Pagination/index.js +120 -0
- package/dist/cjs/core/ParrotTrans/index.js +28 -0
- package/dist/cjs/core/Percent/index.js +41 -0
- package/dist/cjs/core/Progress/index.js +25 -0
- package/dist/cjs/core/Radio/index.js +142 -0
- package/dist/cjs/core/SearchInput/index.js +50 -0
- package/dist/cjs/core/Second/index.js +43 -0
- package/dist/cjs/core/SegmentControl/index.js +43 -0
- package/dist/cjs/core/Select/index.js +140 -0
- package/dist/cjs/core/SimplePagination/index.js +90 -0
- package/dist/cjs/core/Speed/index.js +40 -0
- package/dist/cjs/core/StatusCapsule/index.js +100 -0
- package/dist/cjs/core/StepProgress/index.js +44 -0
- package/dist/cjs/core/Steps/index.js +126 -0
- package/dist/cjs/core/Steps/style.js +13 -0
- package/dist/cjs/core/Styled/index.js +57 -0
- package/dist/cjs/core/Switch/index.js +61 -0
- package/dist/cjs/core/Table/TableWidget.js +47 -0
- package/dist/cjs/core/Table/common.js +46 -0
- package/dist/cjs/core/Table/index.js +112 -0
- package/dist/cjs/core/TableForm/AddRowButton.js +108 -0
- package/dist/cjs/core/TableForm/Columns/AffixColumn.js +48 -0
- package/dist/cjs/core/TableForm/Columns/CheckboxColumn.js +35 -0
- package/dist/cjs/core/TableForm/Columns/FormItem.js +20 -0
- package/dist/cjs/core/TableForm/Columns/InputColumn.js +117 -0
- package/dist/cjs/core/TableForm/Columns/TextColumn.js +44 -0
- package/dist/cjs/core/TableForm/Columns/index.js +24 -0
- package/dist/cjs/core/TableForm/TableFormBodyCell.js +165 -0
- package/dist/cjs/core/TableForm/TableFormBodyRows.js +215 -0
- package/dist/cjs/core/TableForm/TableFormHeaderCell.js +93 -0
- package/dist/cjs/core/TableForm/index.js +187 -0
- package/dist/cjs/core/TableForm/style.js +35 -0
- package/dist/cjs/core/TableForm/types.js +10 -0
- package/dist/cjs/core/TableForm/utils.js +36 -0
- package/dist/cjs/core/Tag/SplitTag.js +64 -0
- package/dist/cjs/core/Tag/const.js +12 -0
- package/dist/cjs/core/Tag/index.js +96 -0
- package/dist/cjs/core/Tag/style.js +14 -0
- package/dist/cjs/core/TextArea/index.js +72 -0
- package/dist/cjs/core/Time/index.js +31 -0
- package/dist/cjs/core/TimePicker/index.js +66 -0
- package/dist/cjs/core/TimeZoneSelect/index.js +165 -0
- package/dist/cjs/core/Token/index.js +86 -0
- package/dist/cjs/core/Token/style.js +5 -0
- package/dist/cjs/core/Tooltip/index.js +89 -0
- package/dist/cjs/core/Truncate/index.js +49 -0
- package/dist/cjs/core/Typo/index.js +130 -0
- package/dist/cjs/core/antd.js +208 -0
- package/dist/cjs/core/message/index.js +203 -0
- package/dist/cjs/core/message-group/index.js +147 -0
- package/dist/cjs/coreX/BarChart/index.js +39 -0
- package/dist/cjs/coreX/BatchOperation/index.js +149 -0
- package/dist/cjs/coreX/ChartWithTooltip/index.js +154 -0
- package/dist/cjs/coreX/Counting/index.js +22 -0
- package/dist/cjs/coreX/CronCalendar/index.js +105 -0
- package/dist/cjs/coreX/CronPlan/index.js +462 -0
- package/dist/cjs/coreX/DateRangePicker/AbsoluteDate.js +179 -0
- package/dist/cjs/coreX/DateRangePicker/Calendar.js +286 -0
- package/dist/cjs/coreX/DateRangePicker/DateRangePicker.style.js +84 -0
- package/dist/cjs/coreX/DateRangePicker/InputTime.js +151 -0
- package/dist/cjs/coreX/DateRangePicker/RelativeTime.js +53 -0
- package/dist/cjs/coreX/DateRangePicker/common.js +195 -0
- package/dist/cjs/coreX/DateRangePicker/index.js +331 -0
- package/dist/cjs/coreX/DeprecatedDonutChart/index.js +39 -0
- package/dist/cjs/coreX/DropdownTransition/index.js +73 -0
- package/dist/cjs/coreX/GoBackButton/index.js +45 -0
- package/dist/cjs/coreX/I18nNameTag/index.js +37 -0
- package/dist/cjs/coreX/NamesTooltip/index.js +34 -0
- package/dist/cjs/coreX/OverflowTooltip/index.js +92 -0
- package/dist/cjs/coreX/SidebarSubtitle/index.js +13 -0
- package/dist/cjs/coreX/SortableList/index.js +33 -0
- package/dist/cjs/coreX/SummaryTable/index.js +113 -0
- package/dist/cjs/coreX/SwitchWithText/index.js +59 -0
- package/dist/cjs/coreX/TabMenu/index.js +152 -0
- package/dist/cjs/coreX/TruncatedTextWithTooltip/index.js +69 -0
- package/dist/cjs/coreX/UnitWithChart/index.js +118 -0
- package/dist/cjs/coreX/common/getCalendarTitle.js +26 -0
- package/dist/cjs/hooks/useElementIntersectionRatio.js +30 -0
- package/dist/cjs/hooks/useElementResize.js +69 -0
- package/dist/cjs/hooks/useElementsSize.js +58 -0
- package/dist/cjs/hooks/useMemoCompare.js +17 -0
- package/dist/cjs/hooks/useParrotTranslation.js +13 -0
- package/dist/cjs/index.js +120 -0
- package/dist/cjs/spec/type.js +9 -0
- package/dist/{umd → cjs}/stats1.html +1 -1
- package/dist/cjs/store/chart.js +65 -0
- package/dist/cjs/store/index.js +48 -0
- package/dist/cjs/store/modal.js +67 -0
- package/dist/cjs/styles/token/color.js +273 -0
- package/dist/cjs/utils/constants.js +8 -0
- package/dist/cjs/utils/cron-time.js +450 -0
- package/dist/cjs/utils/dom.js +16 -0
- package/dist/cjs/utils/icon.js +22 -0
- package/dist/cjs/utils/isEmpty.js +12 -0
- package/dist/cjs/utils/time.js +86 -0
- package/dist/cjs/utils/tower.js +188 -0
- package/dist/components.css +3101 -2209
- package/dist/esm/UIKitProvider/index.js +71 -0
- package/dist/esm/core/AccordionCard/index.js +57 -0
- package/dist/esm/core/Alert/index.js +78 -0
- package/dist/esm/core/Arch/index.js +15 -0
- package/dist/esm/core/Badge/index.js +49 -0
- package/dist/esm/core/BaseIcon/index.js +74 -0
- package/dist/esm/core/Bit/index.js +38 -0
- package/dist/esm/core/BitPerSecond/index.js +38 -0
- package/dist/esm/core/Bps/index.js +38 -0
- package/dist/esm/core/Breadcrumb/index.js +53 -0
- package/dist/esm/core/Button/HoverableElement.js +12 -0
- package/dist/esm/core/Button/index.js +87 -0
- package/dist/esm/core/ButtonGroup/index.js +105 -0
- package/dist/esm/core/Byte/index.js +47 -0
- package/dist/esm/core/Calendar/index.js +23 -0
- package/dist/esm/core/Card/CardBody.js +10 -0
- package/dist/esm/core/Card/CardTitle.js +10 -0
- package/dist/esm/core/Card/CardWrapper.js +53 -0
- package/dist/esm/core/Card/index.js +92 -0
- package/dist/esm/core/Cascader/cascader.style.js +12 -0
- package/dist/esm/core/Cascader/cascader.widget.js +79 -0
- package/dist/esm/core/Cascader/index.js +72 -0
- package/dist/esm/core/Checkbox/checkbox.style.js +3 -0
- package/dist/esm/core/Checkbox/index.js +51 -0
- package/dist/esm/core/DetailCard/index.js +21 -0
- package/dist/esm/core/DonutChart/index.js +161 -0
- package/dist/esm/core/DropdownMenu/index.js +61 -0
- package/dist/esm/core/Empty/index.js +9 -0
- package/dist/esm/core/ExpandableList/ExpandIcon.js +15 -0
- package/dist/esm/core/ExpandableList/ExpandableContainer.js +15 -0
- package/dist/esm/core/ExpandableList/ExpandableItem.js +46 -0
- package/dist/esm/core/ExpandableList/RoundOrder.js +20 -0
- package/dist/esm/core/FailedLoad/index.js +30 -0
- package/dist/esm/core/Fields/FieldsBoolean/index.js +45 -0
- package/dist/esm/core/Fields/FieldsDateTime/index.js +22 -0
- package/dist/esm/core/Fields/FieldsDateTimeRange/index.js +48 -0
- package/dist/esm/core/Fields/FieldsEnum/index.js +58 -0
- package/dist/esm/core/Fields/FieldsFloat/index.js +58 -0
- package/dist/esm/core/Fields/FieldsInt/index.js +76 -0
- package/dist/esm/core/Fields/FieldsInteger/index.js +55 -0
- package/dist/esm/core/Fields/FieldsString/index.js +114 -0
- package/dist/esm/core/Fields/FieldsTextArea/index.js +62 -0
- package/dist/esm/core/Fields/FieldsTimePicker/index.js +52 -0
- package/dist/esm/core/Fields/index.js +26 -0
- package/dist/esm/core/Form/index.js +8 -0
- package/dist/esm/core/FormItem/index.js +36 -0
- package/dist/esm/core/Frequency/index.js +38 -0
- package/dist/esm/core/Icon/index.js +115 -0
- package/dist/esm/core/Input/index.js +64 -0
- package/dist/esm/core/InputGroup/index.js +12 -0
- package/dist/esm/core/InputInteger/formatterInteger.js +13 -0
- package/dist/esm/core/InputInteger/index.js +92 -0
- package/dist/esm/core/InputNumber/index.js +85 -0
- package/dist/esm/core/InputTagItem/index.js +10 -0
- package/dist/esm/core/KitStoreProvider/index.js +17 -0
- package/dist/esm/core/Link/index.js +54 -0
- package/dist/esm/core/Loading/index.js +31 -0
- package/dist/esm/core/Loading/style.js +6 -0
- package/dist/esm/core/Metric/metric.js +19 -0
- package/dist/esm/core/Modal/index.js +212 -0
- package/dist/esm/core/ModalStack/index.js +45 -0
- package/dist/esm/core/Overflow/index.js +112 -0
- package/dist/esm/core/Pagination/index.js +115 -0
- package/dist/esm/core/ParrotTrans/index.js +26 -0
- package/dist/esm/core/Percent/index.js +39 -0
- package/dist/esm/core/Progress/index.js +23 -0
- package/dist/esm/core/Radio/index.js +136 -0
- package/dist/esm/core/SearchInput/index.js +48 -0
- package/dist/esm/core/Second/index.js +41 -0
- package/dist/esm/core/SegmentControl/index.js +41 -0
- package/dist/esm/core/Select/index.js +138 -0
- package/dist/esm/core/SimplePagination/index.js +88 -0
- package/dist/esm/core/Speed/index.js +38 -0
- package/dist/esm/core/StatusCapsule/index.js +94 -0
- package/dist/esm/core/StepProgress/index.js +42 -0
- package/dist/esm/core/Steps/index.js +124 -0
- package/dist/esm/core/Steps/style.js +7 -0
- package/dist/esm/core/Styled/index.js +45 -0
- package/dist/esm/core/Switch/index.js +59 -0
- package/dist/esm/core/Table/TableWidget.js +44 -0
- package/dist/esm/core/Table/common.js +44 -0
- package/dist/esm/core/Table/index.js +104 -0
- package/dist/esm/core/TableForm/AddRowButton.js +106 -0
- package/dist/esm/core/TableForm/Columns/AffixColumn.js +46 -0
- package/dist/esm/core/TableForm/Columns/CheckboxColumn.js +32 -0
- package/dist/esm/core/TableForm/Columns/FormItem.js +18 -0
- package/dist/esm/core/TableForm/Columns/InputColumn.js +114 -0
- package/dist/esm/core/TableForm/Columns/TextColumn.js +41 -0
- package/dist/esm/core/TableForm/Columns/index.js +21 -0
- package/dist/esm/core/TableForm/TableFormBodyCell.js +163 -0
- package/dist/esm/core/TableForm/TableFormBodyRows.js +213 -0
- package/dist/esm/core/TableForm/TableFormHeaderCell.js +91 -0
- package/dist/esm/core/TableForm/index.js +185 -0
- package/dist/esm/core/TableForm/style.js +27 -0
- package/dist/esm/core/TableForm/types.js +8 -0
- package/dist/esm/core/TableForm/utils.js +32 -0
- package/dist/esm/core/Tag/SplitTag.js +62 -0
- package/dist/esm/core/Tag/const.js +10 -0
- package/dist/esm/core/Tag/index.js +91 -0
- package/dist/esm/core/Tag/style.js +9 -0
- package/dist/esm/core/TextArea/index.js +70 -0
- package/dist/esm/core/Time/index.js +29 -0
- package/dist/esm/core/TimePicker/index.js +64 -0
- package/dist/esm/core/TimeZoneSelect/index.js +163 -0
- package/dist/esm/core/Token/index.js +81 -0
- package/dist/esm/core/Token/style.js +3 -0
- package/dist/esm/core/Tooltip/index.js +87 -0
- package/dist/esm/core/Truncate/index.js +47 -0
- package/dist/esm/core/Typo/index.js +128 -0
- package/dist/esm/core/antd.js +205 -0
- package/dist/esm/core/message/index.js +179 -0
- package/dist/esm/core/message-group/index.js +143 -0
- package/dist/esm/coreX/BarChart/index.js +34 -0
- package/dist/esm/coreX/BatchOperation/index.js +144 -0
- package/dist/esm/coreX/ChartWithTooltip/index.js +149 -0
- package/dist/esm/coreX/Counting/index.js +20 -0
- package/dist/esm/coreX/CronCalendar/index.js +103 -0
- package/dist/esm/coreX/CronPlan/index.js +457 -0
- package/dist/esm/coreX/DateRangePicker/AbsoluteDate.js +177 -0
- package/dist/esm/coreX/DateRangePicker/Calendar.js +284 -0
- package/dist/esm/coreX/DateRangePicker/DateRangePicker.style.js +77 -0
- package/dist/esm/coreX/DateRangePicker/InputTime.js +149 -0
- package/dist/esm/coreX/DateRangePicker/RelativeTime.js +51 -0
- package/dist/esm/coreX/DateRangePicker/common.js +183 -0
- package/dist/esm/coreX/DateRangePicker/index.js +325 -0
- package/dist/esm/coreX/DeprecatedDonutChart/index.js +37 -0
- package/dist/esm/coreX/DropdownTransition/index.js +71 -0
- package/dist/esm/coreX/GoBackButton/index.js +43 -0
- package/dist/esm/coreX/I18nNameTag/index.js +35 -0
- package/dist/esm/coreX/NamesTooltip/index.js +32 -0
- package/dist/esm/coreX/OverflowTooltip/index.js +90 -0
- package/dist/esm/coreX/SidebarSubtitle/index.js +11 -0
- package/dist/esm/coreX/SortableList/index.js +31 -0
- package/dist/esm/coreX/SummaryTable/index.js +108 -0
- package/dist/esm/coreX/SwitchWithText/index.js +57 -0
- package/dist/esm/coreX/TabMenu/index.js +150 -0
- package/dist/esm/coreX/TruncatedTextWithTooltip/index.js +67 -0
- package/dist/esm/coreX/UnitWithChart/index.js +113 -0
- package/dist/esm/coreX/common/getCalendarTitle.js +24 -0
- package/dist/esm/hooks/useElementIntersectionRatio.js +28 -0
- package/dist/esm/hooks/useElementResize.js +67 -0
- package/dist/esm/hooks/useElementsSize.js +56 -0
- package/dist/esm/hooks/useMemoCompare.js +15 -0
- package/dist/esm/hooks/useParrotTranslation.js +11 -0
- package/dist/esm/index.js +34 -10233
- package/dist/esm/spec/type.js +7 -0
- package/dist/esm/stats1.html +1 -1
- package/dist/esm/store/chart.js +62 -0
- package/dist/esm/store/index.js +37 -0
- package/dist/esm/store/modal.js +63 -0
- package/dist/esm/styles/token/color.js +271 -0
- package/dist/esm/utils/constants.js +5 -0
- package/dist/esm/utils/cron-time.js +448 -0
- package/dist/esm/utils/dom.js +14 -0
- package/dist/esm/utils/icon.js +20 -0
- package/dist/esm/utils/isEmpty.js +10 -0
- package/dist/esm/utils/time.js +76 -0
- package/dist/esm/utils/tower.js +173 -0
- package/dist/src/index.d.ts +0 -1
- package/dist/style.css +2011 -2011
- package/dist/token.css +209 -415
- package/package.json +8 -6
- package/dist/src/styles/token/token.d.ts +0 -1
- package/dist/umd/index.js +0 -10322
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { useState, useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
const threshold = new Array(101).fill(1).map((value, index) => index / 100);
|
|
4
|
+
function useElementIntersectionRatio(el, parent) {
|
|
5
|
+
const [entry, setEntry] = useState(null);
|
|
6
|
+
useEffect(() => {
|
|
7
|
+
if (!el.current) {
|
|
8
|
+
return;
|
|
9
|
+
}
|
|
10
|
+
const observer = new IntersectionObserver(
|
|
11
|
+
(entries) => {
|
|
12
|
+
setEntry(entries[0] || null);
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
threshold,
|
|
16
|
+
root: (parent == null ? void 0 : parent.current) || document.body,
|
|
17
|
+
rootMargin: "-32px 0px 0px 0px"
|
|
18
|
+
}
|
|
19
|
+
);
|
|
20
|
+
observer.observe(el.current);
|
|
21
|
+
return () => {
|
|
22
|
+
observer.disconnect();
|
|
23
|
+
};
|
|
24
|
+
}, [el, parent]);
|
|
25
|
+
return entry;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export { useElementIntersectionRatio as default };
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
import { useEffect } from 'react';
|
|
3
|
+
|
|
4
|
+
const transformToArray = (stringOrArray) => {
|
|
5
|
+
return stringOrArray instanceof Array ? stringOrArray : [stringOrArray];
|
|
6
|
+
};
|
|
7
|
+
const onResizeElem = (element, callback) => {
|
|
8
|
+
const els = transformToArray(element);
|
|
9
|
+
const data = {
|
|
10
|
+
els,
|
|
11
|
+
offsetWidth: els.map((el) => el.offsetWidth),
|
|
12
|
+
offsetHeight: els.map((el) => el.offsetHeight),
|
|
13
|
+
callback
|
|
14
|
+
};
|
|
15
|
+
const checkForChanges = () => {
|
|
16
|
+
const nextOffsetWidth = data.els.map((el) => el.offsetWidth);
|
|
17
|
+
const nextOffsetHeight = data.els.map((el) => el.offsetWidth);
|
|
18
|
+
if (!_.isEqual(nextOffsetWidth, data.offsetWidth) || _.isEqual(nextOffsetHeight, data.offsetHeight)) {
|
|
19
|
+
data.offsetWidth = nextOffsetWidth;
|
|
20
|
+
data.offsetHeight = nextOffsetHeight;
|
|
21
|
+
data.callback();
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
const mutationObserver = new MutationObserver(checkForChanges);
|
|
25
|
+
mutationObserver.observe(document.body, {
|
|
26
|
+
attributes: true,
|
|
27
|
+
subtree: true
|
|
28
|
+
});
|
|
29
|
+
window.addEventListener("resize", checkForChanges);
|
|
30
|
+
const disconnect = () => {
|
|
31
|
+
window.removeEventListener("resize", checkForChanges);
|
|
32
|
+
mutationObserver.disconnect();
|
|
33
|
+
};
|
|
34
|
+
return disconnect;
|
|
35
|
+
};
|
|
36
|
+
const useElementResize = (klass, cb, depend) => {
|
|
37
|
+
const klasses = transformToArray(klass);
|
|
38
|
+
useEffect(() => {
|
|
39
|
+
let els = [];
|
|
40
|
+
if (typeof klass === "object" && "current" in klass) {
|
|
41
|
+
els = klass.current ? [klass.current] : [];
|
|
42
|
+
} else {
|
|
43
|
+
klasses.forEach((klass2) => {
|
|
44
|
+
const arr = Array.from(
|
|
45
|
+
document.querySelectorAll(klass2)
|
|
46
|
+
);
|
|
47
|
+
if (arr.length > 0) {
|
|
48
|
+
els = [...els, ...arr];
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
if (!els.length)
|
|
53
|
+
return;
|
|
54
|
+
if (typeof ResizeObserver === "function") {
|
|
55
|
+
const resizeObserver = new ResizeObserver(cb);
|
|
56
|
+
els.forEach((el) => {
|
|
57
|
+
resizeObserver.observe(el);
|
|
58
|
+
});
|
|
59
|
+
return () => resizeObserver.disconnect();
|
|
60
|
+
} else {
|
|
61
|
+
return onResizeElem(Array.from(els), cb);
|
|
62
|
+
}
|
|
63
|
+
}, [cb, ...depend || []]);
|
|
64
|
+
};
|
|
65
|
+
var useElementResize$1 = useElementResize;
|
|
66
|
+
|
|
67
|
+
export { useElementResize$1 as default };
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
import { useRef, useState, useCallback, useLayoutEffect } from 'react';
|
|
3
|
+
import { getSize } from '../utils/dom.js';
|
|
4
|
+
|
|
5
|
+
function getAllSize(classMap) {
|
|
6
|
+
return Object.keys(classMap).reduce((prev, cur) => {
|
|
7
|
+
prev[cur] = getSize(
|
|
8
|
+
document.querySelector(classMap[cur])
|
|
9
|
+
);
|
|
10
|
+
return prev;
|
|
11
|
+
}, {});
|
|
12
|
+
}
|
|
13
|
+
const elementsSizes = {};
|
|
14
|
+
function useElementsSize(classMap, config) {
|
|
15
|
+
const { prevent, key, dependencyList } = config;
|
|
16
|
+
const preSizes = useRef();
|
|
17
|
+
const [sizes, setSizes] = useState(() => {
|
|
18
|
+
if (key && elementsSizes[key]) {
|
|
19
|
+
return elementsSizes[key];
|
|
20
|
+
}
|
|
21
|
+
const initSizes = Object.keys(classMap).reduce((prev, cur) => {
|
|
22
|
+
prev[cur] = { width: 0, height: 0 };
|
|
23
|
+
return prev;
|
|
24
|
+
}, {});
|
|
25
|
+
preSizes.current = initSizes;
|
|
26
|
+
return initSizes;
|
|
27
|
+
});
|
|
28
|
+
const classMapRef = useRef(classMap);
|
|
29
|
+
classMapRef.current = classMap;
|
|
30
|
+
const handleResize = useCallback(() => {
|
|
31
|
+
if (prevent)
|
|
32
|
+
return;
|
|
33
|
+
const nextSizes = getAllSize(classMapRef.current);
|
|
34
|
+
if (key) {
|
|
35
|
+
if (!elementsSizes[key] || // FIXME: antd 4.0 table thead will be delay render
|
|
36
|
+
!_.isEqual(
|
|
37
|
+
_.omit(elementsSizes[key], "thead"),
|
|
38
|
+
_.omit(nextSizes, "thead")
|
|
39
|
+
)) {
|
|
40
|
+
elementsSizes[key] = nextSizes;
|
|
41
|
+
setSizes(nextSizes);
|
|
42
|
+
}
|
|
43
|
+
} else if (!_.isEqual(preSizes.current, nextSizes)) {
|
|
44
|
+
preSizes.current = nextSizes;
|
|
45
|
+
setSizes(nextSizes);
|
|
46
|
+
}
|
|
47
|
+
}, [prevent, key, ...dependencyList || []]);
|
|
48
|
+
useLayoutEffect(() => {
|
|
49
|
+
handleResize();
|
|
50
|
+
window.addEventListener("resize", handleResize);
|
|
51
|
+
return () => window.removeEventListener("resize", handleResize);
|
|
52
|
+
}, [handleResize]);
|
|
53
|
+
return sizes;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { useElementsSize as default };
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { useRef, useEffect } from 'react';
|
|
2
|
+
|
|
3
|
+
function useMemoCompare(next, compare) {
|
|
4
|
+
const previousRef = useRef();
|
|
5
|
+
const previous = previousRef.current;
|
|
6
|
+
const isEqual = compare(previous, next);
|
|
7
|
+
useEffect(() => {
|
|
8
|
+
if (!isEqual) {
|
|
9
|
+
previousRef.current = next;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return isEqual ? previous : next;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
export { useMemoCompare as default };
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { parrotI18n } from '@cloudtower/parrot';
|
|
2
|
+
import { useTranslation } from 'react-i18next';
|
|
3
|
+
|
|
4
|
+
const useParrotTranslation = () => {
|
|
5
|
+
return useTranslation(void 0, {
|
|
6
|
+
i18n: parrotI18n
|
|
7
|
+
});
|
|
8
|
+
};
|
|
9
|
+
var useParrotTranslation$1 = useParrotTranslation;
|
|
10
|
+
|
|
11
|
+
export { useParrotTranslation$1 as default };
|