@conveyorhq/arrow-ds 1.48.0 → 1.51.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@conveyorhq/arrow-ds",
3
3
  "author": "Conveyor",
4
4
  "license": "MIT",
5
- "version": "1.48.0",
5
+ "version": "1.51.0",
6
6
  "description": "Arrow Design System",
7
7
  "repository": "https://github.com/conveyor/arrow-ds",
8
8
  "publishConfig": {
@@ -45,6 +45,7 @@
45
45
  "react-remove-scroll": "^2.2.0",
46
46
  "react-select": "^4.0.2",
47
47
  "react-spring": "^8.0.27",
48
+ "remark-breaks": "^2.0.2",
48
49
  "toasted-notes": "^3.2.0"
49
50
  },
50
51
  "scripts": {
@@ -7,6 +7,7 @@ exports.Markdown = void 0;
7
7
  const react_1 = __importDefault(require("react"));
8
8
  const classnames_1 = __importDefault(require("classnames"));
9
9
  const react_markdown_1 = __importDefault(require("react-markdown"));
10
+ const remark_breaks_1 = __importDefault(require("remark-breaks"));
10
11
  const bem_1 = require("../../utilities/bem");
11
12
  const Text_1 = require("../Text");
12
13
  const cn = "Markdown";
@@ -19,6 +20,6 @@ const Markdown = ({ children, className, escapeHtml = true, skipHtml = false, re
19
20
  emphasis: TextRenderer("span"),
20
21
  }
21
22
  : undefined;
22
- return (react_1.default.createElement(react_markdown_1.default, Object.assign({ className: classnames_1.default(bem_1.bem(cn), className), source: children, escapeHtml: escapeHtml, skipHtml: skipHtml, renderers: { ...plainTextRenderers, ...renderers } }, rest)));
23
+ return (react_1.default.createElement(react_markdown_1.default, Object.assign({ className: classnames_1.default(bem_1.bem(cn), className), source: children, escapeHtml: escapeHtml, skipHtml: skipHtml, renderers: { ...plainTextRenderers, ...renderers }, plugins: [remark_breaks_1.default] }, rest)));
23
24
  };
24
25
  exports.Markdown = Markdown;
@@ -1,4 +1,4 @@
1
- import React, { ReactNode, MutableRefObject, Dispatch, HTMLAttributes, ReactElement, AnchorHTMLAttributes, MouseEvent, ChangeEvent, InputHTMLAttributes } from "react";
1
+ import React, { ReactNode, Dispatch, HTMLAttributes, ReactElement, AnchorHTMLAttributes, MouseEvent, ChangeEvent, InputHTMLAttributes } from "react";
2
2
  import { ScrollSpyState, ScrollSpyAction } from "./types";
3
3
  export declare const ScrollSpyStateContext: React.Context<{
4
4
  state: ScrollSpyState;
@@ -11,7 +11,6 @@ export declare function useScrollSpyStateContext(): {
11
11
  declare type ScrollSpyContextType = {
12
12
  id: string;
13
13
  itemCount: number;
14
- refList: MutableRefObject<HTMLElement[]>;
15
14
  defaultIndex: number;
16
15
  updateCurrentRef(index: number, refItem: HTMLElement): void;
17
16
  scrollToRef(refToScrollTo: HTMLElement): void;
@@ -71,8 +70,9 @@ export declare type ScrollSpyRootProps = {
71
70
  children: ReactNode;
72
71
  itemCount: number;
73
72
  defaultIndex?: number;
73
+ id?: string;
74
74
  };
75
- export declare const ScrollSpyRoot: React.MemoExoticComponent<({ children, itemCount, defaultIndex }: ScrollSpyRootProps) => JSX.Element>;
75
+ export declare const ScrollSpyRoot: React.MemoExoticComponent<({ children, itemCount, defaultIndex, id, }: ScrollSpyRootProps) => JSX.Element>;
76
76
  export declare const ScrollSpyStateProvider: ({ children, }: {
77
77
  children: ReactNode;
78
78
  }) => JSX.Element;
@@ -25,7 +25,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
25
25
  exports.ScrollSpyActions = exports.ScrollSpySelectors = exports.ScrollSpyReducers = exports.ScrollSpyStateProvider = exports.ScrollSpyRoot = exports.ScrollSpyAnchor = exports.useScrollSpyAnchorProps = exports.ScrollSpyPage = exports.useScrollSpyPageProps = exports.ScrollSpyInput = exports.useScrollSpyInputProps = exports.useScrollSpyContext = exports.ScrollSpyContext = exports.useScrollSpyStateContext = exports.ScrollSpyStateContext = void 0;
26
26
  const react_1 = __importStar(require("react"));
27
27
  const react_merge_refs_1 = __importDefault(require("react-merge-refs"));
28
- const auto_id_1 = require("@reach/auto-id");
29
28
  const classnames_1 = __importDefault(require("classnames"));
30
29
  const utilities_1 = require("../../utilities");
31
30
  const hooks_1 = require("../../hooks");
@@ -33,6 +32,7 @@ const reducers_1 = require("./reducers");
33
32
  const selectors_1 = require("./selectors");
34
33
  const actions_1 = require("./actions");
35
34
  const cn = utilities_1.bemHOF("ScrollSpy");
35
+ const DEFAULT_ID = "scroll-spy-1";
36
36
  const initialContextState = {
37
37
  state: reducers_1.scrollSpyInitialState,
38
38
  dispatch: () => { },
@@ -46,9 +46,8 @@ function useScrollSpyStateContext() {
46
46
  }
47
47
  exports.useScrollSpyStateContext = useScrollSpyStateContext;
48
48
  const defaultRootContext = {
49
- id: "scroll-spy-1",
49
+ id: DEFAULT_ID,
50
50
  itemCount: 1,
51
- refList: { current: [] },
52
51
  defaultIndex: 0,
53
52
  updateCurrentRef: () => { },
54
53
  scrollToRef: () => { },
@@ -161,9 +160,8 @@ exports.ScrollSpyAnchor = react_1.memo(react_1.forwardRef(({ id, children, onCli
161
160
  });
162
161
  return (react_1.default.createElement("a", Object.assign({ ref: forwardedRef }, anchorProps, rest), children));
163
162
  }));
164
- exports.ScrollSpyRoot = react_1.memo(({ children, itemCount, defaultIndex = 0 }) => {
163
+ exports.ScrollSpyRoot = react_1.memo(({ children, itemCount, defaultIndex = 0, id = DEFAULT_ID, }) => {
165
164
  const refList = react_1.useRef([]);
166
- const id = `scroll-spy-${auto_id_1.useId()}`;
167
165
  const prefersReducedMotion = hooks_1.usePrefersReducedMotion();
168
166
  const scrollBehavior = prefersReducedMotion ? "auto" : "smooth";
169
167
  react_1.useEffect(() => {
@@ -197,18 +195,19 @@ exports.ScrollSpyRoot = react_1.memo(({ children, itemCount, defaultIndex = 0 })
197
195
  skipToPage(defaultIndex + 1);
198
196
  }
199
197
  }, [defaultIndex, itemCount]);
200
- const context = {
201
- id,
202
- itemCount,
203
- refList,
204
- defaultIndex,
205
- updateCurrentRef,
206
- scrollToRef,
207
- scrollToFirst,
208
- scrollToLast,
209
- scrollToPage,
210
- skipToPage,
211
- };
198
+ const context = react_1.useMemo(() => {
199
+ return {
200
+ id,
201
+ itemCount,
202
+ defaultIndex,
203
+ updateCurrentRef,
204
+ scrollToRef,
205
+ scrollToFirst,
206
+ scrollToLast,
207
+ scrollToPage,
208
+ skipToPage,
209
+ };
210
+ }, [id, itemCount, defaultIndex]);
212
211
  return (react_1.default.createElement(exports.ScrollSpyContext.Provider, { value: context }, children));
213
212
  });
214
213
  const ScrollSpyStateProvider = ({ children, }) => {
@@ -1,6 +1,7 @@
1
1
  import React, { ReactNode } from "react";
2
2
  import classNames from "classnames";
3
3
  import ReactMarkdown, { ReactMarkdownProps } from "react-markdown";
4
+ import remarkBreaks from "remark-breaks";
4
5
  import { bem } from "../../utilities/bem";
5
6
  import { Text } from "../Text";
6
7
 
@@ -44,6 +45,7 @@ export const Markdown = ({
44
45
  escapeHtml={escapeHtml}
45
46
  skipHtml={skipHtml}
46
47
  renderers={{ ...plainTextRenderers, ...renderers }}
48
+ plugins={[remarkBreaks]}
47
49
  {...rest}
48
50
  />
49
51
  );
@@ -3,7 +3,6 @@ import React, {
3
3
  useRef,
4
4
  useEffect,
5
5
  createContext,
6
- MutableRefObject,
7
6
  useContext,
8
7
  Dispatch,
9
8
  HTMLAttributes,
@@ -20,7 +19,6 @@ import React, {
20
19
  useReducer,
21
20
  } from "react";
22
21
  import mergeRefs from "react-merge-refs";
23
- import { useId } from "@reach/auto-id";
24
22
  import classNames from "classnames";
25
23
  import { bemHOF } from "../../utilities";
26
24
  import { useIntersection, usePrefersReducedMotion } from "../../hooks";
@@ -30,6 +28,7 @@ import { selectCurrentIndex, selectCurrentPage } from "./selectors";
30
28
  import { updateIndex } from "./actions";
31
29
 
32
30
  const cn = bemHOF("ScrollSpy");
31
+ const DEFAULT_ID = "scroll-spy-1";
33
32
 
34
33
  // ------------------------------------------------------------------
35
34
  // ScrollSpy.StateContext
@@ -58,7 +57,6 @@ export function useScrollSpyStateContext() {
58
57
  type ScrollSpyContextType = {
59
58
  id: string;
60
59
  itemCount: number;
61
- refList: MutableRefObject<HTMLElement[]>;
62
60
  defaultIndex: number;
63
61
  updateCurrentRef(index: number, refItem: HTMLElement): void;
64
62
  scrollToRef(refToScrollTo: HTMLElement): void;
@@ -69,9 +67,8 @@ type ScrollSpyContextType = {
69
67
  };
70
68
 
71
69
  const defaultRootContext: ScrollSpyContextType = {
72
- id: "scroll-spy-1",
70
+ id: DEFAULT_ID,
73
71
  itemCount: 1,
74
- refList: { current: [] },
75
72
  defaultIndex: 0,
76
73
  updateCurrentRef: () => {},
77
74
  scrollToRef: () => {},
@@ -287,12 +284,17 @@ export type ScrollSpyRootProps = {
287
284
  children: ReactNode;
288
285
  itemCount: number;
289
286
  defaultIndex?: number;
287
+ id?: string;
290
288
  };
291
289
 
292
290
  export const ScrollSpyRoot = memo(
293
- ({ children, itemCount, defaultIndex = 0 }: ScrollSpyRootProps) => {
291
+ ({
292
+ children,
293
+ itemCount,
294
+ defaultIndex = 0,
295
+ id = DEFAULT_ID,
296
+ }: ScrollSpyRootProps) => {
294
297
  const refList = useRef<HTMLElement[]>([]);
295
- const id = `scroll-spy-${useId()}`;
296
298
  const prefersReducedMotion = usePrefersReducedMotion();
297
299
  const scrollBehavior = prefersReducedMotion ? "auto" : "smooth";
298
300
 
@@ -339,18 +341,20 @@ export const ScrollSpyRoot = memo(
339
341
  // eslint-disable-next-line react-hooks/exhaustive-deps
340
342
  }, [defaultIndex, itemCount]);
341
343
 
342
- const context = {
343
- id,
344
- itemCount,
345
- refList,
346
- defaultIndex,
347
- updateCurrentRef,
348
- scrollToRef,
349
- scrollToFirst,
350
- scrollToLast,
351
- scrollToPage,
352
- skipToPage,
353
- };
344
+ const context = useMemo(() => {
345
+ return {
346
+ id,
347
+ itemCount,
348
+ defaultIndex,
349
+ updateCurrentRef,
350
+ scrollToRef,
351
+ scrollToFirst,
352
+ scrollToLast,
353
+ scrollToPage,
354
+ skipToPage,
355
+ };
356
+ // eslint-disable-next-line react-hooks/exhaustive-deps
357
+ }, [id, itemCount, defaultIndex]);
354
358
 
355
359
  return (
356
360
  <ScrollSpyContext.Provider value={context}>