@activecollab/components 1.0.264 → 1.0.265

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/dist/cjs/components/CommandPallete/CommandPallete.js +119 -20
  2. package/dist/cjs/components/CommandPallete/CommandPallete.js.map +1 -1
  3. package/dist/cjs/components/CommandPallete/CommandPallete.styles.js +15 -3
  4. package/dist/cjs/components/CommandPallete/CommandPallete.styles.js.map +1 -1
  5. package/dist/cjs/components/CommandPallete/CommandPalleteHeader.js +21 -7
  6. package/dist/cjs/components/CommandPallete/CommandPalleteHeader.js.map +1 -1
  7. package/dist/cjs/components/CommandPallete/CommandPalleteItem.js +27 -7
  8. package/dist/cjs/components/CommandPallete/CommandPalleteItem.js.map +1 -1
  9. package/dist/cjs/components/CommandPallete/CommandPalleteList.js +2 -1
  10. package/dist/cjs/components/CommandPallete/CommandPalleteList.js.map +1 -1
  11. package/dist/cjs/components/CommandPallete/context/ModeContext.js +2 -3
  12. package/dist/cjs/components/CommandPallete/context/ModeContext.js.map +1 -1
  13. package/dist/cjs/components/CommandPallete/context/SelectedContext.js +21 -0
  14. package/dist/cjs/components/CommandPallete/context/SelectedContext.js.map +1 -0
  15. package/dist/cjs/components/CommandPallete/context/index.js +28 -0
  16. package/dist/cjs/components/CommandPallete/context/index.js.map +1 -0
  17. package/dist/esm/components/CommandPallete/CommandPallete.d.ts +4 -7
  18. package/dist/esm/components/CommandPallete/CommandPallete.d.ts.map +1 -1
  19. package/dist/esm/components/CommandPallete/CommandPallete.js +111 -21
  20. package/dist/esm/components/CommandPallete/CommandPallete.js.map +1 -1
  21. package/dist/esm/components/CommandPallete/CommandPallete.styles.d.ts +5 -1
  22. package/dist/esm/components/CommandPallete/CommandPallete.styles.d.ts.map +1 -1
  23. package/dist/esm/components/CommandPallete/CommandPallete.styles.js +13 -2
  24. package/dist/esm/components/CommandPallete/CommandPallete.styles.js.map +1 -1
  25. package/dist/esm/components/CommandPallete/CommandPalleteHeader.d.ts.map +1 -1
  26. package/dist/esm/components/CommandPallete/CommandPalleteHeader.js +22 -11
  27. package/dist/esm/components/CommandPallete/CommandPalleteHeader.js.map +1 -1
  28. package/dist/esm/components/CommandPallete/CommandPalleteItem.d.ts +5 -6
  29. package/dist/esm/components/CommandPallete/CommandPalleteItem.d.ts.map +1 -1
  30. package/dist/esm/components/CommandPallete/CommandPalleteItem.js +23 -10
  31. package/dist/esm/components/CommandPallete/CommandPalleteItem.js.map +1 -1
  32. package/dist/esm/components/CommandPallete/CommandPalleteList.d.ts.map +1 -1
  33. package/dist/esm/components/CommandPallete/CommandPalleteList.js +2 -4
  34. package/dist/esm/components/CommandPallete/CommandPalleteList.js.map +1 -1
  35. package/dist/esm/components/CommandPallete/context/ModeContext.d.ts +2 -2
  36. package/dist/esm/components/CommandPallete/context/ModeContext.d.ts.map +1 -1
  37. package/dist/esm/components/CommandPallete/context/ModeContext.js +1 -2
  38. package/dist/esm/components/CommandPallete/context/ModeContext.js.map +1 -1
  39. package/dist/esm/components/CommandPallete/context/SelectedContext.d.ts +10 -0
  40. package/dist/esm/components/CommandPallete/context/SelectedContext.d.ts.map +1 -0
  41. package/dist/esm/components/CommandPallete/context/SelectedContext.js +12 -0
  42. package/dist/esm/components/CommandPallete/context/SelectedContext.js.map +1 -0
  43. package/dist/esm/components/CommandPallete/context/index.d.ts +3 -0
  44. package/dist/esm/components/CommandPallete/context/index.d.ts.map +1 -0
  45. package/dist/esm/components/CommandPallete/context/index.js +3 -0
  46. package/dist/esm/components/CommandPallete/context/index.js.map +1 -0
  47. package/package.json +2 -1
@@ -1,6 +1,6 @@
1
1
  import React, { PropsWithChildren, ReactNode } from "react";
2
2
  import { DialogProps } from "../Dialog";
