@redsift/design-system 11.5.0 → 11.6.0-alpha.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.
- package/_internal/Alert2.js +197 -0
- package/_internal/Alert2.js.map +1 -0
- package/_internal/AppBar.js +248 -0
- package/_internal/AppBar.js.map +1 -0
- package/_internal/AppContainer.js +142 -0
- package/_internal/AppContainer.js.map +1 -0
- package/_internal/AppContent.js +92 -0
- package/_internal/AppContent.js.map +1 -0
- package/_internal/Badge2.js +142 -0
- package/_internal/Badge2.js.map +1 -0
- package/_internal/BreadcrumbItem.js +91 -0
- package/_internal/BreadcrumbItem.js.map +1 -0
- package/_internal/Breadcrumbs2.js +94 -0
- package/_internal/Breadcrumbs2.js.map +1 -0
- package/_internal/Button2.js +91 -0
- package/_internal/Button2.js.map +1 -0
- package/_internal/ButtonGroup.js +181 -0
- package/_internal/ButtonGroup.js.map +1 -0
- package/_internal/ButtonLink.js +84 -0
- package/_internal/ButtonLink.js.map +1 -0
- package/_internal/Card2.js +157 -0
- package/_internal/Card2.js.map +1 -0
- package/_internal/CardActions.js +44 -0
- package/_internal/CardActions.js.map +1 -0
- package/_internal/CardBody.js +42 -0
- package/_internal/CardBody.js.map +1 -0
- package/_internal/CardHeader.js +83 -0
- package/_internal/CardHeader.js.map +1 -0
- package/_internal/Checkbox2.js +244 -0
- package/_internal/Checkbox2.js.map +1 -0
- package/_internal/CheckboxGroup.js +188 -0
- package/_internal/CheckboxGroup.js.map +1 -0
- package/_internal/ConditionalWrapper.js +13 -0
- package/_internal/ConditionalWrapper.js.map +1 -0
- package/_internal/DetailedCard.js +6916 -0
- package/_internal/DetailedCard.js.map +1 -0
- package/_internal/DetailedCardCollapsibleSectionItems.js +64 -0
- package/_internal/DetailedCardCollapsibleSectionItems.js.map +1 -0
- package/_internal/DetailedCardHeader.js +67 -0
- package/_internal/DetailedCardHeader.js.map +1 -0
- package/_internal/DetailedCardSection.js +172 -0
- package/_internal/DetailedCardSection.js.map +1 -0
- package/_internal/DetailedCardSectionItem.js +94 -0
- package/_internal/DetailedCardSectionItem.js.map +1 -0
- package/_internal/Flexbox2.js +93 -0
- package/_internal/Flexbox2.js.map +1 -0
- package/_internal/Grid2.js +95 -0
- package/_internal/Grid2.js.map +1 -0
- package/_internal/GridItem.js +40 -0
- package/_internal/GridItem.js.map +1 -0
- package/_internal/Heading2.js +113 -0
- package/_internal/Heading2.js.map +1 -0
- package/_internal/Icon2.js +211 -0
- package/_internal/Icon2.js.map +1 -0
- package/_internal/IconButton.js +80 -0
- package/_internal/IconButton.js.map +1 -0
- package/_internal/IconButtonLink.js +75 -0
- package/_internal/IconButtonLink.js.map +1 -0
- package/_internal/Item2.js +399 -0
- package/_internal/Item2.js.map +1 -0
- package/_internal/Link2.js +67 -0
- package/_internal/Link2.js.map +1 -0
- package/_internal/LinkButton.js +66 -0
- package/_internal/LinkButton.js.map +1 -0
- package/_internal/Listbox2.js +274 -0
- package/_internal/Listbox2.js.map +1 -0
- package/_internal/Number2.js +111 -0
- package/_internal/Number2.js.map +1 -0
- package/_internal/NumberField.js +3974 -0
- package/_internal/NumberField.js.map +1 -0
- package/_internal/Pill2.js +405 -0
- package/_internal/Pill2.js.map +1 -0
- package/_internal/ProgressBar.js +69 -0
- package/_internal/ProgressBar.js.map +1 -0
- package/_internal/Radio2.js +237 -0
- package/_internal/Radio2.js.map +1 -0
- package/_internal/RadioGroup.js +176 -0
- package/_internal/RadioGroup.js.map +1 -0
- package/_internal/Shield2.js +225 -0
- package/_internal/Shield2.js.map +1 -0
- package/_internal/SideNavigationMenu.js +591 -0
- package/_internal/SideNavigationMenu.js.map +1 -0
- package/_internal/SideNavigationMenuItem.js +304 -0
- package/_internal/SideNavigationMenuItem.js.map +1 -0
- package/_internal/Skeleton2.js +42 -0
- package/_internal/Skeleton2.js.map +1 -0
- package/_internal/SkeletonCircle.js +58 -0
- package/_internal/SkeletonCircle.js.map +1 -0
- package/_internal/SkeletonText.js +77 -0
- package/_internal/SkeletonText.js.map +1 -0
- package/_internal/Spinner2.js +333 -0
- package/_internal/Spinner2.js.map +1 -0
- package/_internal/Switch2.js +320 -0
- package/_internal/Switch2.js.map +1 -0
- package/_internal/SwitchGroup.js +188 -0
- package/_internal/SwitchGroup.js.map +1 -0
- package/_internal/Text2.js +51 -0
- package/_internal/Text2.js.map +1 -0
- package/_internal/TextArea.js +444 -0
- package/_internal/TextArea.js.map +1 -0
- package/_internal/TextField.js +473 -0
- package/_internal/TextField.js.map +1 -0
- package/_internal/_rollupPluginBabelHelpers.js +133 -0
- package/_internal/_rollupPluginBabelHelpers.js.map +1 -0
- package/_internal/alert.js +2 -0
- package/_internal/alert.js.map +1 -0
- package/_internal/app-bar.js +2 -0
- package/_internal/app-bar.js.map +1 -0
- package/_internal/app-container.js +3 -0
- package/_internal/app-container.js.map +1 -0
- package/_internal/app-content.js +2 -0
- package/_internal/app-content.js.map +1 -0
- package/_internal/app-side-panel.js +3 -0
- package/_internal/app-side-panel.js.map +1 -0
- package/_internal/badge.js +2 -0
- package/_internal/badge.js.map +1 -0
- package/_internal/breadcrumb-item.js +2 -0
- package/_internal/breadcrumb-item.js.map +1 -0
- package/_internal/breadcrumbs.js +2 -0
- package/_internal/breadcrumbs.js.map +1 -0
- package/_internal/button-group.js +2 -0
- package/_internal/button-group.js.map +1 -0
- package/_internal/button-link.js +2 -0
- package/_internal/button-link.js.map +1 -0
- package/_internal/button.js +3 -0
- package/_internal/button.js.map +1 -0
- package/_internal/card-actions.js +2 -0
- package/_internal/card-actions.js.map +1 -0
- package/_internal/card-body.js +2 -0
- package/_internal/card-body.js.map +1 -0
- package/_internal/card-header.js +2 -0
- package/_internal/card-header.js.map +1 -0
- package/_internal/card.js +2 -0
- package/_internal/card.js.map +1 -0
- package/_internal/checkbox-group.js +2 -0
- package/_internal/checkbox-group.js.map +1 -0
- package/_internal/checkbox.js +2 -0
- package/_internal/checkbox.js.map +1 -0
- package/_internal/colors.js +98 -0
- package/_internal/colors.js.map +1 -0
- package/_internal/conditional-wrapper.js +2 -0
- package/_internal/conditional-wrapper.js.map +1 -0
- package/_internal/context.js +6 -0
- package/_internal/context.js.map +1 -0
- package/_internal/context2.js +300 -0
- package/_internal/context2.js.map +1 -0
- package/_internal/context3.js +6 -0
- package/_internal/context3.js.map +1 -0
- package/_internal/context4.js +6 -0
- package/_internal/context4.js.map +1 -0
- package/_internal/context5.js +6 -0
- package/_internal/context5.js.map +1 -0
- package/_internal/detailed-card-collapsible-section-items.js +2 -0
- package/_internal/detailed-card-collapsible-section-items.js.map +1 -0
- package/_internal/detailed-card-header.js +2 -0
- package/_internal/detailed-card-header.js.map +1 -0
- package/_internal/detailed-card-section-item.js +2 -0
- package/_internal/detailed-card-section-item.js.map +1 -0
- package/_internal/detailed-card-section.js +2 -0
- package/_internal/detailed-card-section.js.map +1 -0
- package/_internal/detailed-card.js +2 -0
- package/_internal/detailed-card.js.map +1 -0
- package/_internal/filterComponents.js +24 -0
- package/_internal/filterComponents.js.map +1 -0
- package/_internal/flexbox.js +2 -0
- package/_internal/flexbox.js.map +1 -0
- package/_internal/focus-within-group.js +3 -0
- package/_internal/focus-within-group.js.map +1 -0
- package/_internal/fonts.js +10 -0
- package/_internal/fonts.js.map +1 -0
- package/_internal/gradient-border.js +38 -0
- package/_internal/gradient-border.js.map +1 -0
- package/_internal/grid-item.js +2 -0
- package/_internal/grid-item.js.map +1 -0
- package/_internal/grid.js +2 -0
- package/_internal/grid.js.map +1 -0
- package/_internal/heading.js +3 -0
- package/_internal/heading.js.map +1 -0
- package/_internal/icon-button-link.js +2 -0
- package/_internal/icon-button-link.js.map +1 -0
- package/_internal/icon-button.js +3 -0
- package/_internal/icon-button.js.map +1 -0
- package/_internal/icon.js +2 -0
- package/_internal/icon.js.map +1 -0
- package/_internal/isComponent.js +15 -0
- package/_internal/isComponent.js.map +1 -0
- package/_internal/item.js +2 -0
- package/_internal/item.js.map +1 -0
- package/_internal/link-button.js +2 -0
- package/_internal/link-button.js.map +1 -0
- package/_internal/link.js +3 -0
- package/_internal/link.js.map +1 -0
- package/_internal/listbox.js +3 -0
- package/_internal/listbox.js.map +1 -0
- package/_internal/number-field.js +2 -0
- package/_internal/number-field.js.map +1 -0
- package/_internal/number.js +2 -0
- package/_internal/number.js.map +1 -0
- package/_internal/partitionComponents.js +26 -0
- package/_internal/partitionComponents.js.map +1 -0
- package/_internal/pill.js +2 -0
- package/_internal/pill.js.map +1 -0
- package/_internal/progress-bar.js +2 -0
- package/_internal/progress-bar.js.map +1 -0
- package/_internal/radio-group.js +2 -0
- package/_internal/radio-group.js.map +1 -0
- package/_internal/radio.js +2 -0
- package/_internal/radio.js.map +1 -0
- package/_internal/redsift-design-tokens.js +1391 -0
- package/_internal/redsift-design-tokens.js.map +1 -0
- package/_internal/shared.js +2 -0
- package/_internal/shared.js.map +1 -0
- package/_internal/shield.js +2 -0
- package/_internal/shield.js.map +1 -0
- package/_internal/side-navigation-menu-bar.js +3 -0
- package/_internal/side-navigation-menu-bar.js.map +1 -0
- package/_internal/side-navigation-menu-item.js +2 -0
- package/_internal/side-navigation-menu-item.js.map +1 -0
- package/_internal/side-navigation-menu.js +2 -0
- package/_internal/side-navigation-menu.js.map +1 -0
- package/_internal/skeleton-circle.js +2 -0
- package/_internal/skeleton-circle.js.map +1 -0
- package/_internal/skeleton-text.js +3 -0
- package/_internal/skeleton-text.js.map +1 -0
- package/_internal/skeleton.js +2 -0
- package/_internal/skeleton.js.map +1 -0
- package/_internal/spinner.js +2 -0
- package/_internal/spinner.js.map +1 -0
- package/_internal/styles.js +235 -0
- package/_internal/styles.js.map +1 -0
- package/_internal/styles2.js +47 -0
- package/_internal/styles2.js.map +1 -0
- package/_internal/styles3.js +145 -0
- package/_internal/styles3.js.map +1 -0
- package/_internal/styles4.js +250 -0
- package/_internal/styles4.js.map +1 -0
- package/_internal/styles5.js +143 -0
- package/_internal/styles5.js.map +1 -0
- package/_internal/styles6.js +84 -0
- package/_internal/styles6.js.map +1 -0
- package/_internal/switch-group.js +2 -0
- package/_internal/switch-group.js.map +1 -0
- package/_internal/switch.js +2 -0
- package/_internal/switch.js.map +1 -0
- package/_internal/text-area.js +2 -0
- package/_internal/text-area.js.map +1 -0
- package/_internal/text-field.js +2 -0
- package/_internal/text-field.js.map +1 -0
- package/_internal/text.js +3 -0
- package/_internal/text.js.map +1 -0
- package/_internal/theme.js +2 -0
- package/_internal/theme.js.map +1 -0
- package/_internal/types.js +15 -0
- package/_internal/types.js.map +1 -0
- package/_internal/types2.js +26 -0
- package/_internal/types2.js.map +1 -0
- package/_internal/types3.js +20 -0
- package/_internal/types3.js.map +1 -0
- package/_internal/useAppSidePanel.js +337 -0
- package/_internal/useAppSidePanel.js.map +1 -0
- package/_internal/useFocusOnList.js +541 -0
- package/_internal/useFocusOnList.js.map +1 -0
- package/_internal/useFocusOnListItem.js +203 -0
- package/_internal/useFocusOnListItem.js.map +1 -0
- package/_internal/useFocusRing.js +669 -0
- package/_internal/useFocusRing.js.map +1 -0
- package/_internal/useId.js +42 -0
- package/_internal/useId.js.map +1 -0
- package/_internal/useIsLoaded.js +14 -0
- package/_internal/useIsLoaded.js.map +1 -0
- package/_internal/useListboxItem.js +129 -0
- package/_internal/useListboxItem.js.map +1 -0
- package/_internal/useMessageFormatter.js +143 -0
- package/_internal/useMessageFormatter.js.map +1 -0
- package/_internal/useNumberFormatter.js +239 -0
- package/_internal/useNumberFormatter.js.map +1 -0
- package/_internal/useSideNavigationMenuBar.js +373 -0
- package/_internal/useSideNavigationMenuBar.js.map +1 -0
- package/_internal/useTheme.js +15 -0
- package/_internal/useTheme.js.map +1 -0
- package/_internal/warnIfNoAccessibleLabelFound.js +20 -0
- package/_internal/warnIfNoAccessibleLabelFound.js.map +1 -0
- package/index.js +315 -24243
- package/index.js.map +1 -1
- package/package.json +3 -3
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Component variant.
|
|
3
|
+
*/
|
|
4
|
+
const SkeletonTextVariant = {
|
|
5
|
+
h1: 'h1',
|
|
6
|
+
h2: 'h2',
|
|
7
|
+
h3: 'h3',
|
|
8
|
+
h4: 'h4',
|
|
9
|
+
h5: 'h5',
|
|
10
|
+
body: 'body',
|
|
11
|
+
button: 'button',
|
|
12
|
+
caption: 'caption'
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Component props.
|
|
17
|
+
*/
|
|
18
|
+
|
|
19
|
+
export { SkeletonTextVariant as S };
|
|
20
|
+
//# sourceMappingURL=types3.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types3.js","sources":["../../src/components/skeleton-text/types.ts"],"sourcesContent":["import { ValueOf } from '../../types';\nimport { SkeletonProps } from '../skeleton/types';\n\n/**\n * Component variant.\n */\nexport const SkeletonTextVariant = {\n h1: 'h1',\n h2: 'h2',\n h3: 'h3',\n h4: 'h4',\n h5: 'h5',\n body: 'body',\n button: 'button',\n caption: 'caption',\n} as const;\nexport type SkeletonTextVariant = ValueOf<typeof SkeletonTextVariant>;\n\n/**\n * Component props.\n */\nexport interface SkeletonTextProps extends SkeletonProps {\n /** Font size. */\n fontSize?: string;\n /** Line height. */\n lineHeight?: string;\n /** Variant. */\n variant?: SkeletonTextVariant;\n}\n\nexport type StyledSkeletonTextProps = Omit<SkeletonTextProps, 'fontSize' | 'lineHeight' | 'variant'> & {\n $fontSize: SkeletonTextProps['fontSize'];\n $lineHeight: SkeletonTextProps['lineHeight'];\n $variant: SkeletonTextProps['variant'];\n $theme: SkeletonProps['theme'];\n};\n"],"names":["SkeletonTextVariant","h1","h2","h3","h4","h5","body","button","caption"],"mappings":"AAGA;AACA;AACA;AACO,MAAMA,mBAAmB,GAAG;AACjCC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,EAAE,EAAE,IAAI;AACRC,EAAAA,IAAI,EAAE,MAAM;AACZC,EAAAA,MAAM,EAAE,QAAQ;AAChBC,EAAAA,OAAO,EAAE,SAAA;AACX,EAAU;;AAGV;AACA;AACA;;;;"}
|
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
import { b as _objectWithoutProperties, c as _extends } from './_rollupPluginBabelHelpers.js';
|
|
2
|
+
import React__default, { useState, useEffect, forwardRef, useContext } from 'react';
|
|
3
|
+
import classNames from 'classnames';
|
|
4
|
+
import { A as AppContainerContext } from './context.js';
|
|
5
|
+
import styled, { css } from 'styled-components';
|
|
6
|
+
import { A as AppSidePanelVariant } from './types.js';
|
|
7
|
+
import { mdiMenu } from '@redsift/icons';
|
|
8
|
+
import { u as useMessageFormatter } from './useMessageFormatter.js';
|
|
9
|
+
import { b as ProductLogo } from './colors.js';
|
|
10
|
+
import { u as useTheme } from './useTheme.js';
|
|
11
|
+
import { a as Icon } from './Icon2.js';
|
|
12
|
+
import { I as IconButton } from './IconButton.js';
|
|
13
|
+
import { a as useSideNavigationMenuBar, S as SideNavigationMenuBar } from './useSideNavigationMenuBar.js';
|
|
14
|
+
|
|
15
|
+
const useWindowSize = () => {
|
|
16
|
+
const [windowSize, setWindowSize] = useState({
|
|
17
|
+
width: undefined,
|
|
18
|
+
height: undefined,
|
|
19
|
+
size: undefined
|
|
20
|
+
});
|
|
21
|
+
useEffect(() => {
|
|
22
|
+
function handleResize() {
|
|
23
|
+
setWindowSize(windowSize => {
|
|
24
|
+
if (window.innerWidth === windowSize.width && window.innerHeight === windowSize.height) {
|
|
25
|
+
return windowSize;
|
|
26
|
+
}
|
|
27
|
+
let size;
|
|
28
|
+
if (window.innerWidth <= 480) {
|
|
29
|
+
size = 'xs';
|
|
30
|
+
} else if (window.innerWidth <= 768) {
|
|
31
|
+
size = 'sm';
|
|
32
|
+
} else if (window.innerWidth <= 1024) {
|
|
33
|
+
size = 'md';
|
|
34
|
+
} else if (window.innerWidth <= 1200) {
|
|
35
|
+
size = 'lg';
|
|
36
|
+
} else {
|
|
37
|
+
size = 'xl';
|
|
38
|
+
}
|
|
39
|
+
return {
|
|
40
|
+
width: window.innerWidth,
|
|
41
|
+
height: window.innerHeight,
|
|
42
|
+
size
|
|
43
|
+
};
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
window.addEventListener('resize', handleResize);
|
|
47
|
+
handleResize();
|
|
48
|
+
return () => window.removeEventListener('resize', handleResize);
|
|
49
|
+
}, []);
|
|
50
|
+
return windowSize;
|
|
51
|
+
};
|
|
52
|
+
|
|
53
|
+
var expand$1 = "Expand left side panel";
|
|
54
|
+
var collapse$1 = "Collapse left side panel";
|
|
55
|
+
var enUS = {
|
|
56
|
+
expand: expand$1,
|
|
57
|
+
collapse: collapse$1
|
|
58
|
+
};
|
|
59
|
+
|
|
60
|
+
var expand = "Développer le panneau latéral gauche";
|
|
61
|
+
var collapse = "Réduire le panneau latéral gauche";
|
|
62
|
+
var frFR = {
|
|
63
|
+
expand: expand,
|
|
64
|
+
collapse: collapse
|
|
65
|
+
};
|
|
66
|
+
|
|
67
|
+
var intlMessages = {
|
|
68
|
+
'en-US': enUS,
|
|
69
|
+
'fr-FR': frFR
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Component style.
|
|
74
|
+
*/
|
|
75
|
+
const StyledAppSidePanel = styled.div`
|
|
76
|
+
align-items: center;
|
|
77
|
+
background-color: ${_ref => {
|
|
78
|
+
let {
|
|
79
|
+
$theme
|
|
80
|
+
} = _ref;
|
|
81
|
+
return css`var(--redsift-color-${$theme}-components-side-navigation-background)`;
|
|
82
|
+
}};
|
|
83
|
+
border-right: 4px solid ${_ref2 => {
|
|
84
|
+
let {
|
|
85
|
+
$theme
|
|
86
|
+
} = _ref2;
|
|
87
|
+
return css`var(--redsift-color-${$theme}-components-side-navigation-right-line)`;
|
|
88
|
+
}};
|
|
89
|
+
box-sizing: border-box;
|
|
90
|
+
flex-direction: column;
|
|
91
|
+
height: 100%;
|
|
92
|
+
left: 0px;
|
|
93
|
+
overflow: hidden;
|
|
94
|
+
position: fixed;
|
|
95
|
+
top: 0;
|
|
96
|
+
transition: width 300ms ease-out;
|
|
97
|
+
width: ${_ref3 => {
|
|
98
|
+
let {
|
|
99
|
+
$variant
|
|
100
|
+
} = _ref3;
|
|
101
|
+
return $variant === AppSidePanelVariant.hidden ? '0' : $variant === AppSidePanelVariant.shrinked ? '68px' : '254px';
|
|
102
|
+
}};
|
|
103
|
+
z-index: var(--redsift-layout-z-index-side-panel);
|
|
104
|
+
|
|
105
|
+
.redsift-app-side-panel__header {
|
|
106
|
+
box-sizing: border-box;
|
|
107
|
+
transition: padding 300ms ease-out;
|
|
108
|
+
padding: 18px
|
|
109
|
+
${_ref4 => {
|
|
110
|
+
let {
|
|
111
|
+
$variant
|
|
112
|
+
} = _ref4;
|
|
113
|
+
return $variant === AppSidePanelVariant.hidden ? '0' : $variant === AppSidePanelVariant.shrinked ? '16px' : '24px';
|
|
114
|
+
}};
|
|
115
|
+
margin-bottom: 16px;
|
|
116
|
+
width: 100%;
|
|
117
|
+
|
|
118
|
+
height: 92px;
|
|
119
|
+
@media (max-width: 1080px) {
|
|
120
|
+
height: 72px;
|
|
121
|
+
}
|
|
122
|
+
|
|
123
|
+
display: grid;
|
|
124
|
+
justify-items: start;
|
|
125
|
+
align-items: center;
|
|
126
|
+
|
|
127
|
+
.redsift-icon-button {
|
|
128
|
+
> span,
|
|
129
|
+
> span > svg {
|
|
130
|
+
width: 24px;
|
|
131
|
+
height: 24px;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
.redsift-app-side-panel-header__logo {
|
|
137
|
+
align-items: center;
|
|
138
|
+
display: flex;
|
|
139
|
+
grid-column: 1;
|
|
140
|
+
grid-row: 1;
|
|
141
|
+
transition: opacity 300ms ease-out;
|
|
142
|
+
opacity: ${_ref5 => {
|
|
143
|
+
let {
|
|
144
|
+
$variant
|
|
145
|
+
} = _ref5;
|
|
146
|
+
return $variant === AppSidePanelVariant.shrinked ? '0' : '1';
|
|
147
|
+
}};
|
|
148
|
+
|
|
149
|
+
height: 56px;
|
|
150
|
+
@media (max-width: 1080px) {
|
|
151
|
+
height: 36px;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
.redsift-app-side-panel-header__logo > img {
|
|
156
|
+
max-height: 56px;
|
|
157
|
+
@media (max-width: 1080px) {
|
|
158
|
+
max-height: 36px;
|
|
159
|
+
}
|
|
160
|
+
max-width: 195px;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
.redsift-app-side-panel-header__expand-button {
|
|
164
|
+
grid-column: 1;
|
|
165
|
+
grid-row: 1;
|
|
166
|
+
transition: opacity 300ms ease-out;
|
|
167
|
+
opacity: ${_ref6 => {
|
|
168
|
+
let {
|
|
169
|
+
$variant
|
|
170
|
+
} = _ref6;
|
|
171
|
+
return $variant === AppSidePanelVariant.shrinked ? '1' : '0';
|
|
172
|
+
}};
|
|
173
|
+
padding: 2px;
|
|
174
|
+
margin-left: -1px;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
.redsift-app-side-panel__featured {
|
|
178
|
+
box-sizing: border-box;
|
|
179
|
+
border-left: 4px solid #e1e1e1;
|
|
180
|
+
border-right: unset;
|
|
181
|
+
margin-bottom: 16px;
|
|
182
|
+
padding: 0px 16px;
|
|
183
|
+
width: 100%;
|
|
184
|
+
}
|
|
185
|
+
|
|
186
|
+
[dir='rtl'] & {
|
|
187
|
+
left: unset;
|
|
188
|
+
right: 0px;
|
|
189
|
+
transform: unset;
|
|
190
|
+
transition: unset;
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
scrollbar-color: ${_ref7 => {
|
|
194
|
+
let {
|
|
195
|
+
$theme
|
|
196
|
+
} = _ref7;
|
|
197
|
+
return css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-resting) transparent`;
|
|
198
|
+
}};
|
|
199
|
+
scrollbar-width: thin;
|
|
200
|
+
|
|
201
|
+
&::-webkit-scrollbar {
|
|
202
|
+
block-size: 9px;
|
|
203
|
+
inline-size: 9px;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
&::-webkit-scrollbar-thumb {
|
|
207
|
+
background-clip: padding-box;
|
|
208
|
+
background-color: ${_ref8 => {
|
|
209
|
+
let {
|
|
210
|
+
$theme
|
|
211
|
+
} = _ref8;
|
|
212
|
+
return css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-resting)`;
|
|
213
|
+
}};
|
|
214
|
+
border-radius: 0px;
|
|
215
|
+
border-left: 2px solid transparent;
|
|
216
|
+
border-right: 2px solid transparent;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
&::-webkit-scrollbar-track {
|
|
220
|
+
background-color: transparent;
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
&::-webkit-scrollbar-thumb:horizontal,
|
|
224
|
+
&::-webkit-scrollbar-thumb:vertical {
|
|
225
|
+
&:hover {
|
|
226
|
+
background-color: ${_ref9 => {
|
|
227
|
+
let {
|
|
228
|
+
$theme
|
|
229
|
+
} = _ref9;
|
|
230
|
+
return css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-hover)`;
|
|
231
|
+
}};
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
&::-webkit-scrollbar-corner {
|
|
236
|
+
visibility: hidden;
|
|
237
|
+
}
|
|
238
|
+
`;
|
|
239
|
+
|
|
240
|
+
// --redsift-color-${$theme}-components-side-navigation-background
|
|
241
|
+
// --redsift-color-${$theme}-components-side-navigation-right-line
|
|
242
|
+
// --redsift-color-${$theme}-components-side-navigation-current-marker
|
|
243
|
+
// --redsift-color-${$theme}-components-side-navigation-text
|
|
244
|
+
// --redsift-color-${$theme}-components-side-navigation-icon
|
|
245
|
+
// --redsift-color-${$theme}-components-side-navigation-chat-background-hover
|
|
246
|
+
// --redsift-color-${$theme}-components-side-navigation-chat-background-down
|
|
247
|
+
|
|
248
|
+
// ${({ $theme }) => css`var(--redsift-color-${$theme}-components-side-navigation-background)`};
|
|
249
|
+
|
|
250
|
+
const _excluded = ["children", "className", "featuredElements", "iconButtonProps", "iconButtonRef", "logo", "onOpen", "theme", "variant"];
|
|
251
|
+
const COMPONENT_NAME = 'AppSidePanel';
|
|
252
|
+
const CLASSNAME = 'redsift-app-side-panel';
|
|
253
|
+
|
|
254
|
+
/**
|
|
255
|
+
* The AppSidePanel component.
|
|
256
|
+
*/
|
|
257
|
+
const AppSidePanel = /*#__PURE__*/forwardRef((props, ref) => {
|
|
258
|
+
const {
|
|
259
|
+
children,
|
|
260
|
+
className,
|
|
261
|
+
featuredElements,
|
|
262
|
+
iconButtonProps,
|
|
263
|
+
iconButtonRef,
|
|
264
|
+
logo,
|
|
265
|
+
onOpen,
|
|
266
|
+
theme: propsTheme,
|
|
267
|
+
variant
|
|
268
|
+
} = props,
|
|
269
|
+
forwardedProps = _objectWithoutProperties(props, _excluded);
|
|
270
|
+
const {
|
|
271
|
+
width
|
|
272
|
+
} = useWindowSize();
|
|
273
|
+
const appContainerState = useContext(AppContainerContext);
|
|
274
|
+
const theme = useTheme(propsTheme);
|
|
275
|
+
const format = useMessageFormatter(intlMessages);
|
|
276
|
+
useEffect(() => {
|
|
277
|
+
if (appContainerState && variant && appContainerState.sidePanelVariant !== variant) {
|
|
278
|
+
appContainerState.setSidePanelVariant(variant);
|
|
279
|
+
}
|
|
280
|
+
}, [variant]);
|
|
281
|
+
const handleClose = event => {
|
|
282
|
+
onOpen === null || onOpen === void 0 ? void 0 : onOpen(event);
|
|
283
|
+
appContainerState === null || appContainerState === void 0 ? void 0 : appContainerState.expandSidePanel();
|
|
284
|
+
};
|
|
285
|
+
const computedVariant = appContainerState ? appContainerState.sidePanelVariant : variant;
|
|
286
|
+
const product = appContainerState && appContainerState.product;
|
|
287
|
+
return /*#__PURE__*/React__default.createElement(StyledAppSidePanel, _extends({}, forwardedProps, {
|
|
288
|
+
$theme: theme,
|
|
289
|
+
$variant: computedVariant,
|
|
290
|
+
className: classNames(AppSidePanel.className, className),
|
|
291
|
+
ref: ref
|
|
292
|
+
}), /*#__PURE__*/React__default.createElement("div", {
|
|
293
|
+
className: `${AppSidePanel.className}__header`
|
|
294
|
+
}, /*#__PURE__*/React__default.createElement("div", {
|
|
295
|
+
className: `${AppSidePanel.className}-header__logo`
|
|
296
|
+
}, /*#__PURE__*/React__default.isValidElement(logo) ? logo : logo ? /*#__PURE__*/React__default.createElement("img", {
|
|
297
|
+
src: logo.src,
|
|
298
|
+
alt: logo.alt
|
|
299
|
+
}) : product && (typeof product === 'string' || product.logo) ? /*#__PURE__*/React__default.createElement(Icon, {
|
|
300
|
+
icon: typeof product === 'string' ? ProductLogo[product] : product.logo,
|
|
301
|
+
size: {
|
|
302
|
+
height: width && width > 1080 ? 41 : 36
|
|
303
|
+
}
|
|
304
|
+
}) : null), /*#__PURE__*/React__default.createElement(IconButton, _extends({
|
|
305
|
+
className: `${AppSidePanel.className}-header__expand-button`
|
|
306
|
+
}, iconButtonProps, {
|
|
307
|
+
"aria-label": format('expand'),
|
|
308
|
+
icon: mdiMenu,
|
|
309
|
+
onClick: handleClose,
|
|
310
|
+
ref: iconButtonRef,
|
|
311
|
+
color: "grey",
|
|
312
|
+
isDisabled: computedVariant === 'standard'
|
|
313
|
+
}))), featuredElements ? /*#__PURE__*/React__default.createElement("div", {
|
|
314
|
+
className: `${AppSidePanel.className}__featured`
|
|
315
|
+
}, featuredElements) : null, children);
|
|
316
|
+
});
|
|
317
|
+
AppSidePanel.className = CLASSNAME;
|
|
318
|
+
AppSidePanel.displayName = COMPONENT_NAME;
|
|
319
|
+
|
|
320
|
+
const useAppSidePanel = _ref => {
|
|
321
|
+
let {
|
|
322
|
+
items,
|
|
323
|
+
isActive
|
|
324
|
+
} = _ref;
|
|
325
|
+
const sideNavigationMenuBarProps = useSideNavigationMenuBar({
|
|
326
|
+
items,
|
|
327
|
+
isActive
|
|
328
|
+
});
|
|
329
|
+
return {
|
|
330
|
+
children: /*#__PURE__*/React__default.createElement(SideNavigationMenuBar, _extends({}, sideNavigationMenuBarProps, {
|
|
331
|
+
"aria-label": "Navigation"
|
|
332
|
+
}))
|
|
333
|
+
};
|
|
334
|
+
};
|
|
335
|
+
|
|
336
|
+
export { AppSidePanel as A, useAppSidePanel as a, useWindowSize as u };
|
|
337
|
+
//# sourceMappingURL=useAppSidePanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useAppSidePanel.js","sources":["../../src/hooks/useWindowSize.ts","../../src/components/app-side-panel/intl/index.ts","../../src/components/app-side-panel/styles.ts","../../src/components/app-side-panel/AppSidePanel.tsx","../../src/components/app-side-panel/useAppSidePanel.tsx"],"sourcesContent":["import { useState, useEffect } from 'react';\n\ninterface WindowSize {\n height?: number;\n width?: number;\n size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n}\n\nexport const useWindowSize = () => {\n const [windowSize, setWindowSize] = useState<WindowSize>({\n width: undefined,\n height: undefined,\n size: undefined,\n });\n\n useEffect(() => {\n function handleResize() {\n setWindowSize((windowSize) => {\n if (\n window.innerWidth === windowSize.width &&\n window.innerHeight === windowSize.height\n ) {\n return windowSize;\n }\n\n let size: WindowSize['size'];\n if (window.innerWidth <= 480) {\n size = 'xs';\n } else if (window.innerWidth <= 768) {\n size = 'sm';\n } else if (window.innerWidth <= 1024) {\n size = 'md';\n } else if (window.innerWidth <= 1200) {\n size = 'lg';\n } else {\n size = 'xl';\n }\n return {\n width: window.innerWidth,\n height: window.innerHeight,\n size,\n };\n });\n }\n\n window.addEventListener('resize', handleResize);\n handleResize();\n\n return () => window.removeEventListener('resize', handleResize);\n }, []);\n return windowSize;\n};\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import styled, { css } from 'styled-components';\nimport { AppSidePanelVariant, StyledAppSidePanelProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledAppSidePanel = styled.div<StyledAppSidePanelProps>`\n align-items: center;\n background-color: ${({ $theme }) => css`var(--redsift-color-${$theme}-components-side-navigation-background)`};\n border-right: 4px solid ${({ $theme }) => css`var(--redsift-color-${$theme}-components-side-navigation-right-line)`};\n box-sizing: border-box;\n flex-direction: column;\n height: 100%;\n left: 0px;\n overflow: hidden;\n position: fixed;\n top: 0;\n transition: width 300ms ease-out;\n width: ${({ $variant }) =>\n $variant === AppSidePanelVariant.hidden ? '0' : $variant === AppSidePanelVariant.shrinked ? '68px' : '254px'};\n z-index: var(--redsift-layout-z-index-side-panel);\n\n .redsift-app-side-panel__header {\n box-sizing: border-box;\n transition: padding 300ms ease-out;\n padding: 18px\n ${({ $variant }) =>\n $variant === AppSidePanelVariant.hidden ? '0' : $variant === AppSidePanelVariant.shrinked ? '16px' : '24px'};\n margin-bottom: 16px;\n width: 100%;\n\n height: 92px;\n @media (max-width: 1080px) {\n height: 72px;\n }\n\n display: grid;\n justify-items: start;\n align-items: center;\n\n .redsift-icon-button {\n > span,\n > span > svg {\n width: 24px;\n height: 24px;\n }\n }\n }\n\n .redsift-app-side-panel-header__logo {\n align-items: center;\n display: flex;\n grid-column: 1;\n grid-row: 1;\n transition: opacity 300ms ease-out;\n opacity: ${({ $variant }) => ($variant === AppSidePanelVariant.shrinked ? '0' : '1')};\n\n height: 56px;\n @media (max-width: 1080px) {\n height: 36px;\n }\n }\n\n .redsift-app-side-panel-header__logo > img {\n max-height: 56px;\n @media (max-width: 1080px) {\n max-height: 36px;\n }\n max-width: 195px;\n }\n\n .redsift-app-side-panel-header__expand-button {\n grid-column: 1;\n grid-row: 1;\n transition: opacity 300ms ease-out;\n opacity: ${({ $variant }) => ($variant === AppSidePanelVariant.shrinked ? '1' : '0')};\n padding: 2px;\n margin-left: -1px;\n }\n\n .redsift-app-side-panel__featured {\n box-sizing: border-box;\n border-left: 4px solid #e1e1e1;\n border-right: unset;\n margin-bottom: 16px;\n padding: 0px 16px;\n width: 100%;\n }\n\n [dir='rtl'] & {\n left: unset;\n right: 0px;\n transform: unset;\n transition: unset;\n }\n\n scrollbar-color: ${({ $theme }) =>\n css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-resting) transparent`};\n scrollbar-width: thin;\n\n &::-webkit-scrollbar {\n block-size: 9px;\n inline-size: 9px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-clip: padding-box;\n background-color: ${({ $theme }) =>\n css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-resting)`};\n border-radius: 0px;\n border-left: 2px solid transparent;\n border-right: 2px solid transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb:horizontal,\n &::-webkit-scrollbar-thumb:vertical {\n &:hover {\n background-color: ${({ $theme }) =>\n css`var(--redsift-color-${$theme}-components-side-navigation-scrollbar-hover)`};\n }\n }\n\n &::-webkit-scrollbar-corner {\n visibility: hidden;\n }\n`;\n\n// --redsift-color-${$theme}-components-side-navigation-background\n// --redsift-color-${$theme}-components-side-navigation-right-line\n// --redsift-color-${$theme}-components-side-navigation-current-marker\n// --redsift-color-${$theme}-components-side-navigation-text\n// --redsift-color-${$theme}-components-side-navigation-icon\n// --redsift-color-${$theme}-components-side-navigation-chat-background-hover\n// --redsift-color-${$theme}-components-side-navigation-chat-background-down\n\n// ${({ $theme }) => css`var(--redsift-color-${$theme}-components-side-navigation-background)`};\n","import React, { ComponentProps, forwardRef, MouseEvent, RefObject, useContext, useEffect } from 'react';\nimport classNames from 'classnames';\n\nimport { useMessageFormatter } from '../../react-aria/react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { Comp, ProductLogo } from '../../types';\nimport { IconButton } from '../icon-button';\nimport { AppContainerContext } from '../app-container/context';\nimport { StyledAppSidePanel } from './styles';\nimport { AppSidePanelProps } from './types';\nimport { mdiMenu } from '@redsift/icons';\nimport { Icon } from '../icon';\nimport { useWindowSize } from '../../hooks';\nimport { useTheme } from '../theme';\n\nconst COMPONENT_NAME = 'AppSidePanel';\nconst CLASSNAME = 'redsift-app-side-panel';\n\n/**\n * The AppSidePanel component.\n */\nexport const AppSidePanel: Comp<AppSidePanelProps, HTMLDivElement> = forwardRef((props, ref) => {\n const {\n children,\n className,\n featuredElements,\n iconButtonProps,\n iconButtonRef,\n logo,\n onOpen,\n theme: propsTheme,\n variant,\n ...forwardedProps\n } = props;\n\n const { width } = useWindowSize();\n\n const appContainerState = useContext(AppContainerContext);\n const theme = useTheme(propsTheme);\n\n const format = useMessageFormatter(intlMessages);\n\n useEffect(() => {\n if (appContainerState && variant && appContainerState.sidePanelVariant !== variant) {\n appContainerState.setSidePanelVariant(variant);\n }\n }, [variant]);\n\n const handleClose = (event: MouseEvent) => {\n onOpen?.(event);\n appContainerState?.expandSidePanel();\n };\n\n const computedVariant = appContainerState ? appContainerState.sidePanelVariant : variant;\n const product = appContainerState && appContainerState.product;\n\n return (\n <StyledAppSidePanel\n {...forwardedProps}\n $theme={theme}\n $variant={computedVariant}\n className={classNames(AppSidePanel.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n >\n <div className={`${AppSidePanel.className}__header`}>\n <div className={`${AppSidePanel.className}-header__logo`}>\n {React.isValidElement(logo) ? (\n logo\n ) : logo ? (\n <img src={(logo as ComponentProps<'img'>).src} alt={(logo as ComponentProps<'img'>).alt} />\n ) : product && (typeof product === 'string' || product.logo) ? (\n <Icon\n icon={typeof product === 'string' ? ProductLogo[product] : product.logo!}\n size={{ height: width && width > 1080 ? 41 : 36 }}\n />\n ) : null}\n </div>\n <IconButton\n className={`${AppSidePanel.className}-header__expand-button`}\n {...iconButtonProps}\n aria-label={format('expand')}\n icon={mdiMenu}\n onClick={handleClose}\n ref={iconButtonRef as RefObject<HTMLButtonElement>}\n color=\"grey\"\n isDisabled={computedVariant === 'standard'}\n />\n </div>\n {featuredElements ? <div className={`${AppSidePanel.className}__featured`}>{featuredElements}</div> : null}\n {children}\n </StyledAppSidePanel>\n );\n});\nAppSidePanel.className = CLASSNAME;\nAppSidePanel.displayName = COMPONENT_NAME;\n","import React from 'react';\nimport {\n SideNavigationMenuBar,\n useSideNavigationMenuBar,\n UseSideNavigationMenuBarProps,\n} from '../side-navigation-menu-bar';\nimport { AppSidePanelProps } from './types';\n\nexport const useAppSidePanel = ({ items, isActive }: UseSideNavigationMenuBarProps): Omit<AppSidePanelProps, 'ref'> => {\n const sideNavigationMenuBarProps = useSideNavigationMenuBar({\n items,\n isActive,\n });\n\n return {\n children: <SideNavigationMenuBar {...sideNavigationMenuBarProps} aria-label=\"Navigation\" />,\n };\n};\n"],"names":["useWindowSize","windowSize","setWindowSize","useState","width","undefined","height","size","useEffect","handleResize","window","innerWidth","innerHeight","addEventListener","removeEventListener","enUS","frFR","StyledAppSidePanel","styled","div","_ref","$theme","css","_ref2","_ref3","$variant","AppSidePanelVariant","hidden","shrinked","_ref4","_ref5","_ref6","_ref7","_ref8","_ref9","COMPONENT_NAME","CLASSNAME","AppSidePanel","forwardRef","props","ref","children","className","featuredElements","iconButtonProps","iconButtonRef","logo","onOpen","theme","propsTheme","variant","forwardedProps","_objectWithoutProperties","_excluded","appContainerState","useContext","AppContainerContext","useTheme","format","useMessageFormatter","intlMessages","sidePanelVariant","setSidePanelVariant","handleClose","event","expandSidePanel","computedVariant","product","React","createElement","_extends","classNames","isValidElement","src","alt","Icon","icon","ProductLogo","IconButton","mdiMenu","onClick","color","isDisabled","displayName","useAppSidePanel","items","isActive","sideNavigationMenuBarProps","useSideNavigationMenuBar","SideNavigationMenuBar"],"mappings":";;;;;;;;;;;;;;AAQaA,MAAAA,aAAa,GAAGA,MAAM;AACjC,EAAA,MAAM,CAACC,UAAU,EAAEC,aAAa,CAAC,GAAGC,QAAQ,CAAa;AACvDC,IAAAA,KAAK,EAAEC,SAAS;AAChBC,IAAAA,MAAM,EAAED,SAAS;AACjBE,IAAAA,IAAI,EAAEF,SAAAA;AACR,GAAC,CAAC,CAAA;AAEFG,EAAAA,SAAS,CAAC,MAAM;IACd,SAASC,YAAYA,GAAG;MACtBP,aAAa,CAAED,UAAU,IAAK;AAC5B,QAAA,IACES,MAAM,CAACC,UAAU,KAAKV,UAAU,CAACG,KAAK,IACtCM,MAAM,CAACE,WAAW,KAAKX,UAAU,CAACK,MAAM,EACxC;AACA,UAAA,OAAOL,UAAU,CAAA;AACnB,SAAA;AAEA,QAAA,IAAIM,IAAwB,CAAA;AAC5B,QAAA,IAAIG,MAAM,CAACC,UAAU,IAAI,GAAG,EAAE;AAC5BJ,UAAAA,IAAI,GAAG,IAAI,CAAA;AACb,SAAC,MAAM,IAAIG,MAAM,CAACC,UAAU,IAAI,GAAG,EAAE;AACnCJ,UAAAA,IAAI,GAAG,IAAI,CAAA;AACb,SAAC,MAAM,IAAIG,MAAM,CAACC,UAAU,IAAI,IAAI,EAAE;AACpCJ,UAAAA,IAAI,GAAG,IAAI,CAAA;AACb,SAAC,MAAM,IAAIG,MAAM,CAACC,UAAU,IAAI,IAAI,EAAE;AACpCJ,UAAAA,IAAI,GAAG,IAAI,CAAA;AACb,SAAC,MAAM;AACLA,UAAAA,IAAI,GAAG,IAAI,CAAA;AACb,SAAA;QACA,OAAO;UACLH,KAAK,EAAEM,MAAM,CAACC,UAAU;UACxBL,MAAM,EAAEI,MAAM,CAACE,WAAW;AAC1BL,UAAAA,IAAAA;SACD,CAAA;AACH,OAAC,CAAC,CAAA;AACJ,KAAA;AAEAG,IAAAA,MAAM,CAACG,gBAAgB,CAAC,QAAQ,EAAEJ,YAAY,CAAC,CAAA;AAC/CA,IAAAA,YAAY,EAAE,CAAA;IAEd,OAAO,MAAMC,MAAM,CAACI,mBAAmB,CAAC,QAAQ,EAAEL,YAAY,CAAC,CAAA;GAChE,EAAE,EAAE,CAAC,CAAA;AACN,EAAA,OAAOR,UAAU,CAAA;AACnB;;;;;;;;;;;;;;;;AChDA,mBAAe;AACb,EAAA,OAAO,EAAEc,IAAI;AACb,EAAA,OAAO,EAAEC,IAAAA;AACX,CAAC;;ACHD;AACA;AACA;AACO,MAAMC,kBAAkB,GAAGC,MAAM,CAACC,GAA6B,CAAA;AACtE;AACA,oBAAA,EAAsBC,IAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,MAAAA;AAAO,GAAC,GAAAD,IAAA,CAAA;EAAA,OAAKE,GAAI,CAAsBD,oBAAAA,EAAAA,MAAO,CAAwC,uCAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AAChH,0BAAA,EAA4BE,KAAA,IAAA;EAAA,IAAC;AAAEF,IAAAA,MAAAA;AAAO,GAAC,GAAAE,KAAA,CAAA;EAAA,OAAKD,GAAI,CAAsBD,oBAAAA,EAAAA,MAAO,CAAwC,uCAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAA,EAAWG,KAAA,IAAA;EAAA,IAAC;AAAEC,IAAAA,QAAAA;AAAS,GAAC,GAAAD,KAAA,CAAA;AAAA,EAAA,OACpBC,QAAQ,KAAKC,mBAAmB,CAACC,MAAM,GAAG,GAAG,GAAGF,QAAQ,KAAKC,mBAAmB,CAACE,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAAA,CAAC,CAAA;AACjH;AACA;AACA;AACA;AACA;AACA;AACA,MAAA,EAAQC,KAAA,IAAA;EAAA,IAAC;AAAEJ,IAAAA,QAAAA;AAAS,GAAC,GAAAI,KAAA,CAAA;AAAA,EAAA,OACbJ,QAAQ,KAAKC,mBAAmB,CAACC,MAAM,GAAG,GAAG,GAAGF,QAAQ,KAAKC,mBAAmB,CAACE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAA;AAAA,CAAC,CAAA;AACpH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAA,EAAeE,KAAA,IAAA;EAAA,IAAC;AAAEL,IAAAA,QAAAA;AAAS,GAAC,GAAAK,KAAA,CAAA;EAAA,OAAML,QAAQ,KAAKC,mBAAmB,CAACE,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAA;AAAA,CAAE,CAAA;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAA,EAAeG,KAAA,IAAA;EAAA,IAAC;AAAEN,IAAAA,QAAAA;AAAS,GAAC,GAAAM,KAAA,CAAA;EAAA,OAAMN,QAAQ,KAAKC,mBAAmB,CAACE,QAAQ,GAAG,GAAG,GAAG,GAAG,CAAA;AAAA,CAAE,CAAA;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAA,EAAqBI,KAAA,IAAA;EAAA,IAAC;AAAEX,IAAAA,MAAAA;AAAO,GAAC,GAAAW,KAAA,CAAA;EAAA,OAC5BV,GAAI,CAAsBD,oBAAAA,EAAAA,MAAO,CAA2D,0DAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AACjG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAA,EAAwBY,KAAA,IAAA;EAAA,IAAC;AAAEZ,IAAAA,MAAAA;AAAO,GAAC,GAAAY,KAAA,CAAA;EAAA,OAC7BX,GAAI,CAAsBD,oBAAAA,EAAAA,MAAO,CAA+C,8CAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAA,EAA0Ba,KAAA,IAAA;EAAA,IAAC;AAAEb,IAAAA,MAAAA;AAAO,GAAC,GAAAa,KAAA,CAAA;EAAA,OAC7BZ,GAAI,CAAsBD,oBAAAA,EAAAA,MAAO,CAA6C,4CAAA,CAAA,CAAA;AAAA,CAAC,CAAA;AACvF;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAA;;AAED;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;;;AC3HA,MAAMc,cAAc,GAAG,cAAc,CAAA;AACrC,MAAMC,SAAS,GAAG,wBAAwB,CAAA;;AAE1C;AACA;AACA;AACO,MAAMC,YAAqD,gBAAGC,UAAU,CAAC,CAACC,KAAK,EAAEC,GAAG,KAAK;EAC9F,MAAM;MACJC,QAAQ;MACRC,SAAS;MACTC,gBAAgB;MAChBC,eAAe;MACfC,aAAa;MACbC,IAAI;MACJC,MAAM;AACNC,MAAAA,KAAK,EAAEC,UAAU;AACjBC,MAAAA,OAAAA;AAEF,KAAC,GAAGX,KAAK;AADJY,IAAAA,cAAc,GAAAC,wBAAA,CACfb,KAAK,EAAAc,SAAA,CAAA,CAAA;EAET,MAAM;AAAEjD,IAAAA,KAAAA;GAAO,GAAGJ,aAAa,EAAE,CAAA;AAEjC,EAAA,MAAMsD,iBAAiB,GAAGC,UAAU,CAACC,mBAAmB,CAAC,CAAA;AACzD,EAAA,MAAMR,KAAK,GAAGS,QAAQ,CAACR,UAAU,CAAC,CAAA;AAElC,EAAA,MAAMS,MAAM,GAAGC,mBAAmB,CAACC,YAAY,CAAC,CAAA;AAEhDpD,EAAAA,SAAS,CAAC,MAAM;IACd,IAAI8C,iBAAiB,IAAIJ,OAAO,IAAII,iBAAiB,CAACO,gBAAgB,KAAKX,OAAO,EAAE;AAClFI,MAAAA,iBAAiB,CAACQ,mBAAmB,CAACZ,OAAO,CAAC,CAAA;AAChD,KAAA;AACF,GAAC,EAAE,CAACA,OAAO,CAAC,CAAC,CAAA;EAEb,MAAMa,WAAW,GAAIC,KAAiB,IAAK;AACzCjB,IAAAA,MAAM,aAANA,MAAM,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAANA,MAAM,CAAGiB,KAAK,CAAC,CAAA;AACfV,IAAAA,iBAAiB,aAAjBA,iBAAiB,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAjBA,iBAAiB,CAAEW,eAAe,EAAE,CAAA;GACrC,CAAA;EAED,MAAMC,eAAe,GAAGZ,iBAAiB,GAAGA,iBAAiB,CAACO,gBAAgB,GAAGX,OAAO,CAAA;AACxF,EAAA,MAAMiB,OAAO,GAAGb,iBAAiB,IAAIA,iBAAiB,CAACa,OAAO,CAAA;EAE9D,oBACEC,cAAA,CAAAC,aAAA,CAACpD,kBAAkB,EAAAqD,QAAA,KACbnB,cAAc,EAAA;AAClB9B,IAAAA,MAAM,EAAE2B,KAAM;AACdvB,IAAAA,QAAQ,EAAEyC,eAAgB;IAC1BxB,SAAS,EAAE6B,UAAU,CAAClC,YAAY,CAACK,SAAS,EAAEA,SAAS,CAAE;AACzDF,IAAAA,GAAG,EAAEA,GAAAA;GAEL4B,CAAAA,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAG,CAAA,EAAEL,YAAY,CAACK,SAAU,CAAA,QAAA,CAAA;GACxC0B,eAAAA,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAG,CAAA,EAAEL,YAAY,CAACK,SAAU,CAAA,aAAA,CAAA;AAAe,GAAA,eACtD0B,cAAK,CAACI,cAAc,CAAC1B,IAAI,CAAC,GACzBA,IAAI,GACFA,IAAI,gBACNsB,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;IAAKI,GAAG,EAAG3B,IAAI,CAA2B2B,GAAI;IAACC,GAAG,EAAG5B,IAAI,CAA2B4B,GAAAA;AAAI,GAAE,CAAC,GACzFP,OAAO,KAAK,OAAOA,OAAO,KAAK,QAAQ,IAAIA,OAAO,CAACrB,IAAI,CAAC,gBAC1DsB,cAAA,CAAAC,aAAA,CAACM,IAAI,EAAA;AACHC,IAAAA,IAAI,EAAE,OAAOT,OAAO,KAAK,QAAQ,GAAGU,WAAW,CAACV,OAAO,CAAC,GAAGA,OAAO,CAACrB,IAAM;AACzEvC,IAAAA,IAAI,EAAE;MAAED,MAAM,EAAEF,KAAK,IAAIA,KAAK,GAAG,IAAI,GAAG,EAAE,GAAG,EAAA;AAAG,KAAA;GACjD,CAAC,GACA,IACD,CAAC,eACNgE,cAAA,CAAAC,aAAA,CAACS,UAAU,EAAAR,QAAA,CAAA;AACT5B,IAAAA,SAAS,EAAG,CAAA,EAAEL,YAAY,CAACK,SAAU,CAAA,sBAAA,CAAA;AAAwB,GAAA,EACzDE,eAAe,EAAA;IACnB,YAAYc,EAAAA,MAAM,CAAC,QAAQ,CAAE;AAC7BkB,IAAAA,IAAI,EAAEG,OAAQ;AACdC,IAAAA,OAAO,EAAEjB,WAAY;AACrBvB,IAAAA,GAAG,EAAEK,aAA8C;AACnDoC,IAAAA,KAAK,EAAC,MAAM;IACZC,UAAU,EAAEhB,eAAe,KAAK,UAAA;AAAW,GAAA,CAC5C,CACE,CAAC,EACLvB,gBAAgB,gBAAGyB,cAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK3B,IAAAA,SAAS,EAAG,CAAA,EAAEL,YAAY,CAACK,SAAU,CAAA,UAAA,CAAA;AAAY,GAAA,EAAEC,gBAAsB,CAAC,GAAG,IAAI,EACzGF,QACiB,CAAC,CAAA;AAEzB,CAAC,EAAC;AACFJ,YAAY,CAACK,SAAS,GAAGN,SAAS,CAAA;AAClCC,YAAY,CAAC8C,WAAW,GAAGhD,cAAc;;ACvF5BiD,MAAAA,eAAe,GAAGhE,IAAA,IAAwF;EAAA,IAAvF;IAAEiE,KAAK;AAAEC,IAAAA,QAAAA;AAAwC,GAAC,GAAAlE,IAAA,CAAA;EAChF,MAAMmE,0BAA0B,GAAGC,wBAAwB,CAAC;IAC1DH,KAAK;AACLC,IAAAA,QAAAA;AACF,GAAC,CAAC,CAAA;EAEF,OAAO;IACL7C,QAAQ,eAAE2B,cAAA,CAAAC,aAAA,CAACoB,qBAAqB,EAAAnB,QAAA,CAAA,EAAA,EAAKiB,0BAA0B,EAAA;MAAE,YAAW,EAAA,YAAA;KAAc,CAAA,CAAA;GAC3F,CAAA;AACH;;;;"}
|