@arbor-education/design-system.components 4.3.0 → 4.4.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.
@@ -39,7 +39,17 @@ const preview: Preview = {
39
39
  // 'todo' - show a11y violations in the test UI only
40
40
  // 'error' - fail CI on a11y violations
41
41
  // 'off' - skip a11y checks entirely
42
+ // Deliberately 'todo' (warn) until a11y violations are fixed. Flip to 'error' in MIS-75900.
42
43
  test: 'todo',
44
+ options: {
45
+ runOnly: {
46
+ type: 'tag',
47
+ values: ['wcag2a', 'wcag2aa', 'wcag21a', 'wcag21aa', 'wcag22a', 'wcag22aa'],
48
+ },
49
+ rules: {
50
+ 'label-content-name-mismatch': { enabled: true },
51
+ },
52
+ },
43
53
  },
44
54
  docs: {
45
55
  page: DocsTemplate,
package/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## 4.4.0
4
+
5
+ ### Minor Changes
6
+
7
+ - [#285](https://github.com/arbor-education/design-system.components/pull/285) [`7f8a61d`](https://github.com/arbor-education/design-system.components/commit/7f8a61db6270c99b2dd18d2da1590fd55c3dff88) Thanks [@rickbairstow](https://github.com/rickbairstow)! - MIS-73686 ✨ Add Slideover back hook, header actions and close transition
8
+
9
+ ### Patch Changes
10
+
11
+ - [#286](https://github.com/arbor-education/design-system.components/pull/286) [`6269d2f`](https://github.com/arbor-education/design-system.components/commit/6269d2f6ba2ed584344ed65bde3bc663a914878f) Thanks [@rickbairstow](https://github.com/rickbairstow)! - MIS-75775 Configure Storybook axe-core accessibility checks to WCAG 2.2 A/AA and enable the label-content-name-mismatch rule. Checks run at warn level and do not fail the build.
12
+
3
13
  ## 4.3.0
4
14
 
5
15
  ### Minor Changes
@@ -1,13 +1,18 @@
1
1
  import type { IconName } from '../icon/allowedIcons.js';
2
- import { type ReactNode } from 'react';
2
+ import { type HTMLAttributes, type ReactNode } from 'react';
3
3
  export type SlideoverProps = {
4
4
  title?: string;
5
5
  children?: ReactNode;
6
6
  footerContents?: ReactNode;
7
7
  headerIcon?: IconName;
8
+ headerActions?: ReactNode;
8
9
  centerHeaderText?: boolean;
9
10
  hideBackButton?: boolean;
10
- };
11
+ backButtonText?: string;
12
+ onBack?: () => void;
13
+ isClosing?: boolean;
14
+ onCloseTransitionEnd?: () => void;
15
+ } & Omit<HTMLAttributes<HTMLElement>, 'title' | 'children' | 'className' | 'onTransitionEnd'>;
11
16
  export declare const Slideover: (props: SlideoverProps) => import("react").JSX.Element;
12
17
  export declare namespace Slideover {
13
18
  type Props = SlideoverProps;
@@ -1 +1 @@
1
- {"version":3,"file":"Slideover.d.ts","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjD,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,gCA2C9C,CAAC;AAEF,yBAAiB,SAAS,CAAC;IACzB,KAAY,KAAK,GAAG,cAAc,CAAC;CACpC"}
1
+ {"version":3,"file":"Slideover.d.ts","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAA+B,KAAK,cAAc,EAAE,KAAK,SAAS,EAAwB,MAAM,OAAO,CAAC;AAO/G,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,cAAc,CAAC,EAAE,SAAS,CAAC;IAC3B,UAAU,CAAC,EAAE,QAAQ,CAAC;IACtB,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oBAAoB,CAAC,EAAE,MAAM,IAAI,CAAC;CACnC,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,iBAAiB,CAAC,CAAC;AAE9F,eAAO,MAAM,SAAS,GAAI,OAAO,cAAc,gCAkF9C,CAAC;AAEF,yBAAiB,SAAS,CAAC;IACzB,KAAY,KAAK,GAAG,cAAc,CAAC;CACpC"}
@@ -3,17 +3,44 @@ import classNames from 'classnames';
3
3
  import { Button } from '../button/Button.js';
4
4
  import { Heading } from '../heading/Heading.js';
5
5
  import { Icon } from '../icon/Icon.js';
6
- import { useState } from 'react';
6
+ import { useEffect, useRef, useState } from 'react';
7
7
  import { useComponentDidMount } from '../../utils/hooks/useComponentDidMount.js';
8
8
  import { SlideoverUtils } from '../../utils/SlideoverUtils.js';
9
+ // just over the 300ms transition in slideover.scss
10
+ const CLOSE_TRANSITION_FALLBACK_MS = 400;
9
11
  export const Slideover = (props) => {
10
- const { title, children, footerContents, headerIcon, centerHeaderText = true, hideBackButton, } = props;
12
+ const { title, children, footerContents, headerIcon, headerActions, centerHeaderText = true, hideBackButton, backButtonText = 'Back', onBack = SlideoverUtils.removeSlideover, isClosing = false, onCloseTransitionEnd, ...rest } = props;
11
13
  const [isFirstRender, setIsFirstRender] = useState(true);
12
14
  useComponentDidMount(() => {
13
15
  setIsFirstRender(false);
14
16
  });
15
- return (_jsxs("aside", { className: classNames('ds-slideover', {
17
+ const hasFinishedClosingRef = useRef(false);
18
+ const onCloseTransitionEndRef = useRef(onCloseTransitionEnd);
19
+ onCloseTransitionEndRef.current = onCloseTransitionEnd;
20
+ const finishClosing = () => {
21
+ if (hasFinishedClosingRef.current) {
22
+ return;
23
+ }
24
+ hasFinishedClosingRef.current = true;
25
+ onCloseTransitionEndRef.current?.();
26
+ };
27
+ // transitionend does not fire if the slide-out never runs, so also finish on a timer
28
+ useEffect(() => {
29
+ if (!isClosing) {
30
+ hasFinishedClosingRef.current = false;
31
+ return;
32
+ }
33
+ const timeout = setTimeout(finishClosing, CLOSE_TRANSITION_FALLBACK_MS);
34
+ return () => clearTimeout(timeout);
35
+ }, [isClosing]);
36
+ const handleTransitionEnd = (event) => {
37
+ if (isClosing && event.target === event.currentTarget && event.propertyName === 'right') {
38
+ finishClosing();
39
+ }
40
+ };
41
+ return (_jsxs("aside", { ...rest, className: classNames('ds-slideover', {
16
42
  'ds-slideover--initial': isFirstRender,
17
- }), children: [_jsxs("div", { className: classNames('ds-slideover__header', { 'ds-slideover__header--center': centerHeaderText }), children: [!hideBackButton && (_jsxs(Button, { variant: "tertiary", onClick: SlideoverUtils.removeSlideover, children: [_jsx(Icon, { name: "chevrons-left" }), "Back"] })), _jsxs(Heading, { level: 2, children: [title, headerIcon && _jsx(Icon, { name: headerIcon })] })] }), _jsx("div", { className: "ds-slideover__contents", children: children }), footerContents && _jsx("div", { className: "ds-slideover__footer", children: footerContents })] }));
43
+ 'ds-slideover--closing': isClosing,
44
+ }), onTransitionEnd: handleTransitionEnd, children: [_jsxs("div", { className: classNames('ds-slideover__header', { 'ds-slideover__header--center': centerHeaderText }), children: [!hideBackButton && (_jsxs(Button, { variant: "tertiary", onClick: () => onBack(), children: [_jsx(Icon, { name: "chevrons-left" }), backButtonText] })), _jsxs(Heading, { level: 2, children: [title, headerIcon && _jsx(Icon, { name: headerIcon })] }), headerActions && _jsx("div", { className: "ds-slideover__header-actions", children: headerActions })] }), _jsx("div", { className: "ds-slideover__contents", children: children }), footerContents && _jsx("div", { className: "ds-slideover__footer", children: footerContents })] }));
18
45
  };
19
46
  //# sourceMappingURL=Slideover.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slideover.js","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,QAAQ,EAAkB,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAWtD,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAqB,EAAE,EAAE;IACjD,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,cAAc,EACd,UAAU,EACV,gBAAgB,GAAG,IAAI,EACvB,cAAc,GACf,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEzD,oBAAoB,CAAC,GAAG,EAAE;QACxB,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,OAAO,CACL,iBAAO,SAAS,EAAE,UAAU,CAAC,cAAc,EACzC;YACE,uBAAuB,EAAE,aAAa;SACvC,CACF,aAEC,eAAK,SAAS,EAAE,UAAU,CAAC,sBAAsB,EAAE,EAAE,8BAA8B,EAAE,gBAAgB,EAAE,CAAC,aAEpG,CAAC,cAAc,IAAI,CACjB,MAAC,MAAM,IAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,aAChE,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,GAAG,YAEtB,CACV,EAEH,MAAC,OAAO,IAAC,KAAK,EAAE,CAAC,aACd,KAAK,EACL,UAAU,IAAI,KAAC,IAAI,IAAC,IAAI,EAAE,UAAU,GAAI,IACjC,IACN,EAEN,cAAK,SAAS,EAAC,wBAAwB,YAAE,QAAQ,GAAO,EAEvD,cAAc,IAAI,cAAK,SAAS,EAAC,sBAAsB,YAAE,cAAc,GAAO,IACzE,CACT,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"Slideover.js","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.tsx"],"names":[],"mappings":";AAAA,OAAO,UAAU,MAAM,YAAY,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAA6D,MAAM,OAAO,CAAC;AAC/G,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,mDAAmD;AACnD,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAgBzC,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,KAAqB,EAAE,EAAE;IACjD,MAAM,EACJ,KAAK,EACL,QAAQ,EACR,cAAc,EACd,UAAU,EACV,aAAa,EACb,gBAAgB,GAAG,IAAI,EACvB,cAAc,EACd,cAAc,GAAG,MAAM,EACvB,MAAM,GAAG,cAAc,CAAC,eAAe,EACvC,SAAS,GAAG,KAAK,EACjB,oBAAoB,EACpB,GAAG,IAAI,EACR,GAAG,KAAK,CAAC;IAEV,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEzD,oBAAoB,CAAC,GAAG,EAAE;QACxB,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEH,MAAM,qBAAqB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,uBAAuB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC7D,uBAAuB,CAAC,OAAO,GAAG,oBAAoB,CAAC;IAEvD,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,IAAI,qBAAqB,CAAC,OAAO,EAAE,CAAC;YAClC,OAAO;QACT,CAAC;QACD,qBAAqB,CAAC,OAAO,GAAG,IAAI,CAAC;QACrC,uBAAuB,CAAC,OAAO,EAAE,EAAE,CAAC;IACtC,CAAC,CAAC;IAEF,qFAAqF;IACrF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,qBAAqB,CAAC,OAAO,GAAG,KAAK,CAAC;YACtC,OAAO;QACT,CAAC;QACD,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,EAAE,4BAA4B,CAAC,CAAC;QACxE,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,MAAM,mBAAmB,GAAG,CAAC,KAAmC,EAAE,EAAE;QAClE,IAAI,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,YAAY,KAAK,OAAO,EAAE,CAAC;YACxF,aAAa,EAAE,CAAC;QAClB,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,oBACM,IAAI,EACR,SAAS,EAAE,UAAU,CAAC,cAAc,EAClC;YACE,uBAAuB,EAAE,aAAa;YACtC,uBAAuB,EAAE,SAAS;SACnC,CACF,EACD,eAAe,EAAE,mBAAmB,aAEpC,eAAK,SAAS,EAAE,UAAU,CAAC,sBAAsB,EAAE,EAAE,8BAA8B,EAAE,gBAAgB,EAAE,CAAC,aAEpG,CAAC,cAAc,IAAI,CACjB,MAAC,MAAM,IAAC,OAAO,EAAC,UAAU,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,aAChD,KAAC,IAAI,IAAC,IAAI,EAAC,eAAe,GAAG,EAC5B,cAAc,IACR,CACV,EAEH,MAAC,OAAO,IAAC,KAAK,EAAE,CAAC,aACd,KAAK,EACL,UAAU,IAAI,KAAC,IAAI,IAAC,IAAI,EAAE,UAAU,GAAI,IACjC,EACT,aAAa,IAAI,cAAK,SAAS,EAAC,8BAA8B,YAAE,aAAa,GAAO,IACjF,EAEN,cAAK,SAAS,EAAC,wBAAwB,YAAE,QAAQ,GAAO,EAEvD,cAAc,IAAI,cAAK,SAAS,EAAC,sBAAsB,YAAE,cAAc,GAAO,IACzE,CACT,CAAC;AACJ,CAAC,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { jsx as _jsx } from "react/jsx-runtime";
2
- import { expect, test, describe, vi } from 'vitest';
3
- import { render, screen, fireEvent } from '@testing-library/react';
2
+ import { expect, test, describe, vi, beforeEach, afterEach } from 'vitest';
3
+ import { render, screen, fireEvent, createEvent, act } from '@testing-library/react';
4
4
  import { Slideover } from './Slideover.js';
5
5
  import '@testing-library/jest-dom/vitest';
6
6
  import { SlideoverUtils } from '../../utils/SlideoverUtils.js';
@@ -9,7 +9,15 @@ vi.mock('Utils/SlideoverUtils', () => ({
9
9
  removeSlideover: vi.fn(),
10
10
  },
11
11
  }));
12
+ const fireTransitionEnd = (element, propertyName) => {
13
+ const event = createEvent.transitionEnd(element);
14
+ Object.defineProperty(event, 'propertyName', { value: propertyName });
15
+ fireEvent(element, event);
16
+ };
12
17
  describe('Slideover', () => {
18
+ beforeEach(() => {
19
+ vi.mocked(SlideoverUtils.removeSlideover).mockClear();
20
+ });
13
21
  test('renders the title and children', () => {
14
22
  render(_jsx(Slideover, { title: "My Test Slideover", children: _jsx("div", { children: "My Content" }) }));
15
23
  expect(screen.getByText('My Test Slideover')).toBeInTheDocument();
@@ -29,5 +37,111 @@ describe('Slideover', () => {
29
37
  fireEvent.click(backButton);
30
38
  expect(SlideoverUtils.removeSlideover).toHaveBeenCalled();
31
39
  });
40
+ describe('onBack', () => {
41
+ test('calls onBack instead of removeSlideover when provided', () => {
42
+ const onBack = vi.fn();
43
+ render(_jsx(Slideover, { onBack: onBack }));
44
+ fireEvent.click(screen.getByRole('button', { name: /Back/i }));
45
+ expect(onBack).toHaveBeenCalledTimes(1);
46
+ expect(SlideoverUtils.removeSlideover).not.toHaveBeenCalled();
47
+ });
48
+ });
49
+ describe('backButtonText', () => {
50
+ test('labels the back button with backButtonText', () => {
51
+ render(_jsx(Slideover, { backButtonText: "Yn \u00F4l" }));
52
+ expect(screen.getByRole('button', { name: 'Yn ôl' })).toBeInTheDocument();
53
+ expect(screen.queryByRole('button', { name: 'Back' })).not.toBeInTheDocument();
54
+ });
55
+ test('defaults the label to Back', () => {
56
+ render(_jsx(Slideover, {}));
57
+ expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument();
58
+ });
59
+ });
60
+ describe('headerActions', () => {
61
+ test('renders header actions in the header', () => {
62
+ render(_jsx(Slideover, { title: "Student", headerActions: _jsx("button", { type: "button", children: "Edit" }) }));
63
+ const header = screen.getByRole('heading', { name: 'Student' }).parentElement;
64
+ expect(header).toContainElement(screen.getByRole('button', { name: 'Edit' }));
65
+ });
66
+ test('renders no header actions container when headerActions is not provided', () => {
67
+ const { container } = render(_jsx(Slideover, {}));
68
+ expect(container.querySelector('.ds-slideover__header-actions')).not.toBeInTheDocument();
69
+ });
70
+ });
71
+ describe('closing', () => {
72
+ test('is not marked as closing by default', () => {
73
+ const { container } = render(_jsx(Slideover, {}));
74
+ expect(container.querySelector('.ds-slideover')).not.toHaveClass('ds-slideover--closing');
75
+ });
76
+ test('is marked as closing when isClosing is set', () => {
77
+ const { container } = render(_jsx(Slideover, { isClosing: true }));
78
+ expect(container.querySelector('.ds-slideover')).toHaveClass('ds-slideover--closing');
79
+ });
80
+ test('calls onCloseTransitionEnd when the closing slide-out finishes', () => {
81
+ const onCloseTransitionEnd = vi.fn();
82
+ const { container } = render(_jsx(Slideover, { isClosing: true, onCloseTransitionEnd: onCloseTransitionEnd }));
83
+ fireTransitionEnd(container.querySelector('.ds-slideover'), 'right');
84
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
85
+ });
86
+ test('does not call onCloseTransitionEnd when the enter slide-in finishes', () => {
87
+ const onCloseTransitionEnd = vi.fn();
88
+ const { container } = render(_jsx(Slideover, { onCloseTransitionEnd: onCloseTransitionEnd }));
89
+ fireTransitionEnd(container.querySelector('.ds-slideover'), 'right');
90
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
91
+ });
92
+ describe('when the slide-out transition never runs', () => {
93
+ beforeEach(() => {
94
+ vi.useFakeTimers();
95
+ });
96
+ afterEach(() => {
97
+ vi.useRealTimers();
98
+ });
99
+ test('still calls onCloseTransitionEnd once the transition time has passed', () => {
100
+ const onCloseTransitionEnd = vi.fn();
101
+ render(_jsx(Slideover, { isClosing: true, onCloseTransitionEnd: onCloseTransitionEnd }));
102
+ act(() => {
103
+ vi.advanceTimersByTime(299);
104
+ });
105
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
106
+ act(() => {
107
+ vi.advanceTimersByTime(200);
108
+ });
109
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
110
+ });
111
+ test('calls onCloseTransitionEnd once when the transition does finish', () => {
112
+ const onCloseTransitionEnd = vi.fn();
113
+ const { container } = render(_jsx(Slideover, { isClosing: true, onCloseTransitionEnd: onCloseTransitionEnd }));
114
+ fireTransitionEnd(container.querySelector('.ds-slideover'), 'right');
115
+ act(() => {
116
+ vi.advanceTimersByTime(1000);
117
+ });
118
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
119
+ });
120
+ test('does not call onCloseTransitionEnd if closing is cancelled first', () => {
121
+ const onCloseTransitionEnd = vi.fn();
122
+ const { rerender } = render(_jsx(Slideover, { isClosing: true, onCloseTransitionEnd: onCloseTransitionEnd }));
123
+ rerender(_jsx(Slideover, { onCloseTransitionEnd: onCloseTransitionEnd }));
124
+ act(() => {
125
+ vi.advanceTimersByTime(1000);
126
+ });
127
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
128
+ });
129
+ });
130
+ test('ignores transitions of other properties and of child elements', () => {
131
+ const onCloseTransitionEnd = vi.fn();
132
+ const { container } = render(_jsx(Slideover, { isClosing: true, onCloseTransitionEnd: onCloseTransitionEnd, children: _jsx("div", { "data-testid": "child" }) }));
133
+ fireTransitionEnd(container.querySelector('.ds-slideover'), 'opacity');
134
+ fireTransitionEnd(screen.getByTestId('child'), 'right');
135
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
136
+ });
137
+ });
138
+ describe('accessibility attributes', () => {
139
+ test('forwards role and aria attributes to the panel', () => {
140
+ render(_jsx(Slideover, { title: "Student", role: "dialog", "aria-label": "Student details", "aria-modal": true }));
141
+ const panel = screen.getByRole('dialog', { name: 'Student details' });
142
+ expect(panel).toHaveAttribute('aria-modal', 'true');
143
+ expect(panel).toHaveClass('ds-slideover');
144
+ });
145
+ });
32
146
  });
33
147
  //# sourceMappingURL=Slideover.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Slideover.test.js","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.test.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,kCAAkC,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,EAAE,CAAC,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE,CAAC,CAAC;IACrC,cAAc,EAAE;QACd,eAAe,EAAE,EAAE,CAAC,EAAE,EAAE;KACzB;CACF,CAAC,CAAC,CAAC;AAEJ,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;QAC1C,MAAM,CAAC,KAAC,SAAS,IAAC,KAAK,EAAC,mBAAmB,YAAC,uCAAqB,GAAY,CAAC,CAAC;QAC/E,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClE,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC7D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uCAAuC,EAAE,GAAG,EAAE;QACjD,MAAM,CAAC,KAAC,SAAS,IAAC,cAAc,EAAE,yCAAuB,GAAI,CAAC,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;IAC/D,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACtE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC,KAAC,SAAS,KAAG,CAAC,CAAC;QAC5C,MAAM,CAAC,SAAS,CAAC,aAAa,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;IACnF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uDAAuD,EAAE,GAAG,EAAE;QACjE,MAAM,CAAC,KAAC,SAAS,KAAG,CAAC,CAAC;QACtB,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACjE,SAAS,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5B,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAC5D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"Slideover.test.js","sourceRoot":"","sources":["../../../src/components/slideover/Slideover.test.tsx"],"names":[],"mappings":"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"}
@@ -33,4 +33,7 @@ export declare const Default: Story;
33
33
  export declare const WithFooterActions: Story;
34
34
  export declare const StackedSlideovers: Story;
35
35
  export declare const HideBackButton: Story;
36
+ export declare const ConfirmOnBack: Story;
37
+ export declare const HeaderActions: Story;
38
+ export declare const ClosingTransition: Story;
36
39
  //# sourceMappingURL=SlideoverManager.stories.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlideoverManager.stories.d.ts","sourceRoot":"","sources":["../../../src/components/slideoverManager/SlideoverManager.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAuI5D,iBAAS,wBAAwB,gCAehC;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;CAoB+B,CAAC;AAE1C,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAmNnC,eAAO,MAAM,OAAO,EAAE,KA4CrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAqD/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KA4D/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAkD5B,CAAC"}
1
+ {"version":3,"file":"SlideoverManager.stories.d.ts","sourceRoot":"","sources":["../../../src/components/slideoverManager/SlideoverManager.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AA+J5D,iBAAS,wBAAwB,gCAgBhC;AAMD,QAAA,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;CAoB+B,CAAC;AAE1C,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAsSnC,eAAO,MAAM,OAAO,EAAE,KA4CrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAqD/B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KA4D/B,CAAC;AAEF,eAAO,MAAM,cAAc,EAAE,KAkD5B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAU3B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,KAU3B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,KAU/B,CAAC"}
@@ -5,6 +5,10 @@ import { SlideoverUtils } from '../../utils/SlideoverUtils.js';
5
5
  import { Button } from '../button/Button.js';
6
6
  import { FormField } from '../formField/FormField.js';
7
7
  import { Section } from '../section/Section.js';
8
+ import { Slideover } from '../slideover/Slideover.js';
9
+ import { Icon } from '../icon/Icon.js';
10
+ import { useState } from 'react';
11
+ import { fn } from 'storybook/test';
8
12
  // ---------------------------------------------------------------------------
9
13
  // Docs page content
10
14
  // ---------------------------------------------------------------------------
@@ -40,8 +44,15 @@ const USAGE_GUIDANCE = [
40
44
  '| `children` | `ReactNode` | — | Main scrollable content |',
41
45
  '| `footerContents` | `ReactNode` | — | Sticky footer — use for primary actions (Save / Cancel) |',
42
46
  '| `headerIcon` | `IconName` | — | Icon rendered next to the title |',
47
+ '| `headerActions` | `ReactNode` | — | Actions rendered at the end of the header, e.g. an Edit button |',
43
48
  '| `centerHeaderText` | `boolean` | `true` | Whether the header text is centred |',
44
49
  '| `hideBackButton` | `boolean` | — | Hides the Back chevron button in the header |',
50
+ '| `backButtonText` | `string` | `\'Back\'` | Label for the Back button — pass a translated string |',
51
+ '| `onBack` | `() => void` | `SlideoverUtils.removeSlideover` | Replaces what the Back button does, e.g. to confirm unsaved changes before closing |',
52
+ '| `isClosing` | `boolean` | `false` | Plays the slide-out transition. Keep the panel mounted until `onCloseTransitionEnd` fires |',
53
+ '| `onCloseTransitionEnd` | `() => void` | — | Called once the slide-out transition started by `isClosing` has finished |',
54
+ '',
55
+ 'Any other HTML attribute (`role`, `aria-label`, `aria-modal`, `id`, …) is forwarded to the panel\'s `<aside>` element.',
45
56
  '',
46
57
  '---',
47
58
  '',
@@ -108,9 +119,21 @@ const DEVELOPER_NOTES = [
108
119
  '',
109
120
  '### Accessibility',
110
121
  '',
111
- '- The overlay dims the background and traps focus inside the active slideover panel.',
112
- '- The Back button is keyboard accessible and labelled.',
113
- '- Ensure the `title` prop is always set — it is the visible and accessible heading for the panel.',
122
+ '- The overlay dims the background. It does **not** trap focus, move focus into the panel on open, or close on Escape — consumers that need modal behaviour must provide it.',
123
+ '- The panel renders as an `<aside>`. Pass `role="dialog"`, `aria-modal` and an `aria-label` when the slideover is used as a dialog.',
124
+ '- The Back button is keyboard accessible and labelled. Pass `backButtonText` to translate it.',
125
+ '- Ensure the `title` prop is always set — it is the visible heading for the panel.',
126
+ ].join('\n');
127
+ const CUSTOM_BEHAVIOUR_NOTES = [
128
+ '### Intercepting Back',
129
+ '',
130
+ 'By default the Back button pops the top panel. Pass `onBack` to run your own logic first — for example, asking the user to confirm before unsaved changes are lost — and call `SlideoverUtils.removeSlideover()` yourself when it is safe to close.',
131
+ '',
132
+ '### Animating a panel out',
133
+ '',
134
+ 'Panels slide in on mount. To slide one out, set `isClosing` and remove it from your stack in `onCloseTransitionEnd`. This is for consumers rendering `Slideover` from their own stack; `SlideoverUtils.addSlideover` does not accept these props, because `SlideoverManager` cannot update a panel once it is added.',
135
+ '',
136
+ '`onCloseTransitionEnd` fires when the slide-out finishes, or after a short fallback delay if no transition runs (for example when the panel is hidden or motion is reduced), so a closing panel is never left mounted.',
114
137
  ].join('\n');
115
138
  const RELATED_COMPONENTS = [
116
139
  '## Related components',
@@ -121,7 +144,7 @@ const RELATED_COMPONENTS = [
121
144
  // Docs page
122
145
  // ---------------------------------------------------------------------------
123
146
  function SlideoverManagerDocsPage() {
124
- return (_jsxs(_Fragment, { children: [_jsx(Title, {}), _jsx(Subtitle, {}), _jsx(Markdown, { children: DESCRIPTION_INTRO }), _jsx(DocHeading, { children: "Usage guidance" }), _jsx(Markdown, { children: USAGE_GUIDANCE }), _jsx(DocHeading, { children: "Developer notes" }), _jsx(Markdown, { children: DEVELOPER_NOTES }), _jsx(DocHeading, { children: "Examples" }), _jsx(Stories, { title: "" }), _jsx(Markdown, { children: RELATED_COMPONENTS })] }));
147
+ return (_jsxs(_Fragment, { children: [_jsx(Title, {}), _jsx(Subtitle, {}), _jsx(Markdown, { children: DESCRIPTION_INTRO }), _jsx(DocHeading, { children: "Usage guidance" }), _jsx(Markdown, { children: USAGE_GUIDANCE }), _jsx(DocHeading, { children: "Developer notes" }), _jsx(Markdown, { children: DEVELOPER_NOTES }), _jsx(Markdown, { children: CUSTOM_BEHAVIOUR_NOTES }), _jsx(DocHeading, { children: "Examples" }), _jsx(Stories, { title: "" }), _jsx(Markdown, { children: RELATED_COMPONENTS })] }));
125
148
  }
126
149
  // ---------------------------------------------------------------------------
127
150
  // Meta
@@ -193,6 +216,29 @@ const HideBackButtonTemplate = () => (_jsxs(PageBackground, { children: [_jsx(Sl
193
216
  children: (_jsxs("p", { children: ["Are you sure you want to remove", ' ', _jsx("strong", { children: "Alex Johnson" }), ' ', "from Year 5? This cannot be undone."] })),
194
217
  footerContents: (_jsxs("div", { style: { display: 'flex', gap: 'var(--spacing-small)', justifyContent: 'flex-end' }, children: [_jsx(Button, { variant: "secondary", onClick: SlideoverUtils.removeSlideover, children: "Cancel" }), _jsx(Button, { variant: "primary-destructive", onClick: SlideoverUtils.removeSlideover, children: "Remove pupil" })] })),
195
218
  }), children: "Remove pupil" })] }));
219
+ const ConfirmOnBackTemplate = () => (_jsxs(PageBackground, { children: [_jsx(SlideoverManager, { slideovers: [] }), _jsx(Button, { onClick: () => SlideoverUtils.addSlideover({
220
+ title: 'Edit Pupil Details',
221
+ onBack: () => {
222
+ if (window.confirm('You have unsaved changes. Leave without saving?')) {
223
+ SlideoverUtils.removeSlideover();
224
+ }
225
+ },
226
+ children: (_jsx(FormField, { id: "pupil-name-confirm", label: "Full name", inputType: "text", inputProps: { defaultValue: 'Alex Johnson' } })),
227
+ }), children: "Edit pupil details" })] }));
228
+ const handleEditClick = fn().mockName('headerActions Edit onClick');
229
+ const HeaderActionsTemplate = () => (_jsxs(PageBackground, { children: [_jsx(SlideoverManager, { slideovers: [] }), _jsx(Button, { onClick: () => SlideoverUtils.addSlideover({
230
+ title: 'Pupil: Alex Johnson',
231
+ headerActions: (_jsxs(Button, { variant: "secondary", size: "S", onClick: handleEditClick, children: [_jsx(Icon, { name: "pencil" }), "Edit"] })),
232
+ children: _jsx("p", { children: "Year 5 \u00B7 Registration group 5B" }),
233
+ }), children: "View pupil record" })] }));
234
+ const ClosingTransitionTemplate = () => {
235
+ const [isOpen, setIsOpen] = useState(false);
236
+ const [isClosing, setIsClosing] = useState(false);
237
+ return (_jsxs(PageBackground, { children: [_jsx(Button, { onClick: () => {
238
+ setIsClosing(false);
239
+ setIsOpen(true);
240
+ }, children: "Open slideover" }), isOpen && (_jsx("div", { className: "ds-slideover-manager ds-slideover-manager--active", children: _jsx(Slideover, { title: "Pupil Record", onBack: () => setIsClosing(true), isClosing: isClosing, onCloseTransitionEnd: () => setIsOpen(false), role: "dialog", "aria-modal": true, "aria-label": "Pupil Record", children: _jsx("p", { children: "Press Back to watch the panel slide out before it is removed." }) }) }))] }));
241
+ };
196
242
  // ---------------------------------------------------------------------------
197
243
  // Stories
198
244
  // ---------------------------------------------------------------------------
@@ -395,4 +441,28 @@ export default RemovePupilButton;
395
441
  'Set `hideBackButton={true}` when the panel represents an action the user must explicitly confirm or cancel.',
396
442
  'Without a Back button, the user must interact with the footer actions — reducing accidental dismissal.',
397
443
  ].join(' '));
444
+ export const ConfirmOnBack = withDescription({
445
+ render: ConfirmOnBackTemplate,
446
+ parameters: { controls: { disable: true } },
447
+ }, [
448
+ 'Pass `onBack` to replace what the Back button does.',
449
+ 'Here it asks for confirmation before closing, the pattern for protecting unsaved changes.',
450
+ 'Call `SlideoverUtils.removeSlideover()` yourself once it is safe to close.',
451
+ ].join(' '));
452
+ export const HeaderActions = withDescription({
453
+ render: HeaderActionsTemplate,
454
+ parameters: { controls: { disable: true } },
455
+ }, [
456
+ 'Use `headerActions` to place actions such as Edit at the end of the header.',
457
+ 'Clicking Edit here logs to the Actions panel.',
458
+ 'Pass `backButtonText` to replace the Back label, for example with a translated string.',
459
+ ].join(' '));
460
+ export const ClosingTransition = withDescription({
461
+ render: ClosingTransitionTemplate,
462
+ parameters: { controls: { disable: true } },
463
+ }, [
464
+ 'Set `isClosing` to slide a panel out, and unmount it in `onCloseTransitionEnd`.',
465
+ 'This example renders `Slideover` from its own state rather than through `SlideoverManager`,',
466
+ 'and forwards `role`, `aria-modal` and `aria-label` to use the panel as a dialog.',
467
+ ].join(' '));
398
468
  //# sourceMappingURL=SlideoverManager.stories.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlideoverManager.stories.js","sourceRoot":"","sources":["../../../src/components/slideoverManager/SlideoverManager.stories.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,OAAO,IAAI,UAAU,EACrB,QAAQ,EACR,OAAO,EACP,QAAQ,EACR,KAAK,GACN,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAErD,8EAA8E;AAC9E,oBAAoB;AACpB,8EAA8E;AAE9E,MAAM,iBAAiB,GAAG;IACxB,iFAAiF;IACjF,yHAAyH;IACzH,2FAA2F;CAC5F,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAEZ,MAAM,cAAc,GAAG;IACrB,iBAAiB;IACjB,EAAE;IACF,yEAAyE;IACzE,wFAAwF;IACxF,sFAAsF;IACtF,EAAE;IACF,KAAK;IACL,EAAE;IACF,qBAAqB;IACrB,EAAE;IACF,6BAA6B;IAC7B,WAAW;IACX,mJAAmJ;IACnJ,oEAAoE;IACpE,uFAAuF;IACvF,EAAE;IACF,KAAK;IACL,EAAE;IACF,oDAAoD;IACpD,EAAE;IACF,yCAAyC;IACzC,mBAAmB;IACnB,gDAAgD;IAChD,4DAA4D;IAC5D,kGAAkG;IAClG,qEAAqE;IACrE,kFAAkF;IAClF,oFAAoF;IACpF,EAAE;IACF,KAAK;IACL,EAAE;IACF,8BAA8B;IAC9B,EAAE;IACF,yCAAyC;IACzC,mBAAmB;IACnB,6FAA6F;CAC9F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,eAAe,GAAG;IACtB,wCAAwC;IACxC,EAAE;IACF,gFAAgF;IAChF,wGAAwG;IACxG,+BAA+B;IAC/B,EAAE;IACF,QAAQ;IACR,aAAa;IACb,kBAAkB;IAClB,YAAY;IACZ,WAAW;IACX,4CAA4C;IAC5C,sBAAsB;IACtB,YAAY;IACZ,MAAM;IACN,GAAG;IACH,KAAK;IACL,EAAE;IACF,KAAK;IACL,EAAE;IACF,oCAAoC;IACpC,EAAE;IACF,OAAO;IACP,6EAA6E;IAC7E,EAAE;IACF,oCAAoC;IACpC,+BAA+B;IAC/B,wBAAwB;IACxB,gCAAgC;IAChC,qBAAqB;IACrB,QAAQ;IACR,4FAA4F;IAC5F,kDAAkD;IAClD,SAAS;IACT,MAAM;IACN,KAAK;IACL,EAAE;IACF,sBAAsB;IACtB,mCAAmC;IACnC,EAAE;IACF,2BAA2B;IAC3B,uCAAuC;IACvC,KAAK;IACL,EAAE;IACF,KAAK;IACL,EAAE;IACF,wBAAwB;IACxB,EAAE;IACF,yFAAyF;IACzF,4HAA4H;IAC5H,sHAAsH;IACtH,EAAE;IACF,KAAK;IACL,EAAE;IACF,mBAAmB;IACnB,EAAE;IACF,sFAAsF;IACtF,wDAAwD;IACxD,mGAAmG;CACpG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,MAAM,kBAAkB,GAAG;IACzB,uBAAuB;IACvB,EAAE;IACF,yNAAyN;CAC1N,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,SAAS,wBAAwB;IAC/B,OAAO,CACL,8BACE,KAAC,KAAK,KAAG,EACT,KAAC,QAAQ,KAAG,EACZ,KAAC,QAAQ,cAAE,iBAAiB,GAAY,EACxC,KAAC,UAAU,iCAA4B,EACvC,KAAC,QAAQ,cAAE,cAAc,GAAY,EACrC,KAAC,UAAU,kCAA6B,EACxC,KAAC,QAAQ,cAAE,eAAe,GAAY,EACtC,KAAC,UAAU,2BAAsB,EACjC,KAAC,OAAO,IAAC,KAAK,EAAC,EAAE,GAAG,EACpB,KAAC,QAAQ,cAAE,kBAAkB,GAAY,IACxC,CACJ,CAAC;AACJ,CAAC;AAED,8EAA8E;AAC9E,OAAO;AACP,8EAA8E;AAE9E,MAAM,IAAI,GAAG;IACX,KAAK,EAAE,6BAA6B;IACpC,SAAS,EAAE,gBAAgB;IAC3B,IAAI,EAAE,CAAC,UAAU,CAAC;IAClB,UAAU,EAAE;QACV,MAAM,EAAE,YAAY;QACpB,IAAI,EAAE;YACJ,IAAI,EAAE,wBAAwB;SAC/B;KACF;IACD,QAAQ,EAAE;QACR,UAAU,EAAE;YACV,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,0GAA0G;YACvH,KAAK,EAAE;gBACL,IAAI,EAAE,EAAE,OAAO,EAAE,kBAAkB,EAAE;gBACrC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;aAChC;SACF;KACF;CACsC,CAAC;AAE1C,eAAe,IAAI,CAAC;AAGpB,8EAA8E;AAC9E,SAAS;AACT,8EAA8E;AAE9E,MAAM,eAAe,GAAG,CAAC,KAA0B,EAAE,WAAmB,EAAS,EAAE,CAAC,CAAC;IACnF,GAAI,KAAe;IACnB,UAAU,EAAE;QACV,GAAG,KAAK,CAAC,UAAU;QACnB,IAAI,EAAE;YACJ,GAAG,KAAK,CAAC,UAAU,EAAE,IAAI;YACzB,WAAW,EAAE;gBACX,KAAK,EAAE,WAAW;aACnB;SACF;KACF;CACF,CAAC,CAAC;AAEH,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,MAAM,cAAc,GAAG,CAAC,EAAE,QAAQ,EAAiC,EAAE,EAAE,CAAC,CACtE,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,uBAAuB,EAAE,aACvG,aAAI,KAAK,EAAE,EAAE,MAAM,EAAE,0BAA0B,EAAE,QAAQ,EAAE,uBAAuB,EAAE,UAAU,EAAE,GAAG,EAAE,2BAEhG,EACL,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,0BAA0B,EAAE,KAAK,EAAE,uBAAuB,EAAE,kEAE5E,EACH,QAAQ,IACL,CACP,CAAC;AAEF,8EAA8E;AAC9E,YAAY;AACZ,8EAA8E;AAE9E,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,CAC5B,MAAC,cAAc,eACb,KAAC,gBAAgB,IAAC,UAAU,EAAE,EAAE,GAAI,EACpC,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,aAC1D,KAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC,YAAY,CAAC;wBAC1B,KAAK,EAAE,cAAc;wBACrB,QAAQ,EAAE,CACR,kFAA8D,CAC/D;qBACF,CAAC,+BAGG,EACT,KAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,4BAE1D,EACT,KAAC,MAAM,IAAC,OAAO,EAAC,qBAAqB,EAAC,OAAO,EAAE,cAAc,CAAC,mBAAmB,0BAExE,IACL,IACS,CAClB,CAAC;AAEF,MAAM,yBAAyB,GAAG,GAAG,EAAE,CAAC,CACtC,MAAC,cAAc,eACb,KAAC,gBAAgB,IAAC,UAAU,EAAE,EAAE,GAAI,EACpC,KAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC,YAAY,CAAC;gBAC1B,KAAK,EAAE,oBAAoB;gBAC3B,QAAQ,EAAE,CACR,MAAC,OAAO,IAAC,KAAK,EAAC,kBAAkB,aAC/B,KAAC,SAAS,IACR,EAAE,EAAC,YAAY,EACf,KAAK,EAAC,WAAW,EACjB,SAAS,EAAC,MAAM,EAChB,UAAU,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,GAC9E,EACF,KAAC,SAAS,IACR,EAAE,EAAC,WAAW,EACd,KAAK,EAAC,eAAe,EACrB,SAAS,EAAC,MAAM,EAChB,UAAU,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,GACrE,EACF,KAAC,SAAS,IACR,EAAE,EAAC,YAAY,EACf,KAAK,EAAC,YAAY,EAClB,SAAS,EAAC,MAAM,EAChB,UAAU,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,GACtC,IACM,CACX;gBACD,cAAc,EAAE,CACd,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,cAAc,EAAE,UAAU,EAAE,aACtF,KAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,uBAE1D,EACT,KAAC,MAAM,IAAC,OAAO,EAAE,cAAc,CAAC,eAAe,6BAEtC,IACL,CACP;aACF,CAAC,mCAGG,IACM,CAClB,CAAC;AAEF,MAAM,wBAAwB,GAAG,GAAG,EAAE,CAAC,CACrC,MAAC,cAAc,eACb,KAAC,gBAAgB,IAAC,UAAU,EAAE,EAAE,GAAI,EACpC,KAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC,YAAY,CAAC;gBAC1B,KAAK,EAAE,qBAAqB;gBAC5B,QAAQ,EAAE,CACR,MAAC,OAAO,IAAC,KAAK,EAAC,aAAa,aAC1B,YAAG,KAAK,EAAE,EAAE,MAAM,EAAE,2BAA2B,EAAE,kDAE7C,EACJ,KAAC,MAAM,IACL,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC,YAAY,CAAC;gCAC1B,KAAK,EAAE,iBAAiB;gCACxB,QAAQ,EAAE,CACR,8BACE,KAAC,SAAS,IACR,EAAE,EAAC,iBAAiB,EACpB,KAAK,EAAC,iBAAiB,EACvB,SAAS,EAAC,MAAM,EAChB,UAAU,EAAE,EAAE,YAAY,EAAE,2BAA2B,EAAE,GACzD,EACF,KAAC,SAAS,IACR,EAAE,EAAC,kBAAkB,EACrB,KAAK,EAAC,OAAO,EACb,SAAS,EAAC,QAAQ,EAClB,UAAU,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,GACpD,EACF,KAAC,SAAS,IACR,EAAE,EAAC,kBAAkB,EACrB,KAAK,EAAC,OAAO,EACb,SAAS,EAAC,UAAU,EACpB,UAAU,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,GAC1C,IACD,CACJ;gCACD,cAAc,EAAE,CACd,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,cAAc,EAAE,UAAU,EAAE,aACtF,KAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,uBAE1D,EACT,KAAC,MAAM,IAAC,OAAO,EAAE,cAAc,CAAC,eAAe,qBAEtC,IACL,CACP;6BACF,CAAC,uCAGG,IACD,CACX;aACF,CAAC,kCAGG,IACM,CAClB,CAAC;AAEF,MAAM,sBAAsB,GAAG,GAAG,EAAE,CAAC,CACnC,MAAC,cAAc,eACb,KAAC,gBAAgB,IAAC,UAAU,EAAE,EAAE,GAAI,EACpC,KAAC,MAAM,IACL,OAAO,EAAE,GAAG,EAAE,CACZ,cAAc,CAAC,YAAY,CAAC;gBAC1B,KAAK,EAAE,kBAAkB;gBACzB,cAAc,EAAE,IAAI;gBACpB,QAAQ,EAAE,CACR,2DAEG,GAAG,EACJ,4CAA6B,EAC5B,GAAG,2CAGF,CACL;gBACD,cAAc,EAAE,CACd,eAAK,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,sBAAsB,EAAE,cAAc,EAAE,UAAU,EAAE,aACtF,KAAC,MAAM,IAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,uBAE1D,EACT,KAAC,MAAM,IAAC,OAAO,EAAC,qBAAqB,EAAC,OAAO,EAAE,cAAc,CAAC,eAAe,6BAEpE,IACL,CACP;aACF,CAAC,6BAGG,IACM,CAClB,CAAC;AAEF,8EAA8E;AAC9E,UAAU;AACV,8EAA8E;AAE9E,MAAM,CAAC,MAAM,OAAO,GAAU,eAAe,CAC3C;IACE,MAAM,EAAE,eAAe;IACvB,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;QAC3B,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Bf,CAAC,IAAI,EAAE;aACC;SACF;KACF;CACF,EACD;IACE,kEAAkE;IAClE,wHAAwH;IACxH,iGAAiG;CAClG,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAU,eAAe,CACrD;IACE,MAAM,EAAE,yBAAyB;IACjC,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;QAC3B,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCf,CAAC,IAAI,EAAE;aACC;SACF;KACF;CACF,EACD;IACE,sEAAsE;IACtE,wHAAwH;CACzH,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAU,eAAe,CACrD;IACE,MAAM,EAAE,wBAAwB;IAChC,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;QAC3B,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Cf,CAAC,IAAI,EAAE;aACC;SACF;KACF;CACF,EACD;IACE,yFAAyF;IACzF,6FAA6F;IAC7F,2EAA2E;CAC5E,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAU,eAAe,CAClD;IACE,MAAM,EAAE,sBAAsB;IAC9B,UAAU,EAAE;QACV,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;QAC3B,IAAI,EAAE;YACJ,MAAM,EAAE;gBACN,QAAQ,EAAE,KAAK;gBACf,IAAI,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCf,CAAC,IAAI,EAAE;aACC;SACF;KACF;CACF,EACD;IACE,6GAA6G;IAC7G,wGAAwG;CACzG,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC"}
1
+ {"version":3,"file":"SlideoverManager.stories.js","sourceRoot":"","sources":["../../../src/components/slideoverManager/SlideoverManager.stories.tsx"],"names":[],"mappings":"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"}
package/dist/index.css CHANGED
@@ -3752,7 +3752,7 @@ h4.ds-heading, h4.ds-heading .ds-heading__inner-container, h4 .ds-editable-text_
3752
3752
  align-items: stretch;
3753
3753
  transition: right 300ms ease;
3754
3754
  }
3755
- .ds-slideover--initial {
3755
+ .ds-slideover--initial, .ds-slideover--closing {
3756
3756
  right: -580px;
3757
3757
  }
3758
3758
  .ds-slideover__header {
@@ -3771,6 +3771,11 @@ h4.ds-heading, h4.ds-heading .ds-heading__inner-container, h4 .ds-editable-text_
3771
3771
  justify-content: center;
3772
3772
  gap: var(--slideover-header-spacing-padding);
3773
3773
  }
3774
+ .ds-slideover__header-actions {
3775
+ display: flex;
3776
+ align-items: center;
3777
+ gap: var(--slideover-header-spacing-padding);
3778
+ }
3774
3779
  .ds-slideover__contents {
3775
3780
  flex-grow: 1;
3776
3781
  overflow-y: scroll;
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/index.scss","../node_modules/react-day-picker/src/style.css","../node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.mixin.scss","../node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.mixin.scss","../node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.mixin.scss","../node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.scss","../node_modules/govuk-frontend/dist/govuk/objects/_grid.mixin.scss","../node_modules/govuk-frontend/dist/govuk/helpers/_grid.scss","../src/tokens.scss","../src/global.scss","../src/components/breadcrumbs/breadcrumbs.scss","../src/components/button/button.scss","../src/components/icon/icon.scss","../src/components/iconText/iconText.scss","../src/components/heading/heading.scss","../src/components/link/link.scss","../src/components/card/card.scss","../src/components/articleCard/articleCard.scss","../src/components/dropdown/dropdown.scss","../src/components/formField/formField.scss","../src/components/formField/fieldset/fieldset.scss","../src/components/formField/inputs/input.scss","../src/components/formField/label/label.scss","../src/components/formField/inputs/number/numberInput.scss","../src/components/formField/inputs/time/timeInput.scss","../src/components/formField/inputs/singleFile/singleFileInput.scss","../src/components/formField/inputs/radio/radioButtonInput.scss","../src/components/formField/inputs/checkbox/checkboxInput.scss","../src/components/formField/inputs/selectDropdown/selectDropdown.scss","../src/components/formField/inputs/colourPickerDropdown/colourPickerDropdown.scss","../src/components/tag/tag.scss","../src/components/tagList/tagList.scss","../src/components/filterBar/filterBar.scss","../src/components/dot/dot.scss","../src/components/badge/badge.scss","../src/components/pill/pill.scss","../src/components/section/section.scss","../src/components/tabs/tabs.scss","../src/components/slideoverManager/slideoverManager.scss","../src/components/slideover/slideover.scss","../src/components/table/table.scss","../src/components/searchBar/searchBar.scss","../src/components/table/cellEditors/numberCellEditor.scss","../src/components/table/pagination/pagination.scss","../src/components/tooltip/tooltip.scss","../src/components/separator/separator.scss","../src/components/modal/modal.scss","../src/components/modal/modalManager/modalManager.scss","../src/components/table/columnFilters/columnFilters.scss","../src/components/banner/banner.scss","../src/components/editableText/editableText.scss","../src/components/progress/progress.scss","../src/components/kpiCard/kpiCard.scss","../src/components/kvpList/kvpList.scss","../src/components/toast/toast.scss","../src/components/datePicker/datePicker.scss","../src/components/datePicker/date-field-hint.scss","../src/components/dateTimePicker/dateTimePicker.scss","../src/components/avatar/avatar.scss","../src/components/singleUser/singleUser.scss","../src/components/avatarGroup/avatarGroup.scss","../src/components/userDropdown/userDropdown.scss","../src/components/table/cellRenderers/booleanCellRenderer.scss","../src/components/row/row.scss","../src/components/combobox/combobox.scss","../src/components/toggle/toggle.scss","../src/components/toggleGroup/toggleGroup.scss","../src/components/dataViewCard/dataViewCard.scss","../src/components/treeRow/treeRow.scss","../src/components/favourite/favouriteButton.scss","../src/components/emptyState/emptyState.scss","../src/components/widget/widget.scss","../src/components/widgetNotifications/widgetNotifications.scss","../src/components/widgetCalendar/widgetCalendar.scss","../src/components/widgetFavourites/widgetFavourites.scss","../src/components/sidebar/sidebar.scss","../src/components/sideNavigation/sideNavigation.scss","../src/components/fileUpload/fileUpload.scss","../src/components/skeleton/skeleton.scss"],"names":[],"mappings":"AA0EQ;AC1ER;AACA;EACE;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;AAAA;AAAA;AAAA;AAAA,KAIG;EACH;EAEA;AAAA;AAAA;AAAA;AAAA,KAIG;EACH;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EAEA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AACA;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EAEA;EACA;EACA;EAEA;EACA;;;AAGF;EACE;AACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;EAEA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAEF;EACE;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EAEA;EACA;EAEA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AChcA;EAGM;EAAA;EAAA;;;ACDN;EACE;;;ACFF;EAGM;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;;AAGF;EANJ;IAQM;;;;ACNN;EACE;EACA;EACA;;ACNF;EAEE;EACA;;;AAIA;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ACtD/C;AACA;AAAA;AAAA;AAIC;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACh5CF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;AAAA;EAEE;EACA;EACA;EACA;;;AAOF;EAAmB;;;AACnB;EAAyB;;;AC1CzB;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;;AAIJ;EACE;EACA;EACA;EACA;;AAKA;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAIA;EACE;;;ACzJN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAIF;EACE;;AAEA;EACE;EACA;;AAIJ;EACE;;AAEA;EACE;EACA;;AAKJ;EACE;EACA;;AAKF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAMJ;EACE;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;AAMJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;;AAIF;EACE;EACA;EACA;;;ACtPJ;EACI;;;ACDJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AChCF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AClDJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACvBJ;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGE;EACE;;AAGF;EACE;;AAKN;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AChEF;EACE;;AAEA;EACE;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EAEE;;;AAIJ;EACE;EACA;;;ACrCF;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;;AAIA;EACI;;AAEA;EACI;EACA;;AAIR;EACI;;;ACnER;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;AAEA;EACE;;;AC5CZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACbJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAIF;EACE;;AAGF;EACE;;AAIF;EACE;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;AAKN;EACE;;;ACpEF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;;ACPJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;ACvEN;EACE;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC9BJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;ACfF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAIA;EACE;;AAIJ;EACE;;AAIA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;;;ACrGN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAIA;EACE;;AAxFN;AA4FE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;;ACnGJ;EACE;EACA;;AAEE;EACE;EACA;EACA;;AAGJ;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AC3BA;EACI;;;AAKR;EACI;EACA;EACA;;;ACVJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;AC1KJ;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACtDF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EAEE;EACA;;AAIJ;EACE;;AAEA;EACE;;AAGF;EAEE;;AAIJ;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;IACE;;;AC5IJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;;AChCJ;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;ACnFJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;;;ACnDJ;EACE;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAIA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAKF;EACE;;;ACrCR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAGE;EACE;;AAKN;EACE;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;;ACpFN;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACVJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIA;EACE;EACA;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AClDA;EACE;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;;AAGF;EACE;;AAGF;EACE;;AAKF;EAGE;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EAEE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAKN;EACE;;;AAIJ;EACE;;;AC9IF;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEA;EACI;;AAEA;EACI;;AAIR;EACI;EACA;;AAKZ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACI;;AAEA;EACI;;AAIR;EACI;;;ACxFZ;EACE;;;AAGF;EACE;;AAEA;EACE;;;ACRJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;;AClBJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;;ACRZ;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;;ACXF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;;ACpEJ;EACI;EACA;;;ACFJ;EACI;EACA;EACA;EACA;EACA;EAGA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;;AC9DR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;;AChEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;;ACnDR;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;;ACXJ;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;ACjCF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;;AC5DN;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;;AC9GZ;EACE;EACA;;ACDA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAGF;EAEE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAQJ;EACE;EACA;EACA;;AAEA;EACE;;AAKF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAQJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AD1FJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;;AC0DF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAKF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;;;AClJN;EACE;EACA;;ADDA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAGF;EAEE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAQJ;EACE;EACA;EACA;;AAEA;EACE;;AAKF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAQJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AC1FJ;EACE;;;ACbF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;;ACpEJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACZF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AC5BF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;AAAA;AAAA;EAGE;;AAGF;EACE;;AAKJ;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;AAAA;AAAA;EAGE;;AAGF;EACE;;;AAON;EACE;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;EACA;;;AAKJ;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;ACvXF;EACI;EACA;EACA;EACA;EACA;;;ACLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAIA;EACI;;AAGF;EACE;;AAGF;EACE;;AAKN;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;;AC5EJ;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAIF;EACE;;AAEA;EACE;;;AAKJ;EACE;EACA;EACA;EACA;EAIA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;;;AAeJ;EACE;EACA;EACA;EACA;;AAEA;EAhBA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAYE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAKJ;EACE;EACA;;;AAIF;EA9CE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA0CA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAIF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;;;AAKF;EACE;;;AAIF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;;AC1ZJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;;AAIA;EAGE;;AAGF;EACE;;AAEA;EAGE;;AAKN;EACE;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAEA;EACE;;;AC9IV;EACE;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAEA;EAEE;EACA;;;ACtCR;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AC9BF;EACE;;;AAGF;EACE;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;;AAII;EACE;;AAGF;EACE;EACA;;;AAQV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAKE;EACE;;AAGF;EACE;;;AAKN;EACE;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;;ACnIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAIE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;ACnCF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AC7DF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;;;ACvNJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAGF;EAEE;EAEA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;AAAA;EAEE;;AAIJ;EACE;EAEA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAGF;EAEE;EAEA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;AAAA;EAEE;;;AAKN;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACvLJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAEA;EACE;;AAGF;EACE;;AAIJ;EACE;EACA;;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AC1JF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EAIE;;AAGF;EACE;;AAGF;EAIE;;AAIJ;EAKE;;AAEA;EACE;;AAIJ;EAEE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACxFJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAKE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;AAEA;EAKE;EACA;;;AAIJ;EACE;EACA;EACA;;;AC/DF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACtLF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;;AAEA;EACE;;;ACrER;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE","file":"index.css"}
1
+ {"version":3,"sourceRoot":"","sources":["../src/index.scss","../node_modules/react-day-picker/src/style.css","../node_modules/govuk-frontend/dist/govuk/custom-properties/_breakpoints.mixin.scss","../node_modules/govuk-frontend/dist/govuk/custom-properties/_frontend-version.mixin.scss","../node_modules/govuk-frontend/dist/govuk/custom-properties/_functional-colours.mixin.scss","../node_modules/govuk-frontend/dist/govuk/helpers/_clearfix.scss","../node_modules/govuk-frontend/dist/govuk/objects/_grid.mixin.scss","../node_modules/govuk-frontend/dist/govuk/helpers/_grid.scss","../src/tokens.scss","../src/global.scss","../src/components/breadcrumbs/breadcrumbs.scss","../src/components/button/button.scss","../src/components/icon/icon.scss","../src/components/iconText/iconText.scss","../src/components/heading/heading.scss","../src/components/link/link.scss","../src/components/card/card.scss","../src/components/articleCard/articleCard.scss","../src/components/dropdown/dropdown.scss","../src/components/formField/formField.scss","../src/components/formField/fieldset/fieldset.scss","../src/components/formField/inputs/input.scss","../src/components/formField/label/label.scss","../src/components/formField/inputs/number/numberInput.scss","../src/components/formField/inputs/time/timeInput.scss","../src/components/formField/inputs/singleFile/singleFileInput.scss","../src/components/formField/inputs/radio/radioButtonInput.scss","../src/components/formField/inputs/checkbox/checkboxInput.scss","../src/components/formField/inputs/selectDropdown/selectDropdown.scss","../src/components/formField/inputs/colourPickerDropdown/colourPickerDropdown.scss","../src/components/tag/tag.scss","../src/components/tagList/tagList.scss","../src/components/filterBar/filterBar.scss","../src/components/dot/dot.scss","../src/components/badge/badge.scss","../src/components/pill/pill.scss","../src/components/section/section.scss","../src/components/tabs/tabs.scss","../src/components/slideoverManager/slideoverManager.scss","../src/components/slideover/slideover.scss","../src/components/table/table.scss","../src/components/searchBar/searchBar.scss","../src/components/table/cellEditors/numberCellEditor.scss","../src/components/table/pagination/pagination.scss","../src/components/tooltip/tooltip.scss","../src/components/separator/separator.scss","../src/components/modal/modal.scss","../src/components/modal/modalManager/modalManager.scss","../src/components/table/columnFilters/columnFilters.scss","../src/components/banner/banner.scss","../src/components/editableText/editableText.scss","../src/components/progress/progress.scss","../src/components/kpiCard/kpiCard.scss","../src/components/kvpList/kvpList.scss","../src/components/toast/toast.scss","../src/components/datePicker/datePicker.scss","../src/components/datePicker/date-field-hint.scss","../src/components/dateTimePicker/dateTimePicker.scss","../src/components/avatar/avatar.scss","../src/components/singleUser/singleUser.scss","../src/components/avatarGroup/avatarGroup.scss","../src/components/userDropdown/userDropdown.scss","../src/components/table/cellRenderers/booleanCellRenderer.scss","../src/components/row/row.scss","../src/components/combobox/combobox.scss","../src/components/toggle/toggle.scss","../src/components/toggleGroup/toggleGroup.scss","../src/components/dataViewCard/dataViewCard.scss","../src/components/treeRow/treeRow.scss","../src/components/favourite/favouriteButton.scss","../src/components/emptyState/emptyState.scss","../src/components/widget/widget.scss","../src/components/widgetNotifications/widgetNotifications.scss","../src/components/widgetCalendar/widgetCalendar.scss","../src/components/widgetFavourites/widgetFavourites.scss","../src/components/sidebar/sidebar.scss","../src/components/sideNavigation/sideNavigation.scss","../src/components/fileUpload/fileUpload.scss","../src/components/skeleton/skeleton.scss"],"names":[],"mappings":"AA0EQ;AC1ER;AACA;EACE;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;AAAA;AAAA;AAAA;AAAA,KAIG;EACH;EAEA;AAAA;AAAA;AAAA;AAAA,KAIG;EACH;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EAEA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;AACA;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EAEA;EACA;EACA;EAEA;EACA;;;AAGF;EACE;AACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;;;AAGF;AAAA;AAAA;AAAA;EAIE;EAEA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAEF;EACE;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EAEA;EACA;EAEA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;AACA;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;IACE;;EAEF;IACE;;;AAIJ;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AAIF;EACE;;;AChcA;EAGM;EAAA;EAAA;;;ACDN;EACE;;;ACFF;EAGM;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;EAAA;;AAGF;EANJ;IAQM;;;;ACNN;EACE;EACA;EACA;;ACNF;EAEE;EACA;;;AAIA;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADzC3C;EC0CF;EAEE;EAEF;;AACA;ED/CE;ICgDA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ADhC3C;ECiCF;EAIA;;AACA;EDtCE;ICuCA;IACA,OAR2C;;;;ACtD/C;AACA;AAAA;AAAA;AAIC;EACC;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACh5CF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;AAAA;EAEE;EACA;EACA;EACA;;;AAOF;EAAmB;;;AACnB;EAAyB;;;AC1CzB;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;;AAIJ;EACE;EACA;EACA;EACA;;AAKA;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAMR;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAIA;EACE;;;ACzJN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAIF;EACE;;AAEA;EACE;EACA;;AAIJ;EACE;;AAEA;EACE;EACA;;AAKJ;EACE;EACA;;AAKF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAMJ;EACE;AAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;AAMJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAKJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;;AAGF;EACE;;AAIF;EACE;EACA;EACA;;;ACtPJ;EACI;;;ACDJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AChCF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AAKF;EACE;EACA;EACA;EACA;;;AClDJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACvBJ;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGE;EACE;;AAGF;EACE;;AAKN;EACE;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AChEF;EACE;;AAEA;EACE;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EAEE;;;AAIJ;EACE;EACA;;;ACrCF;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;;AAIR;EACI;EACA;EACA;;;AAIA;EACI;;AAEA;EACI;EACA;;AAIR;EACI;;;ACnER;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;AAEA;EACE;;;AC5CZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;;;ACbJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAIF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAIF;EACE;;AAGF;EACE;;AAIF;EACE;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;;AAKN;EACE;;;ACpEF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;;ACPJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;ACvEN;EACE;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AC9BJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;ACfF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAIA;EACE;;AAIJ;EACE;;AAIA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;;;ACrGN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAIA;EACE;;AAxFN;AA4FE;;AACA;EACE;EACA;EACA;EACA;EACA;EACA;;;ACnGJ;EACE;EACA;;AAEE;EACE;EACA;EACA;;AAGJ;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AC3BA;EACI;;;AAKR;EACI;EACA;EACA;;;ACVJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;;AAIJ;EACE;;AAEA;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;AC1KJ;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACtDF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EAEE;EACA;;AAIJ;EACE;;AAEA;EACE;;AAGF;EAEE;;AAIJ;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;IACE;;;AC5IJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;;AChCJ;EACE;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;ACnFJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAGF;EACE;EACA;;;ACnDJ;EACE;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAIA;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAKF;EACE;;;ACrCR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAGE;EACE;;AAKN;EACE;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;;ACpFN;EACE;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;ACVJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIA;EACE;EACA;;AAKN;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;ACzDA;EACE;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACE;;AAGF;EACE;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAIJ;EACE;;AAGF;EACE;;AAGF;EACE;;AAKF;EAGE;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EAEE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EAEE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;EACA;;AAKN;EACE;;;AAIJ;EACE;;;AC9IF;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEA;EACI;;AAEA;EACI;;AAIR;EACI;EACA;;AAKZ;EACI;EACA;EACA;;AAEA;EACI;EACA;;AAIR;EACI;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACI;;AAEA;EACI;;AAIR;EACI;;;ACxFZ;EACE;;;AAGF;EACE;;AAEA;EACE;;;ACRJ;EACI;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;;;AClBJ;EACI;EACA;EACA;EACA;;AAEA;EACI;;;ACRZ;EACE;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;EACA;;;ACXF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;;ACpEJ;EACI;EACA;;;ACFJ;EACI;EACA;EACA;EACA;EACA;EAGA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;;AC9DR;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;AAIA;EACE;;AAFJ;EAKE;EACA;EACA;;;AChEJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;;ACnDR;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;;ACXJ;EACE;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;ACjCF;EACE;EACA;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAEA;EACE;;;AC5DN;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAIJ;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EACI;;;AC9GZ;EACE;EACA;;ACDA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAGF;EAEE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAQJ;EACE;EACA;EACA;;AAEA;EACE;;AAKF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAQJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AD1FJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;;;AC0DF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAKF;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAIJ;EACE;EACA;;AAGF;EACE;EACA;;;AClJN;EACE;EACA;;ADDA;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAIJ;EACE;EACA;EACA;;AAGF;EAEE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EAGA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;;AAQJ;EACE;EACA;EACA;;AAEA;EACE;;AAKF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAQJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AC1FJ;EACE;;;ACbF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGA;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;;;ACpEJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACZF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AC5BF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAIF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;AAAA;AAAA;EAGE;;AAGF;EACE;;AAKJ;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;AAAA;AAAA;EAGE;;AAGF;EACE;;;AAON;EACE;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;EACA;;AAGF;EACE;EACA;;;AAKJ;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAEE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;ACvXF;EACI;EACA;EACA;EACA;EACA;;;ACLJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGA;EACE;;AAIJ;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAIA;EACI;;AAGF;EACE;;AAGF;EACE;;AAKN;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;EACA;EACA;;;AC5EJ;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;EACA;;AAIJ;EACE;EACA;EACA;EACA;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;;;AAIF;EACE;;AAEA;EACE;;;AAKJ;EACE;EACA;EACA;EACA;EAIA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;;;AAeJ;EACE;EACA;EACA;EACA;;AAEA;EAhBA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAYE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAKJ;EACE;EACA;;;AAIF;EA9CE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EA0CA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAIF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAIF;EACE;EACA;;;AAKF;EACE;;;AAIF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAIF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;;AC1ZJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAIJ;EACE;;AAIA;EAGE;;AAGF;EACE;;AAEA;EAGE;;AAKN;EACE;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAKN;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAEA;EACE;;AAIJ;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;;AAEA;EACE;;;AC9IV;EACE;EACA;EACA;EACA;EACA;EACA;;AAGE;EACE;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAEA;EAEE;EACA;;AAIJ;EACE;EACA;;AAEA;EAEE;EACA;;;ACtCR;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AC9BF;EACE;;;AAGF;EACE;EACA;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAEA;EACE;;AAIJ;EACE;;AAII;EACE;;AAGF;EACE;EACA;;;AAQV;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAKE;EACE;;AAGF;EACE;;;AAKN;EACE;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;IACE;;EAGF;IACE;;;ACnIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAIE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;ACnCF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;;;AC7DF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;AAEA;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;EACA;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;IACE;;EAGF;IACE;;;ACvNJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAGF;EAEE;EAEA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;AAAA;EAEE;;AAIJ;EACE;EAEA;EACA;EACA;;AAEA;EACE;EAEA;EACA;EACA;;AAGF;EAEE;EAEA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;;AAGF;AAAA;EAEE;;;AAKN;EACE;EACA;EACA;EACA;;;AAGF;AAAA;EAEE;EACA;EACA;EACA;;;AAGF;EACE;EACA;;AAEA;EACE;;AAGF;EACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACvLJ;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAEA;EACE;;AAEA;EACE;;AAGF;EACE;;AAIJ;EACE;EACA;;;AAKN;EACE;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;;AAIJ;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AC1JF;EACE;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;;AAEA;EACE;EACA;EACA;;AAEA;EAIE;;AAGF;EACE;;AAGF;EAIE;;AAIJ;EAKE;;AAEA;EACE;;AAIJ;EAEE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;ACxFJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EAKE;EACA;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;AAEA;EAKE;EACA;;;AAIJ;EACE;EACA;EACA;;;AC/DF;EACE;EACA;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;AAAA;EAEE;EACA;EACA;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EACA;;;AAGF;EACE;;;AAGF;EACE;EACA;;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE;;AAGF;EACE;;AAGF;EACE;EACA;;;AAIJ;EACE;;;AAGF;EACE;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;ACtLF;EACE;EACA;EACA;;AAEA;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;;AAGF;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;EACA;EACA;EACA;;AAGF;EACE;;AAGF;EACE;EACA;EACA;;AAGF;EACE;;AAEA;EACE;;AAEA;EACE;;;ACrER;EACE;IACE;;EAGF;IACE;;;AAIJ;EACE;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACE","file":"index.css"}
@@ -1,7 +1,9 @@
1
1
  import type { SlideoverProps } from '../components/slideover/Slideover.js';
2
+ type ManagedSlideoverProps = Omit<SlideoverProps, 'isClosing' | 'onCloseTransitionEnd'>;
2
3
  export declare const SlideoverUtils: {
3
- addSlideover: (slideoverConfig: SlideoverProps) => void;
4
+ addSlideover: (slideoverConfig: ManagedSlideoverProps) => void;
4
5
  removeSlideover: () => void;
5
6
  removeAllSlideovers: () => void;
6
7
  };
8
+ export {};
7
9
  //# sourceMappingURL=SlideoverUtils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"SlideoverUtils.d.ts","sourceRoot":"","sources":["../../src/utils/SlideoverUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAIrE,eAAO,MAAM,cAAc;oCACO,cAAc;;;CAG/C,CAAC"}
1
+ {"version":3,"file":"SlideoverUtils.d.ts","sourceRoot":"","sources":["../../src/utils/SlideoverUtils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAKrE,KAAK,qBAAqB,GAAG,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,sBAAsB,CAAC,CAAC;AAExF,eAAO,MAAM,cAAc;oCACO,qBAAqB;;;CAGtD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"SlideoverUtils.js","sourceRoot":"","sources":["../../src/utils/SlideoverUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY,EAAE,CAAC,eAA+B,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,eAAe,CAAC;IAC3G,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;IACjE,mBAAmB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;CAC3E,CAAC"}
1
+ {"version":3,"file":"SlideoverUtils.js","sourceRoot":"","sources":["../../src/utils/SlideoverUtils.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,MAAM,MAAM,aAAa,CAAC;AAKjC,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY,EAAE,CAAC,eAAsC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,eAAe,CAAC;IAClH,eAAe,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,gBAAgB,CAAC;IACjE,mBAAmB,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,qBAAqB,CAAC;CAC3E,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbor-education/design-system.components",
3
- "version": "4.3.0",
3
+ "version": "4.4.0",
4
4
  "description": "The component library for the design system (the baby)",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",
@@ -1,5 +1,5 @@
1
- import { expect, test, describe, vi } from 'vitest';
2
- import { render, screen, fireEvent } from '@testing-library/react';
1
+ import { expect, test, describe, vi, beforeEach, afterEach } from 'vitest';
2
+ import { render, screen, fireEvent, createEvent, act } from '@testing-library/react';
3
3
  import { Slideover } from './Slideover.js';
4
4
  import '@testing-library/jest-dom/vitest';
5
5
  import { SlideoverUtils } from 'Utils/SlideoverUtils';
@@ -10,7 +10,17 @@ vi.mock('Utils/SlideoverUtils', () => ({
10
10
  },
11
11
  }));
12
12
 
13
+ const fireTransitionEnd = (element: Element, propertyName: string) => {
14
+ const event = createEvent.transitionEnd(element);
15
+ Object.defineProperty(event, 'propertyName', { value: propertyName });
16
+ fireEvent(element, event);
17
+ };
18
+
13
19
  describe('Slideover', () => {
20
+ beforeEach(() => {
21
+ vi.mocked(SlideoverUtils.removeSlideover).mockClear();
22
+ });
23
+
14
24
  test('renders the title and children', () => {
15
25
  render(<Slideover title="My Test Slideover"><div>My Content</div></Slideover>);
16
26
  expect(screen.getByText('My Test Slideover')).toBeInTheDocument();
@@ -33,4 +43,144 @@ describe('Slideover', () => {
33
43
  fireEvent.click(backButton);
34
44
  expect(SlideoverUtils.removeSlideover).toHaveBeenCalled();
35
45
  });
46
+
47
+ describe('onBack', () => {
48
+ test('calls onBack instead of removeSlideover when provided', () => {
49
+ const onBack = vi.fn();
50
+ render(<Slideover onBack={onBack} />);
51
+
52
+ fireEvent.click(screen.getByRole('button', { name: /Back/i }));
53
+
54
+ expect(onBack).toHaveBeenCalledTimes(1);
55
+ expect(SlideoverUtils.removeSlideover).not.toHaveBeenCalled();
56
+ });
57
+ });
58
+
59
+ describe('backButtonText', () => {
60
+ test('labels the back button with backButtonText', () => {
61
+ render(<Slideover backButtonText="Yn ôl" />);
62
+ expect(screen.getByRole('button', { name: 'Yn ôl' })).toBeInTheDocument();
63
+ expect(screen.queryByRole('button', { name: 'Back' })).not.toBeInTheDocument();
64
+ });
65
+
66
+ test('defaults the label to Back', () => {
67
+ render(<Slideover />);
68
+ expect(screen.getByRole('button', { name: 'Back' })).toBeInTheDocument();
69
+ });
70
+ });
71
+
72
+ describe('headerActions', () => {
73
+ test('renders header actions in the header', () => {
74
+ render(<Slideover title="Student" headerActions={<button type="button">Edit</button>} />);
75
+ const header = screen.getByRole('heading', { name: 'Student' }).parentElement;
76
+ expect(header).toContainElement(screen.getByRole('button', { name: 'Edit' }));
77
+ });
78
+
79
+ test('renders no header actions container when headerActions is not provided', () => {
80
+ const { container } = render(<Slideover />);
81
+ expect(container.querySelector('.ds-slideover__header-actions')).not.toBeInTheDocument();
82
+ });
83
+ });
84
+
85
+ describe('closing', () => {
86
+ test('is not marked as closing by default', () => {
87
+ const { container } = render(<Slideover />);
88
+ expect(container.querySelector('.ds-slideover')).not.toHaveClass('ds-slideover--closing');
89
+ });
90
+
91
+ test('is marked as closing when isClosing is set', () => {
92
+ const { container } = render(<Slideover isClosing />);
93
+ expect(container.querySelector('.ds-slideover')).toHaveClass('ds-slideover--closing');
94
+ });
95
+
96
+ test('calls onCloseTransitionEnd when the closing slide-out finishes', () => {
97
+ const onCloseTransitionEnd = vi.fn();
98
+ const { container } = render(<Slideover isClosing onCloseTransitionEnd={onCloseTransitionEnd} />);
99
+
100
+ fireTransitionEnd(container.querySelector('.ds-slideover')!, 'right');
101
+
102
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
103
+ });
104
+
105
+ test('does not call onCloseTransitionEnd when the enter slide-in finishes', () => {
106
+ const onCloseTransitionEnd = vi.fn();
107
+ const { container } = render(<Slideover onCloseTransitionEnd={onCloseTransitionEnd} />);
108
+
109
+ fireTransitionEnd(container.querySelector('.ds-slideover')!, 'right');
110
+
111
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
112
+ });
113
+
114
+ describe('when the slide-out transition never runs', () => {
115
+ beforeEach(() => {
116
+ vi.useFakeTimers();
117
+ });
118
+
119
+ afterEach(() => {
120
+ vi.useRealTimers();
121
+ });
122
+
123
+ test('still calls onCloseTransitionEnd once the transition time has passed', () => {
124
+ const onCloseTransitionEnd = vi.fn();
125
+ render(<Slideover isClosing onCloseTransitionEnd={onCloseTransitionEnd} />);
126
+
127
+ act(() => {
128
+ vi.advanceTimersByTime(299);
129
+ });
130
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
131
+
132
+ act(() => {
133
+ vi.advanceTimersByTime(200);
134
+ });
135
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
136
+ });
137
+
138
+ test('calls onCloseTransitionEnd once when the transition does finish', () => {
139
+ const onCloseTransitionEnd = vi.fn();
140
+ const { container } = render(<Slideover isClosing onCloseTransitionEnd={onCloseTransitionEnd} />);
141
+
142
+ fireTransitionEnd(container.querySelector('.ds-slideover')!, 'right');
143
+ act(() => {
144
+ vi.advanceTimersByTime(1000);
145
+ });
146
+
147
+ expect(onCloseTransitionEnd).toHaveBeenCalledTimes(1);
148
+ });
149
+
150
+ test('does not call onCloseTransitionEnd if closing is cancelled first', () => {
151
+ const onCloseTransitionEnd = vi.fn();
152
+ const { rerender } = render(<Slideover isClosing onCloseTransitionEnd={onCloseTransitionEnd} />);
153
+
154
+ rerender(<Slideover onCloseTransitionEnd={onCloseTransitionEnd} />);
155
+ act(() => {
156
+ vi.advanceTimersByTime(1000);
157
+ });
158
+
159
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
160
+ });
161
+ });
162
+
163
+ test('ignores transitions of other properties and of child elements', () => {
164
+ const onCloseTransitionEnd = vi.fn();
165
+ const { container } = render(
166
+ <Slideover isClosing onCloseTransitionEnd={onCloseTransitionEnd}>
167
+ <div data-testid="child" />
168
+ </Slideover>,
169
+ );
170
+
171
+ fireTransitionEnd(container.querySelector('.ds-slideover')!, 'opacity');
172
+ fireTransitionEnd(screen.getByTestId('child'), 'right');
173
+
174
+ expect(onCloseTransitionEnd).not.toHaveBeenCalled();
175
+ });
176
+ });
177
+
178
+ describe('accessibility attributes', () => {
179
+ test('forwards role and aria attributes to the panel', () => {
180
+ render(<Slideover title="Student" role="dialog" aria-label="Student details" aria-modal />);
181
+ const panel = screen.getByRole('dialog', { name: 'Student details' });
182
+ expect(panel).toHaveAttribute('aria-modal', 'true');
183
+ expect(panel).toHaveClass('ds-slideover');
184
+ });
185
+ });
36
186
  });
@@ -3,18 +3,26 @@ import { Button } from 'Components/button/Button';
3
3
  import { Heading } from 'Components/heading/Heading';
4
4
  import type { IconName } from 'Components/icon/allowedIcons';
5
5
  import { Icon } from 'Components/icon/Icon';
6
- import { useState, type ReactNode } from 'react';
6
+ import { useEffect, useRef, useState, type HTMLAttributes, type ReactNode, type TransitionEvent } from 'react';
7
7
  import { useComponentDidMount } from 'Utils/hooks/useComponentDidMount';
8
8
  import { SlideoverUtils } from 'Utils/SlideoverUtils';
9
9
 
10
+ // just over the 300ms transition in slideover.scss
11
+ const CLOSE_TRANSITION_FALLBACK_MS = 400;
12
+
10
13
  export type SlideoverProps = {
11
14
  title?: string;
12
15
  children?: ReactNode;
13
16
  footerContents?: ReactNode;
14
17
  headerIcon?: IconName;
18
+ headerActions?: ReactNode;
15
19
  centerHeaderText?: boolean;
16
20
  hideBackButton?: boolean;
17
- };
21
+ backButtonText?: string;
22
+ onBack?: () => void;
23
+ isClosing?: boolean;
24
+ onCloseTransitionEnd?: () => void;
25
+ } & Omit<HTMLAttributes<HTMLElement>, 'title' | 'children' | 'className' | 'onTransitionEnd'>;
18
26
 
19
27
  export const Slideover = (props: SlideoverProps) => {
20
28
  const {
@@ -22,8 +30,14 @@ export const Slideover = (props: SlideoverProps) => {
22
30
  children,
23
31
  footerContents,
24
32
  headerIcon,
33
+ headerActions,
25
34
  centerHeaderText = true,
26
35
  hideBackButton,
36
+ backButtonText = 'Back',
37
+ onBack = SlideoverUtils.removeSlideover,
38
+ isClosing = false,
39
+ onCloseTransitionEnd,
40
+ ...rest
27
41
  } = props;
28
42
 
29
43
  const [isFirstRender, setIsFirstRender] = useState(true);
@@ -32,19 +46,51 @@ export const Slideover = (props: SlideoverProps) => {
32
46
  setIsFirstRender(false);
33
47
  });
34
48
 
49
+ const hasFinishedClosingRef = useRef(false);
50
+ const onCloseTransitionEndRef = useRef(onCloseTransitionEnd);
51
+ onCloseTransitionEndRef.current = onCloseTransitionEnd;
52
+
53
+ const finishClosing = () => {
54
+ if (hasFinishedClosingRef.current) {
55
+ return;
56
+ }
57
+ hasFinishedClosingRef.current = true;
58
+ onCloseTransitionEndRef.current?.();
59
+ };
60
+
61
+ // transitionend does not fire if the slide-out never runs, so also finish on a timer
62
+ useEffect(() => {
63
+ if (!isClosing) {
64
+ hasFinishedClosingRef.current = false;
65
+ return;
66
+ }
67
+ const timeout = setTimeout(finishClosing, CLOSE_TRANSITION_FALLBACK_MS);
68
+ return () => clearTimeout(timeout);
69
+ }, [isClosing]);
70
+
71
+ const handleTransitionEnd = (event: TransitionEvent<HTMLElement>) => {
72
+ if (isClosing && event.target === event.currentTarget && event.propertyName === 'right') {
73
+ finishClosing();
74
+ }
75
+ };
76
+
35
77
  return (
36
- <aside className={classNames('ds-slideover',
37
- {
38
- 'ds-slideover--initial': isFirstRender,
39
- },
40
- )}
78
+ <aside
79
+ {...rest}
80
+ className={classNames('ds-slideover',
81
+ {
82
+ 'ds-slideover--initial': isFirstRender,
83
+ 'ds-slideover--closing': isClosing,
84
+ },
85
+ )}
86
+ onTransitionEnd={handleTransitionEnd}
41
87
  >
42
88
  <div className={classNames('ds-slideover__header', { 'ds-slideover__header--center': centerHeaderText })}>
43
89
  {
44
90
  !hideBackButton && (
45
- <Button variant="tertiary" onClick={SlideoverUtils.removeSlideover}>
91
+ <Button variant="tertiary" onClick={() => onBack()}>
46
92
  <Icon name="chevrons-left" />
47
- Back
93
+ {backButtonText}
48
94
  </Button>
49
95
  )
50
96
  }
@@ -52,6 +98,7 @@ export const Slideover = (props: SlideoverProps) => {
52
98
  {title}
53
99
  {headerIcon && <Icon name={headerIcon} />}
54
100
  </Heading>
101
+ {headerActions && <div className="ds-slideover__header-actions">{headerActions}</div>}
55
102
  </div>
56
103
 
57
104
  <div className="ds-slideover__contents">{children}</div>
@@ -9,7 +9,8 @@
9
9
  align-items: stretch;
10
10
  transition: right 300ms ease;
11
11
 
12
- &--initial {
12
+ &--initial,
13
+ &--closing {
13
14
  right: -580px;
14
15
  }
15
16
 
@@ -34,6 +35,12 @@
34
35
  }
35
36
  }
36
37
 
38
+ &__header-actions {
39
+ display: flex;
40
+ align-items: center;
41
+ gap: var(--slideover-header-spacing-padding);
42
+ }
43
+
37
44
  &__contents {
38
45
  flex-grow: 1;
39
46
  overflow-y: scroll;
@@ -11,6 +11,10 @@ import { SlideoverUtils } from 'Utils/SlideoverUtils';
11
11
  import { Button } from 'Components/button/Button';
12
12
  import { FormField } from 'Components/formField/FormField';
13
13
  import { Section } from 'Components/section/Section';
14
+ import { Slideover } from 'Components/slideover/Slideover';
15
+ import { Icon } from 'Components/icon/Icon';
16
+ import { useState } from 'react';
17
+ import { fn } from 'storybook/test';
14
18
 
15
19
  // ---------------------------------------------------------------------------
16
20
  // Docs page content
@@ -49,8 +53,15 @@ const USAGE_GUIDANCE = [
49
53
  '| `children` | `ReactNode` | — | Main scrollable content |',
50
54
  '| `footerContents` | `ReactNode` | — | Sticky footer — use for primary actions (Save / Cancel) |',
51
55
  '| `headerIcon` | `IconName` | — | Icon rendered next to the title |',
56
+ '| `headerActions` | `ReactNode` | — | Actions rendered at the end of the header, e.g. an Edit button |',
52
57
  '| `centerHeaderText` | `boolean` | `true` | Whether the header text is centred |',
53
58
  '| `hideBackButton` | `boolean` | — | Hides the Back chevron button in the header |',
59
+ '| `backButtonText` | `string` | `\'Back\'` | Label for the Back button — pass a translated string |',
60
+ '| `onBack` | `() => void` | `SlideoverUtils.removeSlideover` | Replaces what the Back button does, e.g. to confirm unsaved changes before closing |',
61
+ '| `isClosing` | `boolean` | `false` | Plays the slide-out transition. Keep the panel mounted until `onCloseTransitionEnd` fires |',
62
+ '| `onCloseTransitionEnd` | `() => void` | — | Called once the slide-out transition started by `isClosing` has finished |',
63
+ '',
64
+ 'Any other HTML attribute (`role`, `aria-label`, `aria-modal`, `id`, …) is forwarded to the panel\'s `<aside>` element.',
54
65
  '',
55
66
  '---',
56
67
  '',
@@ -118,9 +129,22 @@ const DEVELOPER_NOTES = [
118
129
  '',
119
130
  '### Accessibility',
120
131
  '',
121
- '- The overlay dims the background and traps focus inside the active slideover panel.',
122
- '- The Back button is keyboard accessible and labelled.',
123
- '- Ensure the `title` prop is always set — it is the visible and accessible heading for the panel.',
132
+ '- The overlay dims the background. It does **not** trap focus, move focus into the panel on open, or close on Escape — consumers that need modal behaviour must provide it.',
133
+ '- The panel renders as an `<aside>`. Pass `role="dialog"`, `aria-modal` and an `aria-label` when the slideover is used as a dialog.',
134
+ '- The Back button is keyboard accessible and labelled. Pass `backButtonText` to translate it.',
135
+ '- Ensure the `title` prop is always set — it is the visible heading for the panel.',
136
+ ].join('\n');
137
+
138
+ const CUSTOM_BEHAVIOUR_NOTES = [
139
+ '### Intercepting Back',
140
+ '',
141
+ 'By default the Back button pops the top panel. Pass `onBack` to run your own logic first — for example, asking the user to confirm before unsaved changes are lost — and call `SlideoverUtils.removeSlideover()` yourself when it is safe to close.',
142
+ '',
143
+ '### Animating a panel out',
144
+ '',
145
+ 'Panels slide in on mount. To slide one out, set `isClosing` and remove it from your stack in `onCloseTransitionEnd`. This is for consumers rendering `Slideover` from their own stack; `SlideoverUtils.addSlideover` does not accept these props, because `SlideoverManager` cannot update a panel once it is added.',
146
+ '',
147
+ '`onCloseTransitionEnd` fires when the slide-out finishes, or after a short fallback delay if no transition runs (for example when the panel is hidden or motion is reduced), so a closing panel is never left mounted.',
124
148
  ].join('\n');
125
149
 
126
150
  const RELATED_COMPONENTS = [
@@ -143,6 +167,7 @@ function SlideoverManagerDocsPage() {
143
167
  <Markdown>{USAGE_GUIDANCE}</Markdown>
144
168
  <DocHeading>Developer notes</DocHeading>
145
169
  <Markdown>{DEVELOPER_NOTES}</Markdown>
170
+ <Markdown>{CUSTOM_BEHAVIOUR_NOTES}</Markdown>
146
171
  <DocHeading>Examples</DocHeading>
147
172
  <Stories title="" />
148
173
  <Markdown>{RELATED_COMPONENTS}</Markdown>
@@ -384,6 +409,89 @@ const HideBackButtonTemplate = () => (
384
409
  </PageBackground>
385
410
  );
386
411
 
412
+ const ConfirmOnBackTemplate = () => (
413
+ <PageBackground>
414
+ <SlideoverManager slideovers={[]} />
415
+ <Button
416
+ onClick={() =>
417
+ SlideoverUtils.addSlideover({
418
+ title: 'Edit Pupil Details',
419
+ onBack: () => {
420
+ if (window.confirm('You have unsaved changes. Leave without saving?')) {
421
+ SlideoverUtils.removeSlideover();
422
+ }
423
+ },
424
+ children: (
425
+ <FormField
426
+ id="pupil-name-confirm"
427
+ label="Full name"
428
+ inputType="text"
429
+ inputProps={{ defaultValue: 'Alex Johnson' }}
430
+ />
431
+ ),
432
+ })}
433
+ >
434
+ Edit pupil details
435
+ </Button>
436
+ </PageBackground>
437
+ );
438
+
439
+ const handleEditClick = fn().mockName('headerActions Edit onClick');
440
+
441
+ const HeaderActionsTemplate = () => (
442
+ <PageBackground>
443
+ <SlideoverManager slideovers={[]} />
444
+ <Button
445
+ onClick={() =>
446
+ SlideoverUtils.addSlideover({
447
+ title: 'Pupil: Alex Johnson',
448
+ headerActions: (
449
+ <Button variant="secondary" size="S" onClick={handleEditClick}>
450
+ <Icon name="pencil" />
451
+ Edit
452
+ </Button>
453
+ ),
454
+ children: <p>Year 5 · Registration group 5B</p>,
455
+ })}
456
+ >
457
+ View pupil record
458
+ </Button>
459
+ </PageBackground>
460
+ );
461
+
462
+ const ClosingTransitionTemplate = () => {
463
+ const [isOpen, setIsOpen] = useState(false);
464
+ const [isClosing, setIsClosing] = useState(false);
465
+
466
+ return (
467
+ <PageBackground>
468
+ <Button
469
+ onClick={() => {
470
+ setIsClosing(false);
471
+ setIsOpen(true);
472
+ }}
473
+ >
474
+ Open slideover
475
+ </Button>
476
+ {isOpen && (
477
+ <div className="ds-slideover-manager ds-slideover-manager--active">
478
+ <Slideover
479
+ title="Pupil Record"
480
+ onBack={() => setIsClosing(true)}
481
+ isClosing={isClosing}
482
+ onCloseTransitionEnd={() => setIsOpen(false)}
483
+ role="dialog"
484
+ aria-modal
485
+ aria-label="Pupil Record"
486
+ >
487
+ <p>Press Back to watch the panel slide out before it is removed.</p>
488
+ </Slideover>
489
+ </div>
490
+ )}
491
+ </PageBackground>
492
+ );
493
+ };
494
+
387
495
  // ---------------------------------------------------------------------------
388
496
  // Stories
389
497
  // ---------------------------------------------------------------------------
@@ -602,3 +710,39 @@ export default RemovePupilButton;
602
710
  'Without a Back button, the user must interact with the footer actions — reducing accidental dismissal.',
603
711
  ].join(' '),
604
712
  );
713
+
714
+ export const ConfirmOnBack: Story = withDescription(
715
+ {
716
+ render: ConfirmOnBackTemplate,
717
+ parameters: { controls: { disable: true } },
718
+ },
719
+ [
720
+ 'Pass `onBack` to replace what the Back button does.',
721
+ 'Here it asks for confirmation before closing, the pattern for protecting unsaved changes.',
722
+ 'Call `SlideoverUtils.removeSlideover()` yourself once it is safe to close.',
723
+ ].join(' '),
724
+ );
725
+
726
+ export const HeaderActions: Story = withDescription(
727
+ {
728
+ render: HeaderActionsTemplate,
729
+ parameters: { controls: { disable: true } },
730
+ },
731
+ [
732
+ 'Use `headerActions` to place actions such as Edit at the end of the header.',
733
+ 'Clicking Edit here logs to the Actions panel.',
734
+ 'Pass `backButtonText` to replace the Back label, for example with a translated string.',
735
+ ].join(' '),
736
+ );
737
+
738
+ export const ClosingTransition: Story = withDescription(
739
+ {
740
+ render: ClosingTransitionTemplate,
741
+ parameters: { controls: { disable: true } },
742
+ },
743
+ [
744
+ 'Set `isClosing` to slide a panel out, and unmount it in `onCloseTransitionEnd`.',
745
+ 'This example renders `Slideover` from its own state rather than through `SlideoverManager`,',
746
+ 'and forwards `role`, `aria-modal` and `aria-label` to use the panel as a dialog.',
747
+ ].join(' '),
748
+ );
@@ -225,6 +225,8 @@ Both are defined in `vitest.config.ts` as named Vitest projects (`unit` and `sto
225
225
 
226
226
  The Storybook project needs Playwright's Chromium browser installed locally the first time: `yarn playwright install chromium`. You can also run these tests interactively right here — click **Run Tests** in the bottom-left panel of this Storybook.
227
227
 
228
+ Every story also runs axe-core accessibility checks scoped to WCAG 2.2 A/AA. Every story and component should meet WCAG 2.2 standards — violations surface as warnings in the test output, so address them when you touch the affected component rather than leaving them for someone else to find.
229
+
228
230
  ---
229
231
 
230
232
  ## Quality gates
@@ -2,8 +2,11 @@ import type { SlideoverProps } from 'Components/slideover/Slideover';
2
2
  import { SLIDEOVER } from './Constants.js';
3
3
  import PubSub from './PubSub.js';
4
4
 
5
+ // SlideoverManager cannot update a panel once added, so closing props would do nothing
6
+ type ManagedSlideoverProps = Omit<SlideoverProps, 'isClosing' | 'onCloseTransitionEnd'>;
7
+
5
8
  export const SlideoverUtils = {
6
- addSlideover: (slideoverConfig: SlideoverProps) => PubSub.publish(SLIDEOVER.ADD_SLIDEOVER, slideoverConfig),
9
+ addSlideover: (slideoverConfig: ManagedSlideoverProps) => PubSub.publish(SLIDEOVER.ADD_SLIDEOVER, slideoverConfig),
7
10
  removeSlideover: () => PubSub.publish(SLIDEOVER.REMOVE_SLIDEOVER),
8
11
  removeAllSlideovers: () => PubSub.publish(SLIDEOVER.REMOVE_ALL_SLIDEOVERS),
9
12
  };