3
- import { CommandPalleteListProps } from "./CommandPalleteList";
3
+ import { CommandPalleteItemProps } from "./CommandPalleteItem";
4
4
  export interface CommandPalleteProps extends DialogProps {
5
5
  onChangeSearch: (search: string) => void;
6
6
  search: string;
@@ -14,15 +14,12 @@ export interface CommandPalleteProps extends DialogProps {
14
14
  loading?: boolean;
15
15
  }
16
16
  export declare const CommandPallete: {
17
- ({ children, onChangeSearch, search, commands, mode, setMode, ...rest }: PropsWithChildren<CommandPalleteProps>): JSX.Element;
17
+ ({ children, onChangeSearch, search, mode, setMode, ...rest }: PropsWithChildren<CommandPalleteProps>): JSX.Element;
18
18
  displayName: string;
19
19
  List: {
20
- ({ children, heading, visible, }: React.PropsWithChildren<CommandPalleteListProps>): JSX.Element | null;
21
- displayName: string;
22
- };
23
- Item: {
24
- ({ title, renderIcon, className, }: import("./CommandPalleteItem").CommandPalleteItemProps): JSX.Element;
20
+ ({ children, heading, visible, }: React.PropsWithChildren<import("./CommandPalleteList").CommandPalleteListProps>): JSX.Element | null;
25
21
  displayName: string;
26
22
  };
23
+ Item: React.ForwardRefExoticComponent<CommandPalleteItemProps & React.RefAttributes<HTMLLIElement>>;
27
24
  };
28
25
  //# sourceMappingURL=CommandPallete.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPallete.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPallete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAGZ,iBAAiB,EAEjB,SAAS,EACV,MAAM,OAAO,CAAC;AACf,OAAO,EAAU,WAAW,EAAE,MAAM,WAAW,CAAC;AAQhD,OAAO,EAEL,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,SAAS,CAAA;KAAE,EAAE,CAAC;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,cAAc;6EAQxB,kBAAkB,mBAAmB,CAAC;;;;;;;;;;CA8CxC,CAAC"}
1
+ {"version":3,"file":"CommandPallete.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPallete.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAGZ,iBAAiB,EAEjB,SAAS,EAKV,MAAM,OAAO,CAAC;AAEf,OAAO,EAAU,WAAW,EAAE,MAAM,WAAW,CAAC;AAMhD,OAAO,EAEL,uBAAuB,EACxB,MAAM,sBAAsB,CAAC;AAK9B,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IACtD,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,SAAS,CAAA;KAAE,EAAE,CAAC;IAC7E,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACjC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,cAAc;mEAOxB,kBAAkB,mBAAmB,CAAC;;;;;;;CAwIxC,CAAC"}
@@ -1,24 +1,127 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
1
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
2
- var _excluded = ["children", "onChangeSearch", "search", "commands", "mode", "setMode"];
3
- import React, { Children } from "react";
3
+ var _excluded = ["children", "onChangeSearch", "search", "mode", "setMode"];
4
+ import React, { cloneElement, useEffect, useMemo, useRef, useState } from "react";
5
+ import { deepMap } from "react-children-utilities";
4
6
  import { Dialog } from "../Dialog";
5
7
  import { StyledCommandPallete, StyledCommandPalleteWrapper } from "./CommandPallete.styles";
6
8
  import { CommandPalleteHeader } from "./CommandPalleteHeader";
7
9
  import { CommandPalleteItem } from "./CommandPalleteItem";
8
10
  import { CommandPalleteList } from "./CommandPalleteList";
9
- import { ModeContextProvider } from "./context/ModeContext";
11
+ import { ModeContextProvider, SelectedContextProvider } from "./context";
10
12
  export var CommandPallete = function CommandPallete(_ref) {
11
13
  var children = _ref.children,
12
14
  onChangeSearch = _ref.onChangeSearch,
13
15
  search = _ref.search,
14
- commands = _ref.commands,
15
16
  mode = _ref.mode,
16
17
  setMode = _ref.setMode,
17
18
  rest = _objectWithoutPropertiesLoose(_ref, _excluded);
19
+ var _useState = useState(0),
20
+ selected = _useState[0],
21
+ setSelected = _useState[1];
22
+ var listWrapperRef = useRef(null);
18
23
  var handleChange = function handleChange(e) {
19
24
  onChangeSearch(e.target.value);
20
25
  };
21
- return /*#__PURE__*/React.createElement(Dialog, rest, /*#__PURE__*/React.createElement(StyledCommandPallete, null, /*#__PURE__*/React.createElement(ModeContextProvider, {
26
+ var scrollToTop = function scrollToTop() {
27
+ var _listWrapperRef$curre;
28
+ (_listWrapperRef$curre = listWrapperRef.current) == null ? void 0 : _listWrapperRef$curre.scrollTo({
29
+ top: 0,
30
+ behavior: "smooth"
31
+ });
32
+ };
33
+ var scrollToBottom = function scrollToBottom() {
34
+ var _listWrapperRef$curre2;
35
+ (_listWrapperRef$curre2 = listWrapperRef.current) == null ? void 0 : _listWrapperRef$curre2.scrollTo({
36
+ top: listWrapperRef.current.scrollHeight,
37
+ behavior: "smooth"
38
+ });
39
+ };
40
+ var filterChildren = useMemo(function () {
41
+ var index = 0;
42
+ var items = deepMap(children, function (child) {
43
+ var item = child;
44
+ var clonedElement;
45
+ if (item && item.type === CommandPalleteList) {
46
+ clonedElement = /*#__PURE__*/cloneElement(item, _extends({}, item.props));
47
+ }
48
+ if (item && item.type === CommandPalleteItem) {
49
+ clonedElement = /*#__PURE__*/cloneElement(item, _extends({}, item.props, {
50
+ index: index,
51
+ selected: selected
52
+ }));
53
+ index++;
54
+ }
55
+ return clonedElement;
56
+ });
57
+ return {
58
+ items: items,
59
+ index: index
60
+ };
61
+ }, [children, selected]);
62
+ useEffect(function () {
63
+ if (search.length === 0) {
64
+ setSelected(0);
65
+ }
66
+ }, [search, selected]);
67
+ var handleChangeSelected = function handleChangeSelected(direction) {
68
+ var items = document.querySelectorAll(".cp-item");
69
+ var index = 0;
70
+ var newIndex = 0;
71
+ var newItem = null;
72
+ if (direction === "down") {
73
+ items.forEach(function (_, i) {
74
+ if (i === selected) {
75
+ index = i;
76
+ }
77
+ });
78
+ newIndex = index === items.length - 1 ? 0 : index + 1;
79
+ } else if (direction === "up") {
80
+ items.forEach(function (_, i) {
81
+ if (i === selected) {
82
+ index = i;
83
+ }
84
+ });
85
+ newIndex = !index ? items.length - 1 : index - 1;
86
+ } else {
87
+ setSelected(0);
88
+ }
89
+ newItem = items[newIndex];
90
+ if (newItem && typeof newIndex === "number") {
91
+ setSelected(newIndex);
92
+ newItem.scrollIntoView({
93
+ behavior: "smooth",
94
+ block: newIndex ? "center" : "end"
95
+ });
96
+ }
97
+ };
98
+ return /*#__PURE__*/React.createElement(Dialog, rest, /*#__PURE__*/React.createElement(SelectedContextProvider, {
99
+ value: {
100
+ selected: selected,
101
+ setSelected: setSelected
102
+ }
103
+ }, /*#__PURE__*/React.createElement(StyledCommandPallete, {
104
+ onKeyDown: function onKeyDown(e) {
105
+ if (e.key === "ArrowDown") {
106
+ e.preventDefault();
107
+ handleChangeSelected("down");
108
+ }
109
+ if (e.key === "ArrowUp") {
110
+ e.preventDefault();
111
+ handleChangeSelected("up");
112
+ }
113
+ if (e.key === "End") {
114
+ e.preventDefault();
115
+ scrollToBottom();
116
+ setSelected(filterChildren.index - 1);
117
+ }
118
+ if (e.key === "Home") {
119
+ e.preventDefault();
120
+ scrollToTop();
121
+ setSelected(0);
122
+ }
123
+ }
124
+ }, /*#__PURE__*/React.createElement(ModeContextProvider, {
22
125
  value: {
23
126
  mode: mode,
24
127
  setMode: setMode
@@ -27,22 +130,9 @@ export var CommandPallete = function CommandPallete(_ref) {
27
130
  search: search,
28
131
  handleChange: handleChange,
29
132
  onChangeSearch: onChangeSearch
30
- })), /*#__PURE__*/React.createElement(StyledCommandPalleteWrapper, null, search.length > 0 ? /*#__PURE__*/React.createElement(CommandPalleteList, {
31
- visible: true
32
- }, commands.map(function (command) {
33
- if (command.visible) {
34
- return /*#__PURE__*/React.createElement(CommandPalleteItem, {
35
- className: "cp-item cp-command",
36
- title: command.title,
37
- key: command.title,
38
- renderIcon: command.renderIcon
39
- });
40
- }
41
- return null;
42
- })) : null, Children.toArray(children).map(function (child) {
43
- var item = child;
44
- return /*#__PURE__*/React.cloneElement(item, {});
45
- }))));
133
+ })), /*#__PURE__*/React.createElement(StyledCommandPalleteWrapper, {
134
+ ref: listWrapperRef
135
+ }, filterChildren.items))));
46
136
  };
47
137
  CommandPallete.displayName = "CommandPallete";
48
138
  CommandPallete.List = CommandPalleteList;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPallete.js","names":["React","Children","Dialog","StyledCommandPallete","StyledCommandPalleteWrapper","CommandPalleteHeader","CommandPalleteItem","CommandPalleteList","ModeContextProvider","CommandPallete","children","onChangeSearch","search","commands","mode","setMode","rest","handleChange","e","target","value","length","map","command","visible","title","renderIcon","toArray","child","item","cloneElement","displayName","List","Item"],"sources":["../../../../src/components/CommandPallete/CommandPallete.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n Children,\n PropsWithChildren,\n ReactElement,\n ReactNode,\n} from \"react\";\nimport { Dialog, DialogProps } from \"../Dialog\";\n\nimport {\n StyledCommandPallete,\n StyledCommandPalleteWrapper,\n} from \"./CommandPallete.styles\";\nimport { CommandPalleteHeader } from \"./CommandPalleteHeader\";\nimport { CommandPalleteItem } from \"./CommandPalleteItem\";\nimport {\n CommandPalleteList,\n CommandPalleteListProps,\n} from \"./CommandPalleteList\";\nimport { ModeContextProvider } from \"./context/ModeContext\";\n\nexport interface CommandPalleteProps extends DialogProps {\n onChangeSearch: (search: string) => void;\n search: string;\n commands: { visible: boolean; title: string; renderIcon: () => ReactNode }[];\n mode: string;\n setMode: (value: string) => void;\n loading?: boolean;\n}\n\nexport const CommandPallete = ({\n children,\n onChangeSearch,\n search,\n commands,\n mode,\n setMode,\n ...rest\n}: PropsWithChildren<CommandPalleteProps>) => {\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n onChangeSearch(e.target.value);\n };\n\n return (\n <Dialog {...rest}>\n <StyledCommandPallete>\n <ModeContextProvider value={{ mode, setMode }}>\n <CommandPalleteHeader\n search={search}\n handleChange={handleChange}\n onChangeSearch={onChangeSearch}\n />\n </ModeContextProvider>\n <StyledCommandPalleteWrapper>\n {/* COMMANDS */}\n {search.length > 0 ? (\n <CommandPalleteList visible={true}>\n {commands.map((command) => {\n if (command.visible) {\n return (\n <CommandPalleteItem\n className=\"cp-item cp-command\"\n title={command.title}\n key={command.title}\n renderIcon={command.renderIcon}\n />\n );\n }\n return null;\n })}\n </CommandPalleteList>\n ) : null}\n {/* COMMANDS */}\n\n {/* LISTS AND ITEMS */}\n {Children.toArray(children).map((child) => {\n const item = child as ReactElement<CommandPalleteListProps>;\n return React.cloneElement(item, {});\n })}\n {/* LISTS AND ITEMS */}\n </StyledCommandPalleteWrapper>\n </StyledCommandPallete>\n </Dialog>\n );\n};\n\nCommandPallete.displayName = \"CommandPallete\";\n\nCommandPallete.List = CommandPalleteList;\nCommandPallete.Item = CommandPalleteItem;\n"],"mappings":";;AAAA,OAAOA,KAAK,IAEVC,QAAQ,QAIH,OAAO;AACd,SAASC,MAAM,QAAqB,WAAW;AAE/C,SACEC,oBAAoB,EACpBC,2BAA2B,QACtB,yBAAyB;AAChC,SAASC,oBAAoB,QAAQ,wBAAwB;AAC7D,SAASC,kBAAkB,QAAQ,sBAAsB;AACzD,SACEC,kBAAkB,QAEb,sBAAsB;AAC7B,SAASC,mBAAmB,QAAQ,uBAAuB;AAW3D,OAAO,IAAMC,cAAc,GAAG,SAAjBA,cAAc,OAQmB;EAAA,IAP5CC,QAAQ,QAARA,QAAQ;IACRC,cAAc,QAAdA,cAAc;IACdC,MAAM,QAANA,MAAM;IACNC,QAAQ,QAARA,QAAQ;IACRC,IAAI,QAAJA,IAAI;IACJC,OAAO,QAAPA,OAAO;IACJC,IAAI;EAEP,IAAMC,YAAY,GAAG,SAAfA,YAAY,CAAIC,CAAgC,EAAK;IACzDP,cAAc,CAACO,CAAC,CAACC,MAAM,CAACC,KAAK,CAAC;EAChC,CAAC;EAED,oBACE,oBAAC,MAAM,EAAKJ,IAAI,eACd,oBAAC,oBAAoB,qBACnB,oBAAC,mBAAmB;IAAC,KAAK,EAAE;MAAEF,IAAI,EAAJA,IAAI;MAAEC,OAAO,EAAPA;IAAQ;EAAE,gBAC5C,oBAAC,oBAAoB;IACnB,MAAM,EAAEH,MAAO;IACf,YAAY,EAAEK,YAAa;IAC3B,cAAc,EAAEN;EAAe,EAC/B,CACkB,eACtB,oBAAC,2BAA2B,QAEzBC,MAAM,CAACS,MAAM,GAAG,CAAC,gBAChB,oBAAC,kBAAkB;IAAC,OAAO,EAAE;EAAK,GAC/BR,QAAQ,CAACS,GAAG,CAAC,UAACC,OAAO,EAAK;IACzB,IAAIA,OAAO,CAACC,OAAO,EAAE;MACnB,oBACE,oBAAC,kBAAkB;QACjB,SAAS,EAAC,oBAAoB;QAC9B,KAAK,EAAED,OAAO,CAACE,KAAM;QACrB,GAAG,EAAEF,OAAO,CAACE,KAAM;QACnB,UAAU,EAAEF,OAAO,CAACG;MAAW,EAC/B;IAEN;IACA,OAAO,IAAI;EACb,CAAC,CAAC,CACiB,GACnB,IAAI,EAIPzB,QAAQ,CAAC0B,OAAO,CAACjB,QAAQ,CAAC,CAACY,GAAG,CAAC,UAACM,KAAK,EAAK;IACzC,IAAMC,IAAI,GAAGD,KAA8C;IAC3D,oBAAO5B,KAAK,CAAC8B,YAAY,CAACD,IAAI,EAAE,CAAC,CAAC,CAAC;EACrC,CAAC,CAAC,CAE0B,CACT,CAChB;AAEb,CAAC;AAEDpB,cAAc,CAACsB,WAAW,GAAG,gBAAgB;AAE7CtB,cAAc,CAACuB,IAAI,GAAGzB,kBAAkB;AACxCE,cAAc,CAACwB,IAAI,GAAG3B,kBAAkB"}
1
+ {"version":3,"file":"CommandPallete.js","names":["React","cloneElement","useEffect","useMemo","useRef","useState","deepMap","Dialog","StyledCommandPallete","StyledCommandPalleteWrapper","CommandPalleteHeader","CommandPalleteItem","CommandPalleteList","ModeContextProvider","SelectedContextProvider","CommandPallete","children","onChangeSearch","search","mode","setMode","rest","selected","setSelected","listWrapperRef","handleChange","e","target","value","scrollToTop","current","scrollTo","top","behavior","scrollToBottom","scrollHeight","filterChildren","index","items","child","item","clonedElement","type","props","length","handleChangeSelected","direction","document","querySelectorAll","newIndex","newItem","forEach","_","i","scrollIntoView","block","key","preventDefault","displayName","List","Item"],"sources":["../../../../src/components/CommandPallete/CommandPallete.tsx"],"sourcesContent":["import React, {\n ChangeEvent,\n cloneElement,\n PropsWithChildren,\n ReactElement,\n ReactNode,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { deepMap } from \"react-children-utilities\";\nimport { Dialog, DialogProps } from \"../Dialog\";\nimport {\n StyledCommandPallete,\n StyledCommandPalleteWrapper,\n} from \"./CommandPallete.styles\";\nimport { CommandPalleteHeader } from \"./CommandPalleteHeader\";\nimport {\n CommandPalleteItem,\n CommandPalleteItemProps,\n} from \"./CommandPalleteItem\";\nimport { CommandPalleteList } from \"./CommandPalleteList\";\n\nimport { ModeContextProvider, SelectedContextProvider } from \"./context\";\n\nexport interface CommandPalleteProps extends DialogProps {\n onChangeSearch: (search: string) => void;\n search: string;\n commands: { visible: boolean; title: string; renderIcon: () => ReactNode }[];\n mode: string;\n setMode: (value: string) => void;\n loading?: boolean;\n}\n\nexport const CommandPallete = ({\n children,\n onChangeSearch,\n search,\n mode,\n setMode,\n ...rest\n}: PropsWithChildren<CommandPalleteProps>) => {\n const [selected, setSelected] = useState<number>(0);\n const listWrapperRef = useRef<HTMLDivElement>(null);\n\n const handleChange = (e: ChangeEvent<HTMLInputElement>) => {\n onChangeSearch(e.target.value);\n };\n\n const scrollToTop = () => {\n listWrapperRef.current?.scrollTo({ top: 0, behavior: \"smooth\" });\n };\n\n const scrollToBottom = () => {\n listWrapperRef.current?.scrollTo({\n top: listWrapperRef.current.scrollHeight,\n behavior: \"smooth\",\n });\n };\n\n const filterChildren = useMemo(() => {\n let index = 0;\n\n const items = deepMap(children, (child) => {\n const item = child as ReactElement<CommandPalleteItemProps>;\n let clonedElement;\n\n if (item && item.type === CommandPalleteList) {\n clonedElement = cloneElement(item, {\n ...item.props,\n });\n }\n\n if (item && item.type === CommandPalleteItem) {\n clonedElement = cloneElement(item, {\n ...item.props,\n index,\n selected,\n });\n\n index++;\n }\n\n return clonedElement;\n });\n\n return { items, index };\n }, [children, selected]);\n\n useEffect(() => {\n if (search.length === 0) {\n setSelected(0);\n }\n }, [search, selected]);\n\n const handleChangeSelected = (direction?: \"up\" | \"down\") => {\n const items = document.querySelectorAll(\".cp-item\");\n\n let index = 0;\n let newIndex = 0;\n let newItem: Element | null = null;\n\n if (direction === \"down\") {\n items.forEach((_, i) => {\n if (i === selected) {\n index = i;\n }\n });\n\n newIndex = index === items.length - 1 ? 0 : index + 1;\n } else if (direction === \"up\") {\n items.forEach((_, i) => {\n if (i === selected) {\n index = i;\n }\n });\n\n newIndex = !index ? items.length - 1 : index - 1;\n } else {\n setSelected(0);\n }\n\n newItem = items[newIndex];\n\n if (newItem && typeof newIndex === \"number\") {\n setSelected(newIndex);\n\n newItem.scrollIntoView({\n behavior: \"smooth\",\n block: newIndex ? \"center\" : \"end\",\n });\n }\n };\n\n return (\n <Dialog {...rest}>\n <SelectedContextProvider value={{ selected: selected, setSelected }}>\n <StyledCommandPallete\n onKeyDown={(e) => {\n if (e.key === \"ArrowDown\") {\n e.preventDefault();\n handleChangeSelected(\"down\");\n }\n\n if (e.key === \"ArrowUp\") {\n e.preventDefault();\n handleChangeSelected(\"up\");\n }\n\n if (e.key === \"End\") {\n e.preventDefault();\n scrollToBottom();\n setSelected(filterChildren.index - 1);\n }\n\n if (e.key === \"Home\") {\n e.preventDefault();\n scrollToTop();\n setSelected(0);\n }\n }}\n >\n <ModeContextProvider value={{ mode, setMode }}>\n <CommandPalleteHeader\n search={search}\n handleChange={handleChange}\n onChangeSearch={onChangeSearch}\n />\n </ModeContextProvider>\n\n <StyledCommandPalleteWrapper ref={listWrapperRef}>\n {filterChildren.items}\n </StyledCommandPalleteWrapper>\n </StyledCommandPallete>\n </SelectedContextProvider>\n </Dialog>\n );\n};\n\nCommandPallete.displayName = \"CommandPallete\";\n\nCommandPallete.List = CommandPalleteList;\nCommandPallete.Item = CommandPalleteItem;\n"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export declare const StyledCommandPallete: import("styled-components").StyledComponent<"div", any, {}, never>;
2
3
  export declare const StyledCommandPalleteWrapper: import("styled-components").StyledComponent<"div", any, {}, never>;
3
4
  export declare const StyledCommandPalleteHeader: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -8,5 +9,8 @@ export declare const StyledActionWrapper: import("styled-components").StyledComp
8
9
  export declare const StyledIcon: import("styled-components").StyledComponent<"div", any, {}, never>;
9
10
  export declare const StyledCommandPalleteList: import("styled-components").StyledComponent<"ul", any, {}, never>;
10
11
  export declare const StyledHeading: import("styled-components").StyledComponent<"p", any, {}, never>;
11
- export declare const StyledCommandPalleteItem: import("styled-components").StyledComponent<"li", any, {}, never>;
12
+ export declare const StyledCommandPalleteItem: import("styled-components").StyledComponent<"li", any, {
13
+ $selected: boolean;
14
+ }, never>;
15
+ export declare const StyledSpinnerLoader: import("styled-components").StyledComponent<import("react").ForwardRefExoticComponent<Pick<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "slot" | "style" | "title" | "key" | "css" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "className" | "contentEditable" | "contextMenu" | "dir" | "draggable" | "hidden" | "id" | "lang" | "placeholder" | "spellCheck" | "tabIndex" | "translate" | "radioGroup" | "role" | "about" | "datatype" | "inlist" | "prefix" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "color" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "cs" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "children" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "tw"> & import("../Loaders").SpinnerLoaderProps & import("react").RefAttributes<HTMLDivElement>>, any, {}, never>;
12
16
  //# sourceMappingURL=CommandPallete.styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPallete.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPallete.styles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,oEAMhC,CAAC;AAEF,eAAO,MAAM,2BAA2B,oEAIvC,CAAC;AAEF,eAAO,MAAM,0BAA0B,oEAQtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,oEAM5B,CAAC;AAEF,eAAO,MAAM,WAAW,sEAqBvB,CAAC;AAEF,eAAO,MAAM,eAAe,qEAU3B,CAAC;AAEF,eAAO,MAAM,mBAAmB,oEAI/B,CAAC;AAEF,eAAO,MAAM,UAAU,oEAMtB,CAAC;AAEF,eAAO,MAAM,wBAAwB,mEASpC,CAAC;AAEF,eAAO,MAAM,aAAa,kEAQzB,CAAC;AAGF,eAAO,MAAM,wBAAwB,mEA2BpC,CAAC"}
1
+ {"version":3,"file":"CommandPallete.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPallete.styles.ts"],"names":[],"mappings":";AAKA,eAAO,MAAM,oBAAoB,oEAMhC,CAAC;AAEF,eAAO,MAAM,2BAA2B,oEASvC,CAAC;AAEF,eAAO,MAAM,0BAA0B,oEAQtC,CAAC;AAEF,eAAO,MAAM,gBAAgB,oEAM5B,CAAC;AAEF,eAAO,MAAM,WAAW,sEAqBvB,CAAC;AAEF,eAAO,MAAM,eAAe,qEAU3B,CAAC;AAEF,eAAO,MAAM,mBAAmB,oEAI/B,CAAC;AAEF,eAAO,MAAM,UAAU,oEAMtB,CAAC;AAEF,eAAO,MAAM,wBAAwB,mEASpC,CAAC;AAEF,eAAO,MAAM,aAAa,kEAQzB,CAAC;AAGF,eAAO,MAAM,wBAAwB;eAAyB,OAAO;SA4BpE,CAAC;AAEF,eAAO,MAAM,mBAAmB,uzJAE/B,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import styled from "styled-components";
2
2
  import { FontStyle } from "../FontStyle";
3
3
  import { screen } from "../BreakPoints";
4
+ import { SpinnerLoader } from "../Loaders";
4
5
  export var StyledCommandPallete = styled.div.withConfig({
5
6
  displayName: "CommandPalletestyles__StyledCommandPallete",
6
7
  componentId: "sc-16m145d-0"
@@ -8,7 +9,7 @@ export var StyledCommandPallete = styled.div.withConfig({
8
9
  export var StyledCommandPalleteWrapper = styled.div.withConfig({
9
10
  displayName: "CommandPalletestyles__StyledCommandPalleteWrapper",
10
11
  componentId: "sc-16m145d-1"
11
- })(["overflow-x:hidden;overflow-y:auto;max-height:450px;"]);
12
+ })(["overflow-x:hidden;overflow-y:auto;max-height:450px;&:not(:empty){padding-bottom:8px;padding-top:8px;}"]);
12
13
  export var StyledCommandPalleteHeader = styled.div.withConfig({
13
14
  displayName: "CommandPalletestyles__StyledCommandPalleteHeader",
14
15
  componentId: "sc-16m145d-2"
@@ -46,5 +47,15 @@ export var StyledHeading = styled.p.withConfig({
46
47
  export var StyledCommandPalleteItem = styled.li.withConfig({
47
48
  displayName: "CommandPalletestyles__StyledCommandPalleteItem",
48
49
  componentId: "sc-16m145d-10"
49
- })(["align-items:center;cursor:pointer;display:flex;padding-bottom:12px;padding-left:18px;padding-right:18px;padding-top:12px;position:relative;&:last-child{border-bottom-left-radius:10px;border-bottom-right-radius:10px;}&:hover{background-color:var(--color-theme-200);&::before{background-color:var(--color-primary);content:\"\";height:100%;left:0;position:absolute;width:2px;}}"]);
50
+ })(["align-items:center;cursor:pointer;display:flex;padding-bottom:12px;padding-left:18px;padding-right:18px;padding-top:12px;position:relative;background-color:", ";&:focus{background-color:var(--color-theme-200);}&::before{display:", ";background-color:var(--color-primary);content:\"\";height:100%;left:0;position:absolute;width:2px;}&:focus{outline:none;}"], function (_ref) {
51
+ var $selected = _ref.$selected;
52
+ return $selected ? "var(--color-theme-200)" : "transparent";
53
+ }, function (_ref2) {
54
+ var $selected = _ref2.$selected;
55
+ return $selected ? "block" : "none";
56
+ });
57
+ export var StyledSpinnerLoader = styled(SpinnerLoader).withConfig({
58
+ displayName: "CommandPalletestyles__StyledSpinnerLoader",
59
+ componentId: "sc-16m145d-11"
60
+ })(["margin-right:4px;"]);
50
61
  //# sourceMappingURL=CommandPallete.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPallete.styles.js","names":["styled","FontStyle","screen","StyledCommandPallete","div","StyledCommandPalleteWrapper","StyledCommandPalleteHeader","StyledSearchIcon","StyledInput","input","sm","StyledParameter","span","StyledActionWrapper","StyledIcon","StyledCommandPalleteList","ul","StyledHeading","p","StyledCommandPalleteItem","li"],"sources":["../../../../src/components/CommandPallete/CommandPallete.styles.ts"],"sourcesContent":["import styled from \"styled-components\";\nimport { FontStyle } from \"../FontStyle\";\nimport { screen } from \"../BreakPoints\";\n\nexport const StyledCommandPallete = styled.div`\n ${FontStyle}\n background-color: var(--page-paper-main);\n border-radius: 10px;\n box-sizing: border-box;\n max-width: 600px;\n`;\n\nexport const StyledCommandPalleteWrapper = styled.div`\n overflow-x: hidden;\n overflow-y: auto;\n max-height: 450px;\n`;\n\nexport const StyledCommandPalleteHeader = styled.div`\n align-items: center;\n display: flex;\n padding-bottom: 12px;\n padding-left: 16px;\n padding-right: 16px;\n padding-top: 12px;\n border-bottom: 1px solid var(--color-theme-400);\n`;\n\nexport const StyledSearchIcon = styled.div`\n margin-right: 8px;\n\n svg {\n vertical-align: middle;\n }\n`;\n\nexport const StyledInput = styled.input`\n all: unset;\n caret-color: var(--color-primary);\n color: var(--color-theme-900);\n width: 100%;\n\n ${screen.sm} {\n font-size: 32px;\n font-weight: 300;\n letter-spacing: 0.5px;\n line-height: 44px;\n }\n\n ::-webkit-outer-spin-button,\n ::-webkit-inner-spin-button {\n display: none;\n }\n\n ::placeholder {\n color: var(--color-theme-transparent-500);\n }\n`;\n\nexport const StyledParameter = styled.span`\n color: var(--color-theme-transparent-500);\n margin-right: 8px;\n\n ${screen.sm} {\n font-size: 32px;\n font-weight: 300;\n letter-spacing: 0.5px;\n line-height: 44px;\n }\n`;\n\nexport const StyledActionWrapper = styled.div`\n align-items: center;\n display: flex;\n gap: 8px;\n`;\n\nexport const StyledIcon = styled.div`\n margin-right: 8px;\n\n svg {\n vertical-align: middle;\n }\n`;\n\nexport const StyledCommandPalleteList = styled.ul`\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow: hidden;\n\n &:not(:first-child) {\n border-top: 1px solid var(--color-theme-400);\n }\n`;\n\nexport const StyledHeading = styled.p`\n font-size: 12px;\n margin-top: 12px;\n margin-bottom: 4px;\n font-weight: bold;\n padding-left: 18px;\n letter-spacing: 0.5px;\n color: var(--color-theme-600);\n`;\n\n// prettier-ignore\nexport const StyledCommandPalleteItem = styled.li`\n align-items: center;\n cursor: pointer;\n display: flex;\n padding-bottom: 12px;\n padding-left: 18px;\n padding-right: 18px;\n padding-top: 12px;\n position: relative;\n\n &:last-child {\n border-bottom-left-radius: 10px;\n border-bottom-right-radius: 10px;\n }\n\n &:hover {\n background-color: var(--color-theme-200);\n\n &::before {\n background-color: var(--color-primary);\n content: \"\";\n height: 100%;\n left: 0;\n position: absolute;\n width: 2px;\n }\n }\n`;\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,mBAAmB;AACtC,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,MAAM,QAAQ,gBAAgB;AAEvC,OAAO,IAAMC,oBAAoB,GAAGH,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,+GAC1CH,SAAS,CAKZ;AAED,OAAO,IAAMI,2BAA2B,GAAGL,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,2DAIpD;AAED,OAAO,IAAME,0BAA0B,GAAGN,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,iKAQnD;AAED,OAAO,IAAMG,gBAAgB,GAAGP,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,oDAMzC;AAED,OAAO,IAAMI,WAAW,GAAGR,MAAM,CAACS,KAAK;EAAA;EAAA;AAAA,qSAMnCP,MAAM,CAACQ,EAAE,CAeZ;AAED,OAAO,IAAMC,eAAe,GAAGX,MAAM,CAACY,IAAI;EAAA;EAAA;AAAA,8IAItCV,MAAM,CAACQ,EAAE,CAMZ;AAED,OAAO,IAAMG,mBAAmB,GAAGb,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,gDAI5C;AAED,OAAO,IAAMU,UAAU,GAAGd,MAAM,CAACI,GAAG;EAAA;EAAA;AAAA,oDAMnC;AAED,OAAO,IAAMW,wBAAwB,GAAGf,MAAM,CAACgB,EAAE;EAAA;EAAA;AAAA,iIAShD;AAED,OAAO,IAAMC,aAAa,GAAGjB,MAAM,CAACkB,CAAC;EAAA;EAAA;AAAA,8IAQpC;;AAED;AACA,OAAO,IAAMC,wBAAwB,GAAGnB,MAAM,CAACoB,EAAE;EAAA;EAAA;AAAA,8XA2BhD"}
1
+ {"version":3,"file":"CommandPallete.styles.js","names":["styled","FontStyle","screen","SpinnerLoader","StyledCommandPallete","div","StyledCommandPalleteWrapper","StyledCommandPalleteHeader","StyledSearchIcon","StyledInput","input","sm","StyledParameter","span","StyledActionWrapper","StyledIcon","StyledCommandPalleteList","ul","StyledHeading","p","StyledCommandPalleteItem","li","$selected","StyledSpinnerLoader"],"sources":["../../../../src/components/CommandPallete/CommandPallete.styles.ts"],"sourcesContent":["import styled from \"styled-components\";\nimport { FontStyle } from \"../FontStyle\";\nimport { screen } from \"../BreakPoints\";\nimport { SpinnerLoader } from \"../Loaders\";\n\nexport const StyledCommandPallete = styled.div`\n ${FontStyle}\n background-color: var(--page-paper-main);\n border-radius: 10px;\n box-sizing: border-box;\n max-width: 600px;\n`;\n\nexport const StyledCommandPalleteWrapper = styled.div`\n overflow-x: hidden;\n overflow-y: auto;\n max-height: 450px;\n\n &:not(:empty) {\n padding-bottom: 8px;\n padding-top: 8px;\n }\n`;\n\nexport const StyledCommandPalleteHeader = styled.div`\n align-items: center;\n display: flex;\n padding-bottom: 12px;\n padding-left: 16px;\n padding-right: 16px;\n padding-top: 12px;\n border-bottom: 1px solid var(--color-theme-400);\n`;\n\nexport const StyledSearchIcon = styled.div`\n margin-right: 8px;\n\n svg {\n vertical-align: middle;\n }\n`;\n\nexport const StyledInput = styled.input`\n all: unset;\n caret-color: var(--color-primary);\n color: var(--color-theme-900);\n width: 100%;\n\n ${screen.sm} {\n font-size: 32px;\n font-weight: 300;\n letter-spacing: 0.5px;\n line-height: 44px;\n }\n\n ::-webkit-outer-spin-button,\n ::-webkit-inner-spin-button {\n display: none;\n }\n\n ::placeholder {\n color: var(--color-theme-transparent-500);\n }\n`;\n\nexport const StyledParameter = styled.span`\n color: var(--color-theme-transparent-500);\n margin-right: 8px;\n\n ${screen.sm} {\n font-size: 32px;\n font-weight: 300;\n letter-spacing: 0.5px;\n line-height: 44px;\n }\n`;\n\nexport const StyledActionWrapper = styled.div`\n align-items: center;\n display: flex;\n gap: 8px;\n`;\n\nexport const StyledIcon = styled.div`\n margin-right: 8px;\n\n svg {\n vertical-align: middle;\n }\n`;\n\nexport const StyledCommandPalleteList = styled.ul`\n list-style-type: none;\n margin: 0;\n padding: 0;\n overflow: hidden;\n\n &:not(:first-child) {\n border-top: 1px solid var(--color-theme-400);\n }\n`;\n\nexport const StyledHeading = styled.p`\n font-size: 12px;\n margin-top: 12px;\n margin-bottom: 4px;\n font-weight: bold;\n padding-left: 18px;\n letter-spacing: 0.5px;\n color: var(--color-theme-600);\n`;\n\n// prettier-ignore\nexport const StyledCommandPalleteItem = styled.li<{$selected: boolean}>`\n align-items: center;\n cursor: pointer;\n display: flex;\n padding-bottom: 12px;\n padding-left: 18px;\n padding-right: 18px;\n padding-top: 12px;\n position: relative;\n background-color: ${({$selected}) => $selected ? \"var(--color-theme-200)\" : \"transparent\"};\n\n &:focus {\n background-color: var(--color-theme-200);\n }\n\n &::before {\n display: ${({$selected}) => $selected ? \"block\" : \"none\"};\n background-color: var(--color-primary);\n content: \"\";\n height: 100%;\n left: 0;\n position: absolute;\n width: 2px;\n }\n\n &:focus {\n outline: none;\n }\n`;\n\nexport const StyledSpinnerLoader = styled(SpinnerLoader)`\n margin-right: 4px;\n`;\n"],"mappings":"AAAA,OAAOA,MAAM,MAAM,mBAAmB;AACtC,SAASC,SAAS,QAAQ,cAAc;AACxC,SAASC,MAAM,QAAQ,gBAAgB;AACvC,SAASC,aAAa,QAAQ,YAAY;AAE1C,OAAO,IAAMC,oBAAoB,GAAGJ,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,+GAC1CJ,SAAS,CAKZ;AAED,OAAO,IAAMK,2BAA2B,GAAGN,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,6GASpD;AAED,OAAO,IAAME,0BAA0B,GAAGP,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,iKAQnD;AAED,OAAO,IAAMG,gBAAgB,GAAGR,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,oDAMzC;AAED,OAAO,IAAMI,WAAW,GAAGT,MAAM,CAACU,KAAK;EAAA;EAAA;AAAA,qSAMnCR,MAAM,CAACS,EAAE,CAeZ;AAED,OAAO,IAAMC,eAAe,GAAGZ,MAAM,CAACa,IAAI;EAAA;EAAA;AAAA,8IAItCX,MAAM,CAACS,EAAE,CAMZ;AAED,OAAO,IAAMG,mBAAmB,GAAGd,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,gDAI5C;AAED,OAAO,IAAMU,UAAU,GAAGf,MAAM,CAACK,GAAG;EAAA;EAAA;AAAA,oDAMnC;AAED,OAAO,IAAMW,wBAAwB,GAAGhB,MAAM,CAACiB,EAAE;EAAA;EAAA;AAAA,iIAShD;AAED,OAAO,IAAMC,aAAa,GAAGlB,MAAM,CAACmB,CAAC;EAAA;EAAA;AAAA,8IAQpC;;AAED;AACA,OAAO,IAAMC,wBAAwB,GAAGpB,MAAM,CAACqB,EAAE;EAAA;EAAA;AAAA,2WAS3B;EAAA,IAAEC,SAAS,QAATA,SAAS;EAAA,OAAMA,SAAS,GAAG,wBAAwB,GAAG,aAAa;AAAA,GAO5E;EAAA,IAAEA,SAAS,SAATA,SAAS;EAAA,OAAMA,SAAS,GAAG,OAAO,GAAG,MAAM;AAAA,EAY3D;AAED,OAAO,IAAMC,mBAAmB,GAAGvB,MAAM,CAACG,aAAa,CAAC;EAAA;EAAA;AAAA,yBAEvD"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteHeader.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,WAAW,EAAU,MAAM,OAAO,CAAC;AAenD,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,oBAAoB;yDAK9B,yBAAyB;;CAuG3B,CAAC"}
1
+ {"version":3,"file":"CommandPalleteHeader.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteHeader.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,WAAW,EAAU,MAAM,OAAO,CAAC;AAgBnD,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,CAAC,CAAC,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;IACzD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AAED,eAAO,MAAM,oBAAoB;yDAK9B,yBAAyB;;CA2H3B,CAAC"}
@@ -1,13 +1,10 @@
1
1
  import React, { useRef } from "react";
2
2
  import { IconButton } from "../IconButton";
3
3
  import { CloseIcon, HashtagIcon, SearchLargeIcon } from "../Icons";
4
- import { SpinnerLoader } from "../Loaders";
5
4
  import { Tooltip } from "../Tooltip";
6
- import { StyledActionWrapper, StyledCommandPalleteHeader, StyledInput, StyledParameter, StyledSearchIcon } from "./CommandPallete.styles";
5
+ import { StyledActionWrapper, StyledCommandPalleteHeader, StyledInput, StyledParameter, StyledSearchIcon, StyledSpinnerLoader } from "./CommandPallete.styles";
6
+ import { useSelectedContext } from "./context";
7
7
  import { useModeContext } from "./context/ModeContext";
8
-
9
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
10
-
11
8
  export var CommandPalleteHeader = function CommandPalleteHeader(_ref) {
12
9
  var search = _ref.search,
13
10
  handleChange = _ref.handleChange,
@@ -18,6 +15,8 @@ export var CommandPalleteHeader = function CommandPalleteHeader(_ref) {
18
15
  var _useModeContext = useModeContext(),
19
16
  mode = _useModeContext.mode,
20
17
  setMode = _useModeContext.setMode;
18
+ var _useSelectedContext = useSelectedContext(),
19
+ setSelected = _useSelectedContext.setSelected;
21
20
  var focusInput = function focusInput() {
22
21
  if (inputRef && inputRef.current) {
23
22
  inputRef.current.focus();
@@ -34,10 +33,20 @@ export var CommandPalleteHeader = function CommandPalleteHeader(_ref) {
34
33
  }, /*#__PURE__*/React.createElement(StyledSearchIcon, null, /*#__PURE__*/React.createElement(SearchLargeIcon, null)), mode === "id" ? /*#__PURE__*/React.createElement(StyledParameter, null, "ID#:") : null, /*#__PURE__*/React.createElement(StyledInput, {
35
34
  ref: inputRef,
36
35
  autoFocus: true,
36
+ placeholder: mode === "id" ? "22" : "Search or jump to",
37
37
  type: mode === "id" ? "number" : "text",
38
+ "aria-autocomplete": "list",
38
39
  autoCapitalize: "none",
39
- autoComplete: "none",
40
+ autoComplete: "off",
41
+ autoCorrect: "off",
42
+ role: "combobox",
43
+ spellCheck: false,
40
44
  value: search,
45
+ onKeyDown: function onKeyDown(e) {
46
+ if (e.key === "Backspace" && mode === "id" && search.length === 0) {
47
+ setMode("default");
48
+ }
49
+ },
41
50
  onChange: function onChange(e) {
42
51
  var inputText = e.target.value;
43
52
  if (inputText.startsWith("#")) {
@@ -45,18 +54,20 @@ export var CommandPalleteHeader = function CommandPalleteHeader(_ref) {
45
54
  clearInput();
46
55
  }
47
56
  handleChange(e);
57
+ setSelected(0);
48
58
  },
49
59
  onPaste: function onPaste(e) {
50
60
  var pastedText = e.clipboardData.getData("text");
51
61
  if (pastedText.startsWith("#")) {
52
62
  setMode("id");
53
63
  }
54
- },
55
- placeholder: mode === "id" ? "22" : "Search or jump to"
56
- }), /*#__PURE__*/React.createElement(StyledActionWrapper, null, loading ? /*#__PURE__*/React.createElement(SpinnerLoader, {
57
- style: {
58
- marginRight: "4px"
59
64
  }
65
+ }), /*#__PURE__*/React.createElement(StyledActionWrapper, null, loading ? /*#__PURE__*/React.createElement(StyledSpinnerLoader, {
66
+ "aria-busy": true,
67
+ "aria-label": "Loading...",
68
+ "aria-valuemax": 100,
69
+ "aria-valuemin": 0,
70
+ role: "progressbar"
60
71
  }) : null, mode !== "id" && search.length === 0 ? /*#__PURE__*/React.createElement(Tooltip, {
61
72
  title: "Search by ID",
62
73
  placement: "top"
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteHeader.js","names":["React","useRef","IconButton","CloseIcon","HashtagIcon","SearchLargeIcon","SpinnerLoader","Tooltip","StyledActionWrapper","StyledCommandPalleteHeader","StyledInput","StyledParameter","StyledSearchIcon","useModeContext","CommandPalleteHeader","search","handleChange","loading","onChangeSearch","inputRef","mode","setMode","focusInput","current","focus","clearInput","value","e","inputText","target","startsWith","pastedText","clipboardData","getData","marginRight","length","key","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteHeader.tsx"],"sourcesContent":["import React, { ChangeEvent, useRef } from \"react\";\nimport { IconButton } from \"../IconButton\";\nimport { CloseIcon, HashtagIcon, SearchLargeIcon } from \"../Icons\";\nimport { SpinnerLoader } from \"../Loaders\";\nimport { Tooltip } from \"../Tooltip\";\nimport {\n StyledActionWrapper,\n StyledCommandPalleteHeader,\n StyledInput,\n StyledParameter,\n StyledSearchIcon,\n} from \"./CommandPallete.styles\";\nimport { useModeContext } from \"./context/ModeContext\";\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface CommandPalleteHeaderProps {\n search: string;\n handleChange: (e: ChangeEvent<HTMLInputElement>) => void;\n loading?: boolean;\n onChangeSearch: (value: string) => void;\n}\n\nexport const CommandPalleteHeader = ({\n search,\n handleChange,\n loading = false,\n onChangeSearch,\n}: CommandPalleteHeaderProps) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const { mode, setMode } = useModeContext();\n\n const focusInput = () => {\n if (inputRef && inputRef.current) {\n inputRef.current.focus();\n }\n };\n\n const clearInput = () => {\n if (inputRef && inputRef.current) {\n inputRef.current.value = \"\";\n onChangeSearch(\"\");\n }\n };\n\n return (\n <StyledCommandPalleteHeader className=\"cp-header\">\n <StyledSearchIcon>\n <SearchLargeIcon />\n </StyledSearchIcon>\n\n {mode === \"id\" ? <StyledParameter>ID#:</StyledParameter> : null}\n\n <StyledInput\n ref={inputRef}\n autoFocus\n type={mode === \"id\" ? \"number\" : \"text\"}\n autoCapitalize=\"none\"\n autoComplete=\"none\"\n value={search}\n onChange={(e) => {\n const inputText = e.target.value;\n\n if (inputText.startsWith(\"#\")) {\n setMode(\"id\");\n clearInput();\n }\n handleChange(e);\n }}\n onPaste={(e) => {\n const pastedText = e.clipboardData.getData(\"text\");\n\n if (pastedText.startsWith(\"#\")) {\n setMode(\"id\");\n }\n }}\n placeholder={mode === \"id\" ? \"22\" : \"Search or jump to\"}\n />\n\n <StyledActionWrapper>\n {loading ? <SpinnerLoader style={{ marginRight: \"4px\" }} /> : null}\n\n {mode !== \"id\" && search.length === 0 ? (\n <Tooltip title=\"Search by ID\" placement=\"top\">\n <IconButton\n onKeyPress={(e) => {\n if (e.key === \"Enter\") {\n setMode(\"id\");\n clearInput();\n focusInput();\n }\n }}\n onClick={() => {\n setMode(\"id\");\n clearInput();\n focusInput();\n }}\n variant=\"text gray\"\n >\n <HashtagIcon />\n </IconButton>\n </Tooltip>\n ) : null}\n\n {search.length > 0 || mode === \"id\" ? (\n <Tooltip\n title={mode === \"id\" ? \"Close ID mode\" : \"Clear\"}\n placement=\"top\"\n >\n <IconButton\n variant=\"text gray\"\n onKeyPress={(e) => {\n if (e.key === \"Enter\") {\n setMode(\"default\");\n clearInput();\n focusInput();\n }\n }}\n onClick={() => {\n setMode(\"default\");\n clearInput();\n focusInput();\n }}\n >\n <CloseIcon />\n </IconButton>\n </Tooltip>\n ) : null}\n </StyledActionWrapper>\n </StyledCommandPalleteHeader>\n );\n};\n\nCommandPalleteHeader.displayName = \"CommandPalleteItem\";\n"],"mappings":"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"}
1
+ {"version":3,"file":"CommandPalleteHeader.js","names":["React","useRef","IconButton","CloseIcon","HashtagIcon","SearchLargeIcon","Tooltip","StyledActionWrapper","StyledCommandPalleteHeader","StyledInput","StyledParameter","StyledSearchIcon","StyledSpinnerLoader","useSelectedContext","useModeContext","CommandPalleteHeader","search","handleChange","loading","onChangeSearch","inputRef","mode","setMode","setSelected","focusInput","current","focus","clearInput","value","e","key","length","inputText","target","startsWith","pastedText","clipboardData","getData","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteHeader.tsx"],"sourcesContent":["import React, { ChangeEvent, useRef } from \"react\";\nimport { IconButton } from \"../IconButton\";\nimport { CloseIcon, HashtagIcon, SearchLargeIcon } from \"../Icons\";\nimport { Tooltip } from \"../Tooltip\";\nimport {\n StyledActionWrapper,\n StyledCommandPalleteHeader,\n StyledInput,\n StyledParameter,\n StyledSearchIcon,\n StyledSpinnerLoader,\n} from \"./CommandPallete.styles\";\nimport { useSelectedContext } from \"./context\";\n\nimport { useModeContext } from \"./context/ModeContext\";\n\nexport interface CommandPalleteHeaderProps {\n search: string;\n handleChange: (e: ChangeEvent<HTMLInputElement>) => void;\n loading?: boolean;\n onChangeSearch: (value: string) => void;\n}\n\nexport const CommandPalleteHeader = ({\n search,\n handleChange,\n loading = false,\n onChangeSearch,\n}: CommandPalleteHeaderProps) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const { mode, setMode } = useModeContext();\n const { setSelected } = useSelectedContext();\n\n const focusInput = () => {\n if (inputRef && inputRef.current) {\n inputRef.current.focus();\n }\n };\n\n const clearInput = () => {\n if (inputRef && inputRef.current) {\n inputRef.current.value = \"\";\n onChangeSearch(\"\");\n }\n };\n\n return (\n <StyledCommandPalleteHeader className=\"cp-header\">\n <StyledSearchIcon>\n <SearchLargeIcon />\n </StyledSearchIcon>\n\n {mode === \"id\" ? <StyledParameter>ID#:</StyledParameter> : null}\n\n <StyledInput\n ref={inputRef}\n autoFocus\n placeholder={mode === \"id\" ? \"22\" : \"Search or jump to\"}\n type={mode === \"id\" ? \"number\" : \"text\"}\n aria-autocomplete=\"list\"\n autoCapitalize=\"none\"\n autoComplete=\"off\"\n autoCorrect=\"off\"\n role=\"combobox\"\n spellCheck={false}\n value={search}\n onKeyDown={(e) => {\n if (e.key === \"Backspace\" && mode === \"id\" && search.length === 0) {\n setMode(\"default\");\n }\n }}\n onChange={(e) => {\n const inputText = e.target.value;\n\n if (inputText.startsWith(\"#\")) {\n setMode(\"id\");\n clearInput();\n }\n\n handleChange(e);\n setSelected(0);\n }}\n onPaste={(e) => {\n const pastedText = e.clipboardData.getData(\"text\");\n\n if (pastedText.startsWith(\"#\")) {\n setMode(\"id\");\n }\n }}\n />\n\n <StyledActionWrapper>\n {loading ? (\n <StyledSpinnerLoader\n aria-busy={true}\n aria-label=\"Loading...\"\n aria-valuemax={100}\n aria-valuemin={0}\n role=\"progressbar\"\n />\n ) : null}\n\n {mode !== \"id\" && search.length === 0 ? (\n <Tooltip title=\"Search by ID\" placement=\"top\">\n <IconButton\n onKeyPress={(e) => {\n if (e.key === \"Enter\") {\n setMode(\"id\");\n clearInput();\n focusInput();\n }\n }}\n onClick={() => {\n setMode(\"id\");\n clearInput();\n focusInput();\n }}\n variant=\"text gray\"\n >\n <HashtagIcon />\n </IconButton>\n </Tooltip>\n ) : null}\n\n {search.length > 0 || mode === \"id\" ? (\n <Tooltip\n title={mode === \"id\" ? \"Close ID mode\" : \"Clear\"}\n placement=\"top\"\n >\n <IconButton\n variant=\"text gray\"\n onKeyPress={(e) => {\n if (e.key === \"Enter\") {\n setMode(\"default\");\n clearInput();\n focusInput();\n }\n }}\n onClick={() => {\n setMode(\"default\");\n clearInput();\n focusInput();\n }}\n >\n <CloseIcon />\n </IconButton>\n </Tooltip>\n ) : null}\n </StyledActionWrapper>\n </StyledCommandPalleteHeader>\n );\n};\n\nCommandPalleteHeader.displayName = \"CommandPalleteItem\";\n"],"mappings":"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"}
@@ -1,11 +1,10 @@
1
- import { ReactNode } from "react";
2
- export interface CommandPalleteItemProps {
1
+ import React, { HTMLAttributes, ReactNode } from "react";
2
+ export interface CommandPalleteItemProps extends HTMLAttributes<HTMLLIElement> {
3
3
  title: string;
4
4
  renderIcon: () => ReactNode;
5
5
  className?: string;
6
+ index?: number;
7
+ selected?: number;
6
8
  }
7
- export declare const CommandPalleteItem: {
8
- ({ title, renderIcon, className, }: CommandPalleteItemProps): JSX.Element;
9
- displayName: string;
10
- };
9
+ export declare const CommandPalleteItem: React.ForwardRefExoticComponent<CommandPalleteItemProps & React.RefAttributes<HTMLLIElement>>;
11
10
  //# sourceMappingURL=CommandPalleteItem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteItem.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteItem.tsx"],"names":[],"mappings":"AACA,OAAc,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKzC,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,kBAAkB;wCAI5B,uBAAuB;;CAmBzB,CAAC"}
1
+ {"version":3,"file":"CommandPalleteItem.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteItem.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,EAAc,cAAc,EAAE,SAAS,EAAO,MAAM,OAAO,CAAC;AAK1E,MAAM,WAAW,uBAAwB,SAAQ,cAAc,CAAC,aAAa,CAAC;IAC5E,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,SAAS,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,kBAAkB,+FAkC9B,CAAC"}
@@ -1,24 +1,37 @@
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ var _excluded = ["title", "renderIcon", "className", "index"];
1
4
  import classNames from "classnames";
2
- import React from "react";
5
+ import React, { forwardRef } from "react";
3
6
  import { Typography } from "../Typography/Typography";
4
7
  import { StyledCommandPalleteItem, StyledIcon } from "./CommandPallete.styles";
5
-
6
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
7
-
8
- export var CommandPalleteItem = function CommandPalleteItem(_ref) {
8
+ import { useSelectedContext } from "./context";
9
+ export var CommandPalleteItem = /*#__PURE__*/forwardRef(function (_ref, ref) {
9
10
  var title = _ref.title,
10
11
  renderIcon = _ref.renderIcon,
11
- className = _ref.className;
12
+ className = _ref.className,
13
+ index = _ref.index,
14
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
12
15
  var icon = renderIcon();
13
- return /*#__PURE__*/React.createElement(StyledCommandPalleteItem, {
16
+ var _useSelectedContext = useSelectedContext(),
17
+ selected = _useSelectedContext.selected,
18
+ setSelected = _useSelectedContext.setSelected;
19
+ var onMouseOver = function onMouseOver() {
20
+ setSelected(index);
21
+ };
22
+ return /*#__PURE__*/React.createElement(StyledCommandPalleteItem, _extends({}, rest, {
23
+ ref: ref,
14
24
  className: classNames("cp-item", className),
15
- tabIndex: 1
16
- }, /*#__PURE__*/React.createElement(StyledIcon, null, icon), /*#__PURE__*/React.createElement(Typography, {
25
+ tabIndex: 1,
26
+ "aria-selected": selected === index,
27
+ onMouseOver: onMouseOver,
28
+ $selected: index === selected
29
+ }), /*#__PURE__*/React.createElement(StyledIcon, null, icon), /*#__PURE__*/React.createElement(Typography, {
17
30
  overflow: "truncate",
18
31
  whitespace: "no-wrap",
19
32
  variant: "Body 1",
20
33
  color: "primary"
21
34
  }, title));
22
- };
35
+ });
23
36
  CommandPalleteItem.displayName = "CommandPalleteItem";
24
37
  //# sourceMappingURL=CommandPalleteItem.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteItem.js","names":["classNames","React","Typography","StyledCommandPalleteItem","StyledIcon","CommandPalleteItem","title","renderIcon","className","icon","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteItem.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport React, { ReactNode } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { StyledCommandPalleteItem, StyledIcon } from \"./CommandPallete.styles\";\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface CommandPalleteItemProps {\n title: string;\n renderIcon: () => ReactNode;\n className?: string;\n}\n\nexport const CommandPalleteItem = ({\n title,\n renderIcon,\n className,\n}: CommandPalleteItemProps) => {\n const icon = renderIcon();\n\n return (\n <StyledCommandPalleteItem\n className={classNames(\"cp-item\", className)}\n tabIndex={1}\n >\n <StyledIcon>{icon}</StyledIcon>\n <Typography\n overflow=\"truncate\"\n whitespace=\"no-wrap\"\n variant=\"Body 1\"\n color=\"primary\"\n >\n {title}\n </Typography>\n </StyledCommandPalleteItem>\n );\n};\n\nCommandPalleteItem.displayName = \"CommandPalleteItem\";\n"],"mappings":"AAAA,OAAOA,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,MAAqB,OAAO;AACxC,SAASC,UAAU,QAAQ,0BAA0B;AACrD,SAASC,wBAAwB,EAAEC,UAAU,QAAQ,yBAAyB;;AAE9E;;AAOA,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAIA;EAAA,IAH7BC,KAAK,QAALA,KAAK;IACLC,UAAU,QAAVA,UAAU;IACVC,SAAS,QAATA,SAAS;EAET,IAAMC,IAAI,GAAGF,UAAU,EAAE;EAEzB,oBACE,oBAAC,wBAAwB;IACvB,SAAS,EAAEP,UAAU,CAAC,SAAS,EAAEQ,SAAS,CAAE;IAC5C,QAAQ,EAAE;EAAE,gBAEZ,oBAAC,UAAU,QAAEC,IAAI,CAAc,eAC/B,oBAAC,UAAU;IACT,QAAQ,EAAC,UAAU;IACnB,UAAU,EAAC,SAAS;IACpB,OAAO,EAAC,QAAQ;IAChB,KAAK,EAAC;EAAS,GAEdH,KAAK,CACK,CACY;AAE/B,CAAC;AAEDD,kBAAkB,CAACK,WAAW,GAAG,oBAAoB"}
1
+ {"version":3,"file":"CommandPalleteItem.js","names":["classNames","React","forwardRef","Typography","StyledCommandPalleteItem","StyledIcon","useSelectedContext","CommandPalleteItem","ref","title","renderIcon","className","index","rest","icon","selected","setSelected","onMouseOver","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteItem.tsx"],"sourcesContent":["import classNames from \"classnames\";\nimport React, { forwardRef, HTMLAttributes, ReactNode, Ref } from \"react\";\nimport { Typography } from \"../Typography/Typography\";\nimport { StyledCommandPalleteItem, StyledIcon } from \"./CommandPallete.styles\";\nimport { useSelectedContext } from \"./context\";\n\nexport interface CommandPalleteItemProps extends HTMLAttributes<HTMLLIElement> {\n title: string;\n renderIcon: () => ReactNode;\n className?: string;\n index?: number;\n selected?: number;\n}\n\nexport const CommandPalleteItem = forwardRef(\n (\n { title, renderIcon, className, index, ...rest }: CommandPalleteItemProps,\n ref: Ref<HTMLLIElement>\n ) => {\n const icon = renderIcon();\n const { selected, setSelected } = useSelectedContext();\n\n const onMouseOver = () => {\n setSelected(index as number);\n };\n\n return (\n <StyledCommandPalleteItem\n {...rest}\n ref={ref}\n className={classNames(\"cp-item\", className)}\n tabIndex={1}\n aria-selected={selected === index}\n onMouseOver={onMouseOver}\n $selected={index === selected}\n >\n <StyledIcon>{icon}</StyledIcon>\n <Typography\n overflow=\"truncate\"\n whitespace=\"no-wrap\"\n variant=\"Body 1\"\n color=\"primary\"\n >\n {title}\n </Typography>\n </StyledCommandPalleteItem>\n );\n }\n);\n\nCommandPalleteItem.displayName = \"CommandPalleteItem\";\n"],"mappings":";;;AAAA,OAAOA,UAAU,MAAM,YAAY;AACnC,OAAOC,KAAK,IAAIC,UAAU,QAAwC,OAAO;AACzE,SAASC,UAAU,QAAQ,0BAA0B;AACrD,SAASC,wBAAwB,EAAEC,UAAU,QAAQ,yBAAyB;AAC9E,SAASC,kBAAkB,QAAQ,WAAW;AAU9C,OAAO,IAAMC,kBAAkB,gBAAGL,UAAU,CAC1C,gBAEEM,GAAuB,EACpB;EAAA,IAFDC,KAAK,QAALA,KAAK;IAAEC,UAAU,QAAVA,UAAU;IAAEC,SAAS,QAATA,SAAS;IAAEC,KAAK,QAALA,KAAK;IAAKC,IAAI;EAG9C,IAAMC,IAAI,GAAGJ,UAAU,EAAE;EACzB,0BAAkCJ,kBAAkB,EAAE;IAA9CS,QAAQ,uBAARA,QAAQ;IAAEC,WAAW,uBAAXA,WAAW;EAE7B,IAAMC,WAAW,GAAG,SAAdA,WAAW,GAAS;IACxBD,WAAW,CAACJ,KAAK,CAAW;EAC9B,CAAC;EAED,oBACE,oBAAC,wBAAwB,eACnBC,IAAI;IACR,GAAG,EAAEL,GAAI;IACT,SAAS,EAAER,UAAU,CAAC,SAAS,EAAEW,SAAS,CAAE;IAC5C,QAAQ,EAAE,CAAE;IACZ,iBAAeI,QAAQ,KAAKH,KAAM;IAClC,WAAW,EAAEK,WAAY;IACzB,SAAS,EAAEL,KAAK,KAAKG;EAAS,iBAE9B,oBAAC,UAAU,QAAED,IAAI,CAAc,eAC/B,oBAAC,UAAU;IACT,QAAQ,EAAC,UAAU;IACnB,UAAU,EAAC,SAAS;IACpB,OAAO,EAAC,QAAQ;IAChB,KAAK,EAAC;EAAS,GAEdL,KAAK,CACK,CACY;AAE/B,CAAC,CACF;AAEDF,kBAAkB,CAACW,WAAW,GAAG,oBAAoB"}
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteList.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteList.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAOjD,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,kBAAkB;sCAI5B,kBAAkB,uBAAuB,CAAC;;CAO5C,CAAC"}
1
+ {"version":3,"file":"CommandPalleteList.d.ts","sourceRoot":"","sources":["../../../../src/components/CommandPallete/CommandPalleteList.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAMjD,MAAM,WAAW,uBAAuB;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,kBAAkB;sCAI5B,kBAAkB,uBAAuB,CAAC;;CAQ5C,CAAC"}
@@ -1,8 +1,5 @@
1
1
  import React from "react";
2
2
  import { StyledCommandPalleteList, StyledHeading } from "./CommandPallete.styles";
3
-
4
- // eslint-disable-next-line @typescript-eslint/no-empty-interface
5
-
6
3
  export var CommandPalleteList = function CommandPalleteList(_ref) {
7
4
  var children = _ref.children,
8
5
  heading = _ref.heading,
@@ -10,7 +7,8 @@ export var CommandPalleteList = function CommandPalleteList(_ref) {
10
7
  visible = _ref$visible === void 0 ? false : _ref$visible;
11
8
  return visible ? /*#__PURE__*/React.createElement(StyledCommandPalleteList, {
12
9
  className: "cp-list",
13
- tabIndex: -1
10
+ tabIndex: -1,
11
+ role: "listbox"
14
12
  }, heading ? /*#__PURE__*/React.createElement(StyledHeading, {
15
13
  tabIndex: -1
16
14
  }, heading) : null, children) : null;
@@ -1 +1 @@
1
- {"version":3,"file":"CommandPalleteList.js","names":["React","StyledCommandPalleteList","StyledHeading","CommandPalleteList","children","heading","visible","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteList.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport {\n StyledCommandPalleteList,\n StyledHeading,\n} from \"./CommandPallete.styles\";\n\n// eslint-disable-next-line @typescript-eslint/no-empty-interface\nexport interface CommandPalleteListProps {\n heading?: string;\n visible?: boolean;\n}\n\nexport const CommandPalleteList = ({\n children,\n heading,\n visible = false,\n}: PropsWithChildren<CommandPalleteListProps>) => {\n return visible ? (\n <StyledCommandPalleteList className=\"cp-list\" tabIndex={-1}>\n {heading ? <StyledHeading tabIndex={-1}>{heading}</StyledHeading> : null}\n {children}\n </StyledCommandPalleteList>\n ) : null;\n};\n\nCommandPalleteList.displayName = \"CommandPalleteList\";\n"],"mappings":"AAAA,OAAOA,KAAK,MAA6B,OAAO;AAChD,SACEC,wBAAwB,EACxBC,aAAa,QACR,yBAAyB;;AAEhC;;AAMA,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAImB;EAAA,IAHhDC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IAAA,oBACPC,OAAO;IAAPA,OAAO,6BAAG,KAAK;EAEf,OAAOA,OAAO,gBACZ,oBAAC,wBAAwB;IAAC,SAAS,EAAC,SAAS;IAAC,QAAQ,EAAE,CAAC;EAAE,GACxDD,OAAO,gBAAG,oBAAC,aAAa;IAAC,QAAQ,EAAE,CAAC;EAAE,GAAEA,OAAO,CAAiB,GAAG,IAAI,EACvED,QAAQ,CACgB,GACzB,IAAI;AACV,CAAC;AAEDD,kBAAkB,CAACI,WAAW,GAAG,oBAAoB"}
1
+ {"version":3,"file":"CommandPalleteList.js","names":["React","StyledCommandPalleteList","StyledHeading","CommandPalleteList","children","heading","visible","displayName"],"sources":["../../../../src/components/CommandPallete/CommandPalleteList.tsx"],"sourcesContent":["import React, { PropsWithChildren } from \"react\";\nimport {\n StyledCommandPalleteList,\n StyledHeading,\n} from \"./CommandPallete.styles\";\n\nexport interface CommandPalleteListProps {\n heading?: string;\n visible?: boolean;\n}\n\nexport const CommandPalleteList = ({\n children,\n heading,\n visible = false,\n}: PropsWithChildren<CommandPalleteListProps>) => {\n return visible ? (\n <StyledCommandPalleteList className=\"cp-list\" tabIndex={-1} role=\"listbox\">\n {heading ? <StyledHeading tabIndex={-1}>{heading}</StyledHeading> : null}\n\n {children}\n </StyledCommandPalleteList>\n ) : null;\n};\n\nCommandPalleteList.displayName = \"CommandPalleteList\";\n"],"mappings":"AAAA,OAAOA,KAAK,MAA6B,OAAO;AAChD,SACEC,wBAAwB,EACxBC,aAAa,QACR,yBAAyB;AAOhC,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAImB;EAAA,IAHhDC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IAAA,oBACPC,OAAO;IAAPA,OAAO,6BAAG,KAAK;EAEf,OAAOA,OAAO,gBACZ,oBAAC,wBAAwB;IAAC,SAAS,EAAC,SAAS;IAAC,QAAQ,EAAE,CAAC,CAAE;IAAC,IAAI,EAAC;EAAS,GACvED,OAAO,gBAAG,oBAAC,aAAa;IAAC,QAAQ,EAAE,CAAC;EAAE,GAAEA,OAAO,CAAiB,GAAG,IAAI,EAEvED,QAAQ,CACgB,GACzB,IAAI;AACV,CAAC;AAEDD,kBAAkB,CAACI,WAAW,GAAG,oBAAoB"}
@@ -3,8 +3,8 @@ interface ModeContextProps {
3
3
  mode: string;
4
4
  setMode: (value: string) => void;
5
5
  }
6
- declare const ModeContext: import("react").Context<ModeContextProps>;
6
+ export declare const ModeContext: import("react").Context<ModeContextProps>;
7
7
  export declare const ModeContextProvider: import("react").Provider<ModeContextProps>;
8
8
  export declare const useModeContext: () => ModeContextProps;
9
- export default ModeContext;
9
+ export {};
10
10
  //# sourceMappingURL=ModeContext.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ModeContext.d.ts","sourceRoot":"","sources":["../../../../../src/components/CommandPallete/context/ModeContext.tsx"],"names":[],"mappings":";AAEA,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAED,QAAA,MAAM,WAAW,2CAGf,CAAC;AAEH,eAAO,MAAM,mBAAmB,4CAAuB,CAAC;AAExD,eAAO,MAAM,cAAc,QAAO,gBAA2C,CAAC;AAE9E,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"ModeContext.d.ts","sourceRoot":"","sources":["../../../../../src/components/CommandPallete/context/ModeContext.tsx"],"names":[],"mappings":";AAEA,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClC;AAED,eAAO,MAAM,WAAW,2CAGtB,CAAC;AAEH,eAAO,MAAM,mBAAmB,4CAAuB,CAAC;AAExD,eAAO,MAAM,cAAc,QAAO,gBAA2C,CAAC"}