@bigbinary/neeto-molecules 4.1.68 → 4.1.70

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 (65) hide show
  1. package/dist/AuditLogs.js +1 -0
  2. package/dist/AuditLogs.js.map +1 -1
  3. package/dist/cjs/AuditLogs.js +1 -0
  4. package/dist/cjs/AuditLogs.js.map +1 -1
  5. package/dist/cjs/v2/AuditLogs.js +24 -26
  6. package/dist/cjs/v2/AuditLogs.js.map +1 -1
  7. package/dist/cjs/v2/Container.js +8 -1
  8. package/dist/cjs/v2/Container.js.map +1 -1
  9. package/dist/cjs/v2/FloatingActionMenu.js +433 -536
  10. package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
  11. package/dist/cjs/v2/MenuBar.js +51 -37
  12. package/dist/cjs/v2/MenuBar.js.map +1 -1
  13. package/dist/cjs/v2/Search.js +9 -19
  14. package/dist/cjs/v2/Search.js.map +1 -1
  15. package/dist/cjs/v2/StickyRibbonsContainer.js +79 -37
  16. package/dist/cjs/v2/StickyRibbonsContainer.js.map +1 -1
  17. package/dist/v2/AuditLogs.js +24 -26
  18. package/dist/v2/AuditLogs.js.map +1 -1
  19. package/dist/v2/Container.js +8 -1
  20. package/dist/v2/Container.js.map +1 -1
  21. package/dist/v2/FloatingActionMenu.js +436 -539
  22. package/dist/v2/FloatingActionMenu.js.map +1 -1
  23. package/dist/v2/MenuBar.js +51 -37
  24. package/dist/v2/MenuBar.js.map +1 -1
  25. package/dist/v2/Search.js +11 -21
  26. package/dist/v2/Search.js.map +1 -1
  27. package/dist/v2/StickyRibbonsContainer.js +81 -39
  28. package/dist/v2/StickyRibbonsContainer.js.map +1 -1
  29. package/package.json +7 -7
  30. package/src/translations/ar.json +37 -36
  31. package/src/translations/bg.json +37 -36
  32. package/src/translations/ca.json +37 -36
  33. package/src/translations/cs.json +37 -36
  34. package/src/translations/da.json +37 -36
  35. package/src/translations/de.json +37 -36
  36. package/src/translations/en.json +34 -34
  37. package/src/translations/es-MX.json +37 -36
  38. package/src/translations/es.json +37 -36
  39. package/src/translations/et.json +37 -36
  40. package/src/translations/fi.json +37 -36
  41. package/src/translations/fil.json +37 -36
  42. package/src/translations/fr.json +37 -36
  43. package/src/translations/he.json +37 -36
  44. package/src/translations/hi.json +37 -36
  45. package/src/translations/hr.json +37 -36
  46. package/src/translations/hu.json +37 -36
  47. package/src/translations/id.json +37 -36
  48. package/src/translations/it.json +37 -36
  49. package/src/translations/ja.json +37 -36
  50. package/src/translations/ko.json +37 -36
  51. package/src/translations/nl.json +37 -36
  52. package/src/translations/pl.json +37 -36
  53. package/src/translations/pt-BR.json +37 -36
  54. package/src/translations/pt.json +37 -36
  55. package/src/translations/ro.json +37 -36
  56. package/src/translations/ru.json +37 -36
  57. package/src/translations/sk.json +37 -36
  58. package/src/translations/sl.json +37 -36
  59. package/src/translations/sv.json +37 -36
  60. package/src/translations/th.json +37 -36
  61. package/src/translations/tr.json +37 -36
  62. package/src/translations/uk.json +37 -36
  63. package/src/translations/vi.json +37 -36
  64. package/src/translations/zh-CN.json +37 -36
  65. package/src/translations/zh-TW.json +37 -36
@@ -1,17 +1,17 @@
1
1
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
2
2
  import { createElement, useRef } from 'react';
3
+ import { Button, Typography, Input } from '@bigbinary/neeto-atoms';
3
4
  import classnames from 'classnames';
4
5
  import { usePrefersReducedMotion } from '@bigbinary/neeto-commons-frontend/react-utils';
5
6
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
6
- import { Button, Input } from '@bigbinary/neeto-atoms';
7
7
  import { jsx, jsxs } from 'react/jsx-runtime';
8
8
  import { P as Plus } from '../plus-clM1IC_E.js';
9
9
  import { noop } from '@bigbinary/neeto-cist';
10
10
  import { joinHyphenCase } from '@bigbinary/neeto-commons-frontend/utils/general';
11
11
  import { Link } from 'react-router-dom';
12
12
  import { useTranslation } from 'react-i18next';
13
- import { S as Search$1 } from '../search-DCgpNjip.js';
14
13
  import { X } from '../x-B1Er0oV4.js';
14
+ import { S as Search$1 } from '../search-DCgpNjip.js';
15
15
  import { C as CSSTransition } from '../CSSTransition-DU3ZFKUe.js';
16
16
  import '../createLucideIcon-mNMhCCpf.js';
17
17
  import '@babel/runtime/helpers/esm/extends';
@@ -30,16 +30,15 @@ var AddNew = function AddNew(_ref) {
30
30
  onClick = _ref.onClick,
31
31
  otherProps = _objectWithoutProperties(_ref, _excluded$5);
32
32
  return /*#__PURE__*/jsx("div", _objectSpread$4(_objectSpread$4({
33
- className: "mb-2 px-2 py-1.5"
33
+ className: "mb-2 py-1.5"
34
34
  }, otherProps), {}, {
35
- children: /*#__PURE__*/jsxs(Button, {
35
+ children: /*#__PURE__*/jsx(Button, {
36
+ label: label,
36
37
  onClick: onClick,
37
- className: "gap-1 text-sm",
38
+ icon: Plus,
39
+ iconPosition: "left",
38
40
  size: "sm",
39
- variant: "link",
40
- children: [/*#__PURE__*/jsx(Plus, {
41
- size: 16
42
- }), label]
41
+ variant: "secondary"
43
42
  })
44
43
  }));
45
44
  };
@@ -78,22 +77,30 @@ var Block = function Block(_ref) {
78
77
  }, _objectSpread$3({
79
78
  onClick: onClick
80
79
  }, otherProps)), {}, {
81
- children: [/*#__PURE__*/jsxs("div", {
80
+ children: [/*#__PURE__*/jsxs("span", {
82
81
  className: "flex items-center",
83
82
  "data-testid": joinHyphenCase("menubar-block-label", label),
84
83
  children: [icon && /*#__PURE__*/jsx("i", {
85
84
  className: "me-1 flex items-center",
86
85
  children: icon
87
- }), /*#__PURE__*/jsx("span", {
88
- className: "text-sm font-medium",
89
- title: label,
90
- children: label
86
+ }), /*#__PURE__*/jsx(Typography, {
87
+ asChild: true,
88
+ variant: "body3",
89
+ weight: "medium",
90
+ children: /*#__PURE__*/jsx("span", {
91
+ title: label,
92
+ children: label
93
+ })
91
94
  })]
92
- }), Number.isInteger(count) && /*#__PURE__*/jsx("div", {
95
+ }), Number.isInteger(count) && /*#__PURE__*/jsx("span", {
93
96
  onClick: handleEdit,
94
- children: /*#__PURE__*/jsx("span", {
95
- className: "text-sm font-medium",
96
- children: count
97
+ children: /*#__PURE__*/jsx(Typography, {
98
+ asChild: true,
99
+ variant: "body3",
100
+ weight: "medium",
101
+ children: /*#__PURE__*/jsx("span", {
102
+ children: count
103
+ })
97
104
  })
98
105
  })]
99
106
  }));
@@ -115,15 +122,25 @@ var Item = function Item(_ref) {
115
122
  return /*#__PURE__*/jsxs("button", _objectSpread$2(_objectSpread$2({
116
123
  type: "button",
117
124
  className: classnames("hover:bg-accent focus:bg-accent active:bg-accent mb-2 w-full cursor-pointer rounded-md border border-transparent p-3 text-start transition-all focus:outline-none motion-reduce:transition-none max-lg:p-2.5 max-md:p-2", _defineProperty({
118
- "border-border bg-background text-foreground hover:bg-background focus:bg-background active:bg-background shadow-sm": active
125
+ "border-primary bg-primary/5 hover:bg-primary/5 focus:bg-primary/5 active:bg-primary/5 [&_[data-variant=body3]]:text-primary": active
119
126
  }, className, className))
120
127
  }, otherProps), {}, {
121
- children: [/*#__PURE__*/jsx("h5", {
122
- className: "text-sm font-semibold",
123
- children: label
124
- }), /*#__PURE__*/jsx("p", {
125
- className: "text-muted-foreground text-xs",
126
- children: description
128
+ children: [/*#__PURE__*/jsx(Typography, {
129
+ asChild: true,
130
+ variant: "body3",
131
+ weight: "semibold",
132
+ children: /*#__PURE__*/jsx("span", {
133
+ className: "block",
134
+ children: label
135
+ })
136
+ }), /*#__PURE__*/jsx(Typography, {
137
+ asChild: true,
138
+ color: "muted",
139
+ variant: "caption",
140
+ children: /*#__PURE__*/jsx("span", {
141
+ className: "block",
142
+ children: description
143
+ })
127
144
  })]
128
145
  }));
129
146
  };
@@ -141,16 +158,12 @@ var Search = function Search(_ref) {
141
158
  if (isCollapsed) return null;
142
159
  return /*#__PURE__*/jsxs("div", {
143
160
  className: "mb-5 flex items-center gap-1",
144
- children: [/*#__PURE__*/jsxs("div", {
145
- className: "relative flex-grow",
146
- children: [/*#__PURE__*/jsx(Search$1, {
147
- className: "text-muted-foreground absolute start-3 top-1/2 size-4 -translate-y-1/2"
148
- }), /*#__PURE__*/jsx(Input, _objectSpread$1({
149
- className: "ps-9",
150
- placeholder: t("neetoMolecules.common.actions.search"),
151
- type: "search"
152
- }, props))]
153
- }), /*#__PURE__*/jsx(Button, {
161
+ children: [/*#__PURE__*/jsx(Input, _objectSpread$1({
162
+ className: "flex-grow",
163
+ placeholder: t("neetoMolecules.common.actions.search"),
164
+ prefix: /*#__PURE__*/jsx(Search$1, {}),
165
+ type: "search"
166
+ }, props)), /*#__PURE__*/jsx(Button, {
154
167
  "data-testid": "menubar-search-close-icon",
155
168
  size: "icon-sm",
156
169
  variant: "ghost",
@@ -231,9 +244,10 @@ var MenuBar = function MenuBar(_ref) {
231
244
  children: /*#__PURE__*/jsxs("div", {
232
245
  className: "h-dvh w-[20.25rem] overflow-y-auto p-8 max-lg:w-[17.5rem] max-lg:px-6 max-lg:pt-10 max-lg:pb-6 max-md:w-60 max-md:px-5 max-md:pt-10 max-md:pb-6",
233
246
  "data-testid": "menubar-container",
234
- children: [title && /*#__PURE__*/jsx("h2", {
235
- className: "mb-4 text-xl leading-tight font-semibold",
247
+ children: [title && /*#__PURE__*/jsx(Typography, {
248
+ className: "mb-4",
236
249
  "data-testid": otherProps["data-testid"] || "menubar-heading",
250
+ variant: "h5",
237
251
  children: title
238
252
  }), children]
239
253
  })
@@ -1 +1 @@
1
- {"version":3,"file":"MenuBar.js","sources":["../../src/v2/components/MenuBar/AddNew.jsx","../../src/v2/components/MenuBar/Block.jsx","../../src/v2/components/MenuBar/Item.jsx","../../src/v2/components/MenuBar/Search.jsx","../../src/v2/components/MenuBar/SubTitle.jsx","../../src/v2/components/MenuBar/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { Plus } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\n\nconst AddNew = ({ label = \"\", onClick, ...otherProps }) => (\n <div className=\"mb-2 px-2 py-1.5\" {...otherProps}>\n <Button {...{ onClick }} className=\"gap-1 text-sm\" size=\"sm\" variant=\"link\">\n <Plus size={16} />\n {label}\n </Button>\n </div>\n);\n\nAddNew.propTypes = {\n label: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport default AddNew;\n","import classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\n\nconst Block = ({\n url,\n icon,\n label,\n count,\n active = false,\n onEdit,\n onClick = noop,\n className,\n ...otherProps\n}) => {\n const handleEdit = e => {\n if (!onEdit) return;\n\n e.stopPropagation();\n onEdit();\n };\n\n const Parent = url ? Link : props => <button type=\"button\" {...props} />;\n\n return (\n <Parent\n data-testid={otherProps[\"data-testid\"] || \"menubar-block\"}\n to={url}\n className={classnames(\n \"hover:bg-accent focus:bg-accent active:bg-accent relative mb-2 flex w-full cursor-pointer items-center justify-between rounded-md border border-transparent px-2 py-1.5 text-start transition-all hover:no-underline focus:outline-none motion-reduce:transition-none\",\n {\n \"bg-primary/10 border-primary/10 after:bg-primary hover:bg-primary/10 focus:bg-primary/10 active:bg-primary/10 after:absolute after:inset-y-0 after:start-[-1px] after:w-[3px] after:rounded-s-md\":\n active,\n [className]: className,\n }\n )}\n {...{ onClick, ...otherProps }}\n >\n <div\n className=\"flex items-center\"\n data-testid={joinHyphenCase(\"menubar-block-label\", label)}\n >\n {icon && <i className=\"me-1 flex items-center\">{icon}</i>}\n <span className=\"text-sm font-medium\" title={label}>\n {label}\n </span>\n </div>\n {Number.isInteger(count) && (\n <div onClick={handleEdit}>\n <span className=\"text-sm font-medium\">{count}</span>\n </div>\n )}\n </Parent>\n );\n};\n\nBlock.propTypes = {\n url: PropTypes.string,\n icon: PropTypes.node,\n label: PropTypes.string,\n count: PropTypes.number,\n active: PropTypes.bool,\n onEdit: PropTypes.func,\n onClick: PropTypes.func,\n className: PropTypes.string,\n};\n\nexport default Block;\n","import classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Item = ({\n label = \"\",\n description = \"\",\n active = false,\n className = \"\",\n ...otherProps\n}) => (\n <button\n type=\"button\"\n className={classnames(\n \"hover:bg-accent focus:bg-accent active:bg-accent mb-2 w-full cursor-pointer rounded-md border border-transparent p-3 text-start transition-all focus:outline-none motion-reduce:transition-none max-lg:p-2.5 max-md:p-2\",\n {\n \"border-border bg-background text-foreground hover:bg-background focus:bg-background active:bg-background shadow-sm\":\n active,\n [className]: className,\n }\n )}\n {...otherProps}\n >\n <h5 className=\"text-sm font-semibold\">{label}</h5>\n <p className=\"text-muted-foreground text-xs\">{description}</p>\n </button>\n);\n\nItem.propTypes = {\n label: PropTypes.string,\n description: PropTypes.string,\n active: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default Item;\n","import { Button, Input } from \"@bigbinary/neeto-atoms\";\nimport { Search as SearchIcon, X } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Search = ({ isCollapsed = true, onCollapse, ...props }) => {\n const { t } = useTranslation();\n\n if (isCollapsed) return null;\n\n return (\n <div className=\"mb-5 flex items-center gap-1\">\n <div className=\"relative flex-grow\">\n <SearchIcon className=\"text-muted-foreground absolute start-3 top-1/2 size-4 -translate-y-1/2\" />\n <Input\n className=\"ps-9\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n type=\"search\"\n {...props}\n />\n </div>\n <Button\n data-testid=\"menubar-search-close-icon\"\n size=\"icon-sm\"\n variant=\"ghost\"\n onClick={onCollapse}\n >\n <X size={16} />\n </Button>\n </div>\n );\n};\n\nSearch.propTypes = {\n isCollapsed: PropTypes.bool,\n onCollapse: PropTypes.func,\n};\n\nexport default Search;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport PropTypes from \"prop-types\";\n\nconst SubTitle = ({ children, iconProps, ...otherProps }) => (\n <div\n className=\"my-5 flex items-center justify-between\"\n data-testid={otherProps[\"data-testid\"] || \"menubar-subtitle-heading\"}\n {...otherProps}\n >\n {children}\n <div className=\"flex items-center gap-1\">\n {iconProps?.map(({ icon: Icon, onClick, ...rest }, index) => (\n <Button\n {...{ onClick }}\n key={index}\n size=\"icon-sm\"\n variant=\"ghost\"\n {...rest}\n >\n {Icon && <Icon size={16} />}\n </Button>\n ))}\n </div>\n </div>\n);\n\nSubTitle.propTypes = {\n children: PropTypes.node,\n iconProps: PropTypes.array,\n};\n\nexport default SubTitle;\n","import { useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { usePrefersReducedMotion } from \"neetocommons/react-utils\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport AddNew from \"./AddNew\";\nimport Block from \"./Block\";\nimport Item from \"./Item\";\nimport Search from \"./Search\";\nimport SubTitle from \"./SubTitle\";\n\nconst MenuBar = ({\n title = \"\",\n children,\n showMenu = false,\n className = \"\",\n ...otherProps\n}) => {\n const prefersReducedMotion = usePrefersReducedMotion();\n const nodeRef = useRef(null);\n\n return (\n <CSSTransition\n {...{ nodeRef }}\n unmountOnExit\n in={showMenu}\n timeout={prefersReducedMotion ? 0 : 300}\n onEnter={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"0\";\n }}\n onEntered={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"\";\n }}\n onEntering={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"20.25rem\";\n }}\n onExit={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"20.25rem\";\n }}\n onExiting={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"0\";\n }}\n >\n <div\n ref={nodeRef}\n className={classnames(\n \"border-border bg-background shrink-0 overflow-hidden border-e transition-all duration-300 motion-reduce:transition-none\",\n className\n )}\n >\n <div\n className=\"h-dvh w-[20.25rem] overflow-y-auto p-8 max-lg:w-[17.5rem] max-lg:px-6 max-lg:pt-10 max-lg:pb-6 max-md:w-60 max-md:px-5 max-md:pt-10 max-md:pb-6\"\n data-testid=\"menubar-container\"\n >\n {title && (\n <h2\n className=\"mb-4 text-xl leading-tight font-semibold\"\n data-testid={otherProps[\"data-testid\"] || \"menubar-heading\"}\n >\n {title}\n </h2>\n )}\n {children}\n </div>\n </div>\n </CSSTransition>\n );\n};\n\nMenuBar.Block = Block;\nMenuBar.Item = Item;\nMenuBar.SubTitle = SubTitle;\nMenuBar.Search = Search;\nMenuBar.AddNew = AddNew;\n\nMenuBar.propTypes = {\n title: PropTypes.node,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n showMenu: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default MenuBar;\n"],"names":["AddNew","_ref","_ref$label","label","onClick","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","className","children","_jsxs","Button","size","variant","Plus","Block","url","icon","count","_ref$active","active","onEdit","_ref$onClick","noop","handleEdit","e","stopPropagation","Parent","Link","props","type","to","classnames","_defineProperty","joinHyphenCase","title","Number","isInteger","Item","_ref$description","description","_ref$className","Search","_ref$isCollapsed","isCollapsed","onCollapse","_useTranslation","useTranslation","t","SearchIcon","Input","placeholder","X","SubTitle","iconProps","map","_ref2","index","Icon","rest","_excluded2","_createElement","key","MenuBar","_ref$title","_ref$showMenu","showMenu","prefersReducedMotion","usePrefersReducedMotion","nodeRef","useRef","CSSTransition","unmountOnExit","timeout","onEnter","current","style","width","onEntered","onEntering","onExit","onExiting","ref"],"mappings":"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"}
1
+ {"version":3,"file":"MenuBar.js","sources":["../../src/v2/components/MenuBar/AddNew.jsx","../../src/v2/components/MenuBar/Block.jsx","../../src/v2/components/MenuBar/Item.jsx","../../src/v2/components/MenuBar/Search.jsx","../../src/v2/components/MenuBar/SubTitle.jsx","../../src/v2/components/MenuBar/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { Plus } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\n\nconst AddNew = ({ label = \"\", onClick, ...otherProps }) => (\n <div className=\"mb-2 py-1.5\" {...otherProps}>\n <Button\n {...{ label, onClick }}\n icon={Plus}\n iconPosition=\"left\"\n size=\"sm\"\n variant=\"secondary\"\n />\n </div>\n);\n\nAddNew.propTypes = {\n label: PropTypes.string,\n onClick: PropTypes.func,\n};\n\nexport default AddNew;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\n\nconst Block = ({\n url,\n icon,\n label,\n count,\n active = false,\n onEdit,\n onClick = noop,\n className,\n ...otherProps\n}) => {\n const handleEdit = e => {\n if (!onEdit) return;\n\n e.stopPropagation();\n onEdit();\n };\n\n const Parent = url ? Link : props => <button type=\"button\" {...props} />;\n\n return (\n <Parent\n data-testid={otherProps[\"data-testid\"] || \"menubar-block\"}\n to={url}\n className={classnames(\n \"hover:bg-accent focus:bg-accent active:bg-accent relative mb-2 flex w-full cursor-pointer items-center justify-between rounded-md border border-transparent px-2 py-1.5 text-start transition-all hover:no-underline focus:outline-none motion-reduce:transition-none\",\n {\n \"bg-primary/10 border-primary/10 after:bg-primary hover:bg-primary/10 focus:bg-primary/10 active:bg-primary/10 after:absolute after:inset-y-0 after:start-[-1px] after:w-[3px] after:rounded-s-md\":\n active,\n [className]: className,\n }\n )}\n {...{ onClick, ...otherProps }}\n >\n <span\n className=\"flex items-center\"\n data-testid={joinHyphenCase(\"menubar-block-label\", label)}\n >\n {icon && <i className=\"me-1 flex items-center\">{icon}</i>}\n <Typography asChild variant=\"body3\" weight=\"medium\">\n <span title={label}>{label}</span>\n </Typography>\n </span>\n {Number.isInteger(count) && (\n <span onClick={handleEdit}>\n <Typography asChild variant=\"body3\" weight=\"medium\">\n <span>{count}</span>\n </Typography>\n </span>\n )}\n </Parent>\n );\n};\n\nBlock.propTypes = {\n url: PropTypes.string,\n icon: PropTypes.node,\n label: PropTypes.string,\n count: PropTypes.number,\n active: PropTypes.bool,\n onEdit: PropTypes.func,\n onClick: PropTypes.func,\n className: PropTypes.string,\n};\n\nexport default Block;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Item = ({\n label = \"\",\n description = \"\",\n active = false,\n className = \"\",\n ...otherProps\n}) => (\n <button\n type=\"button\"\n className={classnames(\n \"hover:bg-accent focus:bg-accent active:bg-accent mb-2 w-full cursor-pointer rounded-md border border-transparent p-3 text-start transition-all focus:outline-none motion-reduce:transition-none max-lg:p-2.5 max-md:p-2\",\n {\n \"border-primary bg-primary/5 hover:bg-primary/5 focus:bg-primary/5 active:bg-primary/5 [&_[data-variant=body3]]:text-primary\":\n active,\n [className]: className,\n }\n )}\n {...otherProps}\n >\n <Typography asChild variant=\"body3\" weight=\"semibold\">\n <span className=\"block\">{label}</span>\n </Typography>\n <Typography asChild color=\"muted\" variant=\"caption\">\n <span className=\"block\">{description}</span>\n </Typography>\n </button>\n);\n\nItem.propTypes = {\n label: PropTypes.string,\n description: PropTypes.string,\n active: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default Item;\n","import { Button, Input } from \"@bigbinary/neeto-atoms\";\nimport { Search as SearchIcon, X } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Search = ({ isCollapsed = true, onCollapse, ...props }) => {\n const { t } = useTranslation();\n\n if (isCollapsed) return null;\n\n return (\n <div className=\"mb-5 flex items-center gap-1\">\n <Input\n className=\"flex-grow\"\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n prefix={<SearchIcon />}\n type=\"search\"\n {...props}\n />\n <Button\n data-testid=\"menubar-search-close-icon\"\n size=\"icon-sm\"\n variant=\"ghost\"\n onClick={onCollapse}\n >\n <X size={16} />\n </Button>\n </div>\n );\n};\n\nSearch.propTypes = {\n isCollapsed: PropTypes.bool,\n onCollapse: PropTypes.func,\n};\n\nexport default Search;\n","import { Button } from \"@bigbinary/neeto-atoms\";\nimport PropTypes from \"prop-types\";\n\nconst SubTitle = ({ children, iconProps, ...otherProps }) => (\n <div\n className=\"my-5 flex items-center justify-between\"\n data-testid={otherProps[\"data-testid\"] || \"menubar-subtitle-heading\"}\n {...otherProps}\n >\n {children}\n <div className=\"flex items-center gap-1\">\n {iconProps?.map(({ icon: Icon, onClick, ...rest }, index) => (\n <Button\n {...{ onClick }}\n key={index}\n size=\"icon-sm\"\n variant=\"ghost\"\n {...rest}\n >\n {Icon && <Icon size={16} />}\n </Button>\n ))}\n </div>\n </div>\n);\n\nSubTitle.propTypes = {\n children: PropTypes.node,\n iconProps: PropTypes.array,\n};\n\nexport default SubTitle;\n","import { useRef } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { usePrefersReducedMotion } from \"neetocommons/react-utils\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport AddNew from \"./AddNew\";\nimport Block from \"./Block\";\nimport Item from \"./Item\";\nimport Search from \"./Search\";\nimport SubTitle from \"./SubTitle\";\n\nconst MenuBar = ({\n title = \"\",\n children,\n showMenu = false,\n className = \"\",\n ...otherProps\n}) => {\n const prefersReducedMotion = usePrefersReducedMotion();\n const nodeRef = useRef(null);\n\n return (\n <CSSTransition\n {...{ nodeRef }}\n unmountOnExit\n in={showMenu}\n timeout={prefersReducedMotion ? 0 : 300}\n onEnter={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"0\";\n }}\n onEntered={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"\";\n }}\n onEntering={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"20.25rem\";\n }}\n onExit={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"20.25rem\";\n }}\n onExiting={() => {\n if (nodeRef.current) nodeRef.current.style.width = \"0\";\n }}\n >\n <div\n ref={nodeRef}\n className={classnames(\n \"border-border bg-background shrink-0 overflow-hidden border-e transition-all duration-300 motion-reduce:transition-none\",\n className\n )}\n >\n <div\n className=\"h-dvh w-[20.25rem] overflow-y-auto p-8 max-lg:w-[17.5rem] max-lg:px-6 max-lg:pt-10 max-lg:pb-6 max-md:w-60 max-md:px-5 max-md:pt-10 max-md:pb-6\"\n data-testid=\"menubar-container\"\n >\n {title && (\n <Typography\n className=\"mb-4\"\n data-testid={otherProps[\"data-testid\"] || \"menubar-heading\"}\n variant=\"h5\"\n >\n {title}\n </Typography>\n )}\n {children}\n </div>\n </div>\n </CSSTransition>\n );\n};\n\nMenuBar.Block = Block;\nMenuBar.Item = Item;\nMenuBar.SubTitle = SubTitle;\nMenuBar.Search = Search;\nMenuBar.AddNew = AddNew;\n\nMenuBar.propTypes = {\n title: PropTypes.node,\n children: PropTypes.oneOfType([\n PropTypes.arrayOf(PropTypes.node),\n PropTypes.node,\n ]),\n showMenu: PropTypes.bool,\n className: PropTypes.string,\n};\n\nexport default MenuBar;\n"],"names":["AddNew","_ref","_ref$label","label","onClick","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","className","children","Button","icon","Plus","iconPosition","size","variant","Block","url","count","_ref$active","active","onEdit","_ref$onClick","noop","handleEdit","e","stopPropagation","Parent","Link","props","type","_jsxs","to","classnames","_defineProperty","joinHyphenCase","Typography","asChild","weight","title","Number","isInteger","Item","_ref$description","description","_ref$className","color","Search","_ref$isCollapsed","isCollapsed","onCollapse","_useTranslation","useTranslation","t","Input","placeholder","prefix","SearchIcon","X","SubTitle","iconProps","map","_ref2","index","Icon","rest","_excluded2","_createElement","key","MenuBar","_ref$title","_ref$showMenu","showMenu","prefersReducedMotion","usePrefersReducedMotion","nodeRef","useRef","CSSTransition","unmountOnExit","timeout","onEnter","current","style","width","onEntered","onEntering","onExit","onExiting","ref"],"mappings":"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"}
package/dist/v2/Search.js CHANGED
@@ -2,7 +2,7 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
2
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
4
4
  import { useId, useState, useRef, useEffect } from 'react';
5
- import { Label, Input } from '@bigbinary/neeto-atoms';
5
+ import { Input } from '@bigbinary/neeto-atoms';
6
6
  import useFuncDebounce from '@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce';
7
7
  import useQueryParams from '@bigbinary/neeto-commons-frontend/react-utils/useQueryParams';
8
8
  import useUpdateEffect from '@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect';
@@ -11,7 +11,7 @@ import { mergeLeft, omit } from 'ramda';
11
11
  import { useTranslation } from 'react-i18next';
12
12
  import { useHistory } from 'react-router-dom';
13
13
  import { getQueryParams } from '@bigbinary/neeto-commons-frontend/utils';
14
- import { jsxs, jsx } from 'react/jsx-runtime';
14
+ import { jsx } from 'react/jsx-runtime';
15
15
  import { S as Search$1 } from '../search-DCgpNjip.js';
16
16
  import '../createLucideIcon-mNMhCCpf.js';
17
17
 
@@ -101,26 +101,16 @@ var Search = function Search(_ref) {
101
101
  useEffect(function () {
102
102
  return handleDebouncedSearchTermChange.cancel;
103
103
  }, []);
104
- return /*#__PURE__*/jsxs("div", {
104
+ return /*#__PURE__*/jsx(Input, _objectSpread({
105
105
  className: className,
106
- children: [label && /*#__PURE__*/jsx(Label, {
107
- className: "mb-1",
108
- htmlFor: inputId,
109
- children: label
110
- }), /*#__PURE__*/jsxs("div", {
111
- className: "relative",
112
- children: [/*#__PURE__*/jsx(Search$1, {
113
- className: "text-muted-foreground pointer-events-none absolute top-1/2 left-3 size-4 -translate-y-1/2"
114
- }), /*#__PURE__*/jsx(Input, _objectSpread({
115
- className: "pl-9 [&::-webkit-search-cancel-button:hover]:cursor-pointer [&::-webkit-search-decoration:hover]:cursor-pointer",
116
- id: inputId,
117
- placeholder: t("neetoMolecules.common.actions.search"),
118
- type: "search",
119
- value: internalValue,
120
- onChange: handleOnChange
121
- }, inputProps))]
122
- })]
123
- });
106
+ label: label,
107
+ id: inputId,
108
+ placeholder: t("neetoMolecules.common.actions.search"),
109
+ prefix: /*#__PURE__*/jsx(Search$1, {}),
110
+ type: "search",
111
+ value: internalValue,
112
+ onChange: handleOnChange
113
+ }, inputProps));
124
114
  };
125
115
 
126
116
  export { Search as default };
@@ -1 +1 @@
1
- {"version":3,"file":"Search.js","sources":["../../src/v2/components/Search/utils.js","../../src/v2/components/Search/index.jsx"],"sourcesContent":["import { getQueryParams } from \"neetocommons/utils\";\n\nexport const getInitialSearchValue = ({\n initialValue = \"\",\n enableUrlSync,\n searchParamName,\n}) => {\n if (enableUrlSync) {\n const queryParams = getQueryParams({ toCamelCase: false });\n\n return queryParams[searchParamName] ?? \"\";\n }\n\n return initialValue;\n};\n","import { useEffect, useId, useRef, useState } from \"react\";\n\nimport { Input, Label } from \"@bigbinary/neeto-atoms\";\nimport { Search as SearchIcon } from \"lucide-react\";\nimport useFuncDebounce from \"neetocommons/react-utils/useFuncDebounce\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport useUpdateEffect from \"neetocommons/react-utils/useUpdateEffect\";\nimport { buildUrl } from \"neetocommons/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getInitialSearchValue } from \"./utils\";\n\nconst Search = ({\n value,\n debounceTime = 300,\n onSearch,\n onChange,\n enableUrlSync = false,\n searchParamName = \"search_term\",\n className,\n label,\n ...inputProps\n}) => {\n const { t } = useTranslation();\n const queryParams = useQueryParams({ toCamelCase: false });\n const history = useHistory();\n const inputId = useId();\n\n const [internalValue, setInternalValue] = useState(\n getInitialSearchValue({\n initialValue: value,\n enableUrlSync,\n searchParamName,\n })\n );\n const trimmedValue = value?.trim();\n\n useUpdateEffect(() => {\n if (!enableUrlSync) return;\n\n const searchParamValue = queryParams?.[searchParamName] ?? \"\";\n setInternalValue(searchParamValue);\n }, [queryParams?.[searchParamName]]);\n\n const handleSearchQueryParams = trimmedValue => {\n if (!trimmedValue && !queryParams?.[searchParamName]) return;\n\n if (trimmedValue === queryParams?.[searchParamName]) return;\n\n const pathname = history.location.pathname;\n\n if (trimmedValue) {\n history.push(\n buildUrl(\n pathname,\n mergeLeft({ [searchParamName]: trimmedValue }, queryParams)\n )\n );\n } else {\n history.push(buildUrl(pathname, omit([searchParamName], queryParams)));\n }\n };\n\n const handleDebouncedSearchTermChange = useFuncDebounce(trimmedValue => {\n if (onSearch) onSearch(trimmedValue);\n else if (enableUrlSync) handleSearchQueryParams(trimmedValue);\n }, debounceTime);\n\n useUpdateEffect(() => {\n handleDebouncedSearchTermChange(trimmedValue);\n }, [trimmedValue]);\n\n const prevValueRef = useRef(value);\n if (value !== undefined && value !== prevValueRef.current) {\n setInternalValue(value);\n prevValueRef.current = value;\n }\n\n const handleOnChange = e => {\n const trimmedValue = e.target.value?.trim();\n onChange?.(e);\n setInternalValue(e.target.value);\n\n if (internalValue?.trim() !== trimmedValue) {\n handleDebouncedSearchTermChange(trimmedValue);\n }\n };\n\n useEffect(() => handleDebouncedSearchTermChange.cancel, []);\n\n return (\n <div {...{ className }}>\n {label && (\n <Label className=\"mb-1\" htmlFor={inputId}>\n {label}\n </Label>\n )}\n <div className=\"relative\">\n <SearchIcon className=\"text-muted-foreground pointer-events-none absolute top-1/2 left-3 size-4 -translate-y-1/2\" />\n <Input\n className=\"pl-9 [&::-webkit-search-cancel-button:hover]:cursor-pointer [&::-webkit-search-decoration:hover]:cursor-pointer\"\n id={inputId}\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n type=\"search\"\n value={internalValue}\n onChange={handleOnChange}\n {...inputProps}\n />\n </div>\n </div>\n );\n};\n\nSearch.propTypes = {\n value: PropTypes.string,\n debounceTime: PropTypes.number,\n onChange: PropTypes.func,\n onSearch: PropTypes.func,\n enableUrlSync: PropTypes.bool,\n searchParamName: PropTypes.string,\n inputProps: PropTypes.object,\n};\n\nexport default Search;\n"],"names":["getInitialSearchValue","_ref","_ref$initialValue","initialValue","enableUrlSync","searchParamName","_queryParams$searchPa","queryParams","getQueryParams","toCamelCase","Search","value","_ref$debounceTime","debounceTime","onSearch","onChange","_ref$enableUrlSync","_ref$searchParamName","className","label","inputProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","useQueryParams","history","useHistory","inputId","useId","_useState","useState","_useState2","_slicedToArray","internalValue","setInternalValue","trimmedValue","trim","useUpdateEffect","searchParamValue","handleSearchQueryParams","pathname","location","push","buildUrl","mergeLeft","_defineProperty","omit","handleDebouncedSearchTermChange","useFuncDebounce","prevValueRef","useRef","undefined","current","handleOnChange","e","_e$target$value","target","useEffect","cancel","_jsxs","children","_jsx","Label","htmlFor","SearchIcon","Input","_objectSpread","id","placeholder","type"],"mappings":";;;;;;;;;;;;;;;;;AAEO,IAAMA,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAAC,IAAA,EAI5B;AAAA,EAAA,IAAAC,iBAAA,GAAAD,IAAA,CAHJE,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IACjBE,aAAa,GAAAH,IAAA,CAAbG,aAAa;IACbC,eAAe,GAAAJ,IAAA,CAAfI,eAAe;AAEf,EAAA,IAAID,aAAa,EAAE;AAAA,IAAA,IAAAE,qBAAA;IACjB,IAAMC,WAAW,GAAGC,cAAc,CAAC;AAAEC,MAAAA,WAAW,EAAE;AAAM,KAAC,CAAC;IAE1D,OAAA,CAAAH,qBAAA,GAAOC,WAAW,CAACF,eAAe,CAAC,MAAA,IAAA,IAAAC,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,EAAE;AAC3C,EAAA;AAEA,EAAA,OAAOH,YAAY;AACrB,CAAC;;;;;ACCD,IAAMO,MAAM,GAAG,SAATA,MAAMA,CAAAT,IAAA,EAUN;AAAA,EAAA,IATJU,KAAK,GAAAV,IAAA,CAALU,KAAK;IAAAC,iBAAA,GAAAX,IAAA,CACLY,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,GAAG,GAAAA,iBAAA;IAClBE,QAAQ,GAAAb,IAAA,CAARa,QAAQ;IACRC,QAAQ,GAAAd,IAAA,CAARc,QAAQ;IAAAC,kBAAA,GAAAf,IAAA,CACRG,aAAa;AAAbA,IAAAA,aAAa,GAAAY,kBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,kBAAA;IAAAC,oBAAA,GAAAhB,IAAA,CACrBI,eAAe;AAAfA,IAAAA,eAAe,GAAAY,oBAAA,KAAA,MAAA,GAAG,aAAa,GAAAA,oBAAA;IAC/BC,SAAS,GAAAjB,IAAA,CAATiB,SAAS;IACTC,KAAK,GAAAlB,IAAA,CAALkB,KAAK;AACFC,IAAAA,UAAU,GAAAC,wBAAA,CAAApB,IAAA,EAAAqB,SAAA,CAAA;AAEb,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;EACT,IAAMlB,WAAW,GAAGmB,cAAc,CAAC;AAAEjB,IAAAA,WAAW,EAAE;AAAM,GAAC,CAAC;AAC1D,EAAA,IAAMkB,OAAO,GAAGC,UAAU,EAAE;AAC5B,EAAA,IAAMC,OAAO,GAAGC,KAAK,EAAE;AAEvB,EAAA,IAAAC,SAAA,GAA0CC,QAAQ,CAChDhC,qBAAqB,CAAC;AACpBG,MAAAA,YAAY,EAAEQ,KAAK;AACnBP,MAAAA,aAAa,EAAbA,aAAa;AACbC,MAAAA,eAAe,EAAfA;AACF,KAAC,CACH,CAAC;IAAA4B,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AANMI,IAAAA,aAAa,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,gBAAgB,GAAAH,UAAA,CAAA,CAAA,CAAA;EAOtC,IAAMI,YAAY,GAAG1B,KAAK,KAAA,IAAA,IAALA,KAAK,uBAALA,KAAK,CAAE2B,IAAI,EAAE;AAElCC,EAAAA,eAAe,CAAC,YAAM;AAAA,IAAA,IAAAjC,qBAAA;IACpB,IAAI,CAACF,aAAa,EAAE;AAEpB,IAAA,IAAMoC,gBAAgB,GAAA,CAAAlC,qBAAA,GAAGC,WAAW,aAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAGF,eAAe,CAAC,MAAA,IAAA,IAAAC,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,EAAE;IAC7D8B,gBAAgB,CAACI,gBAAgB,CAAC;EACpC,CAAC,EAAE,CAACjC,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,GAAA,MAAA,GAAXA,WAAW,CAAGF,eAAe,CAAC,CAAC,CAAC;AAEpC,EAAA,IAAMoC,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAGJ,YAAY,EAAI;AAC9C,IAAA,IAAI,CAACA,YAAY,IAAI,EAAC9B,WAAW,KAAA,IAAA,IAAXA,WAAW,KAAA,MAAA,IAAXA,WAAW,CAAGF,eAAe,CAAC,CAAA,EAAE;IAEtD,IAAIgC,YAAY,MAAK9B,WAAW,KAAA,IAAA,IAAXA,WAAW,uBAAXA,WAAW,CAAGF,eAAe,CAAC,CAAA,EAAE;AAErD,IAAA,IAAMqC,QAAQ,GAAGf,OAAO,CAACgB,QAAQ,CAACD,QAAQ;AAE1C,IAAA,IAAIL,YAAY,EAAE;AAChBV,MAAAA,OAAO,CAACiB,IAAI,CACVC,QAAQ,CACNH,QAAQ,EACRI,SAAS,CAAAC,eAAA,CAAA,EAAA,EAAI1C,eAAe,EAAGgC,YAAY,GAAI9B,WAAW,CAC5D,CACF,CAAC;AACH,IAAA,CAAC,MAAM;AACLoB,MAAAA,OAAO,CAACiB,IAAI,CAACC,QAAQ,CAACH,QAAQ,EAAEM,IAAI,CAAC,CAAC3C,eAAe,CAAC,EAAEE,WAAW,CAAC,CAAC,CAAC;AACxE,IAAA;EACF,CAAC;AAED,EAAA,IAAM0C,+BAA+B,GAAGC,eAAe,CAAC,UAAAb,YAAY,EAAI;AACtE,IAAA,IAAIvB,QAAQ,EAAEA,QAAQ,CAACuB,YAAY,CAAC,CAAC,KAChC,IAAIjC,aAAa,EAAEqC,uBAAuB,CAACJ,YAAY,CAAC;EAC/D,CAAC,EAAExB,YAAY,CAAC;AAEhB0B,EAAAA,eAAe,CAAC,YAAM;IACpBU,+BAA+B,CAACZ,YAAY,CAAC;AAC/C,EAAA,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;AAElB,EAAA,IAAMc,YAAY,GAAGC,MAAM,CAACzC,KAAK,CAAC;EAClC,IAAIA,KAAK,KAAK0C,SAAS,IAAI1C,KAAK,KAAKwC,YAAY,CAACG,OAAO,EAAE;IACzDlB,gBAAgB,CAACzB,KAAK,CAAC;IACvBwC,YAAY,CAACG,OAAO,GAAG3C,KAAK;AAC9B,EAAA;AAEA,EAAA,IAAM4C,cAAc,GAAG,SAAjBA,cAAcA,CAAGC,CAAC,EAAI;AAAA,IAAA,IAAAC,eAAA;AAC1B,IAAA,IAAMpB,YAAY,GAAA,CAAAoB,eAAA,GAAGD,CAAC,CAACE,MAAM,CAAC/C,KAAK,MAAA,IAAA,IAAA8C,eAAA,KAAA,MAAA,GAAA,MAAA,GAAdA,eAAA,CAAgBnB,IAAI,EAAE;AAC3CvB,IAAAA,QAAQ,aAARA,QAAQ,KAAA,MAAA,IAARA,QAAQ,CAAGyC,CAAC,CAAC;AACbpB,IAAAA,gBAAgB,CAACoB,CAAC,CAACE,MAAM,CAAC/C,KAAK,CAAC;AAEhC,IAAA,IAAI,CAAAwB,aAAa,KAAA,IAAA,IAAbA,aAAa,KAAA,MAAA,GAAA,MAAA,GAAbA,aAAa,CAAEG,IAAI,EAAE,MAAKD,YAAY,EAAE;MAC1CY,+BAA+B,CAACZ,YAAY,CAAC;AAC/C,IAAA;EACF,CAAC;AAEDsB,EAAAA,SAAS,CAAC,YAAA;IAAA,OAAMV,+BAA+B,CAACW,MAAM;AAAA,EAAA,CAAA,EAAE,EAAE,CAAC;AAE3D,EAAA,oBACEC,IAAA,CAAA,KAAA,EAAA;AAAW3C,IAAAA,SAAS,EAATA,SAAS;AAAA4C,IAAAA,QAAA,EAAA,CACjB3C,KAAK,iBACJ4C,GAAA,CAACC,KAAK,EAAA;AAAC9C,MAAAA,SAAS,EAAC,MAAM;AAAC+C,MAAAA,OAAO,EAAEpC,OAAQ;AAAAiC,MAAAA,QAAA,EACtC3C;KACI,CACR,eACD0C,IAAA,CAAA,KAAA,EAAA;AAAK3C,MAAAA,SAAS,EAAC,UAAU;MAAA4C,QAAA,EAAA,cACvBC,GAAA,CAACG,QAAU,EAAA;AAAChD,QAAAA,SAAS,EAAC;AAA2F,OAAE,CAAC,eACpH6C,GAAA,CAACI,KAAK,EAAAC,aAAA,CAAA;AACJlD,QAAAA,SAAS,EAAC,iHAAiH;AAC3HmD,QAAAA,EAAE,EAAExC,OAAQ;AACZyC,QAAAA,WAAW,EAAE7C,CAAC,CAAC,sCAAsC,CAAE;AACvD8C,QAAAA,IAAI,EAAC,QAAQ;AACb5D,QAAAA,KAAK,EAAEwB,aAAc;AACrBpB,QAAAA,QAAQ,EAAEwC;OAAe,EACrBnC,UAAU,CACf,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV;;;;"}
1
+ {"version":3,"file":"Search.js","sources":["../../src/v2/components/Search/utils.js","../../src/v2/components/Search/index.jsx"],"sourcesContent":["import { getQueryParams } from \"neetocommons/utils\";\n\nexport const getInitialSearchValue = ({\n initialValue = \"\",\n enableUrlSync,\n searchParamName,\n}) => {\n if (enableUrlSync) {\n const queryParams = getQueryParams({ toCamelCase: false });\n\n return queryParams[searchParamName] ?? \"\";\n }\n\n return initialValue;\n};\n","import { useEffect, useId, useRef, useState } from \"react\";\n\nimport { Input } from \"@bigbinary/neeto-atoms\";\nimport { Search as SearchIcon } from \"lucide-react\";\nimport useFuncDebounce from \"neetocommons/react-utils/useFuncDebounce\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport useUpdateEffect from \"neetocommons/react-utils/useUpdateEffect\";\nimport { buildUrl } from \"neetocommons/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getInitialSearchValue } from \"./utils\";\n\nconst Search = ({\n value,\n debounceTime = 300,\n onSearch,\n onChange,\n enableUrlSync = false,\n searchParamName = \"search_term\",\n className,\n label,\n ...inputProps\n}) => {\n const { t } = useTranslation();\n const queryParams = useQueryParams({ toCamelCase: false });\n const history = useHistory();\n const inputId = useId();\n\n const [internalValue, setInternalValue] = useState(\n getInitialSearchValue({\n initialValue: value,\n enableUrlSync,\n searchParamName,\n })\n );\n const trimmedValue = value?.trim();\n\n useUpdateEffect(() => {\n if (!enableUrlSync) return;\n\n const searchParamValue = queryParams?.[searchParamName] ?? \"\";\n setInternalValue(searchParamValue);\n }, [queryParams?.[searchParamName]]);\n\n const handleSearchQueryParams = trimmedValue => {\n if (!trimmedValue && !queryParams?.[searchParamName]) return;\n\n if (trimmedValue === queryParams?.[searchParamName]) return;\n\n const pathname = history.location.pathname;\n\n if (trimmedValue) {\n history.push(\n buildUrl(\n pathname,\n mergeLeft({ [searchParamName]: trimmedValue }, queryParams)\n )\n );\n } else {\n history.push(buildUrl(pathname, omit([searchParamName], queryParams)));\n }\n };\n\n const handleDebouncedSearchTermChange = useFuncDebounce(trimmedValue => {\n if (onSearch) onSearch(trimmedValue);\n else if (enableUrlSync) handleSearchQueryParams(trimmedValue);\n }, debounceTime);\n\n useUpdateEffect(() => {\n handleDebouncedSearchTermChange(trimmedValue);\n }, [trimmedValue]);\n\n const prevValueRef = useRef(value);\n if (value !== undefined && value !== prevValueRef.current) {\n setInternalValue(value);\n prevValueRef.current = value;\n }\n\n const handleOnChange = e => {\n const trimmedValue = e.target.value?.trim();\n onChange?.(e);\n setInternalValue(e.target.value);\n\n if (internalValue?.trim() !== trimmedValue) {\n handleDebouncedSearchTermChange(trimmedValue);\n }\n };\n\n useEffect(() => handleDebouncedSearchTermChange.cancel, []);\n\n return (\n <Input\n {...{ className, label }}\n id={inputId}\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n prefix={<SearchIcon />}\n type=\"search\"\n value={internalValue}\n onChange={handleOnChange}\n {...inputProps}\n />\n );\n};\n\nSearch.propTypes = {\n value: PropTypes.string,\n debounceTime: PropTypes.number,\n onChange: PropTypes.func,\n onSearch: PropTypes.func,\n enableUrlSync: PropTypes.bool,\n searchParamName: PropTypes.string,\n inputProps: PropTypes.object,\n};\n\nexport default Search;\n"],"names":["getInitialSearchValue","_ref","_ref$initialValue","initialValue","enableUrlSync","searchParamName","_queryParams$searchPa","queryParams","getQueryParams","toCamelCase","Search","value","_ref$debounceTime","debounceTime","onSearch","onChange","_ref$enableUrlSync","_ref$searchParamName","className","label","inputProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","useQueryParams","history","useHistory","inputId","useId","_useState","useState","_useState2","_slicedToArray","internalValue","setInternalValue","trimmedValue","trim","useUpdateEffect","searchParamValue","handleSearchQueryParams","pathname","location","push","buildUrl","mergeLeft","_defineProperty","omit","handleDebouncedSearchTermChange","useFuncDebounce","prevValueRef","useRef","undefined","current","handleOnChange","e","_e$target$value","target","useEffect","cancel","_jsx","Input","_objectSpread","id","placeholder","prefix","SearchIcon","type"],"mappings":"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"}
@@ -1,13 +1,19 @@
1
1
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
2
2
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
3
3
  import { useShallow } from 'zustand/shallow';
4
- import { useState, useEffect } from 'react';
5
- import { Badge, Button } from '@bigbinary/neeto-atoms';
4
+ import { useState, useEffect, createElement } from 'react';
5
+ import { Button } from '@bigbinary/neeto-atoms';
6
6
  import { useLocalStorage } from '@bigbinary/neeto-commons-frontend/react-utils';
7
7
  import { useErrorDisplayStore } from '@bigbinary/neeto-commons-frontend/react-utils/useDisplayErrorPage';
8
8
  import EditorContent from '@bigbinary/neeto-editor/EditorContent';
9
9
  import { pluck } from 'ramda';
10
10
  import { Trans } from 'react-i18next';
11
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
12
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
13
+ import { Alert, AlertDescription, AlertAction } from '@bigbinary/neeto-atoms/primitives';
14
+ import classnames from 'classnames';
15
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
16
+ import { X } from '../x-B1Er0oV4.js';
11
17
  import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
12
18
  import { useQuery } from '@tanstack/react-query';
13
19
  import { noop } from '@bigbinary/neeto-cist';
@@ -15,20 +21,64 @@ import axios from 'axios';
15
21
  import { BASE_API_V1_URL } from '@bigbinary/neeto-commons-frontend/constants';
16
22
  import { dayjs } from '@bigbinary/neeto-commons-frontend/utils';
17
23
  import { substituteVariables } from '@bigbinary/neeto-editor/utils';
18
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
24
+ import '../createLucideIcon-mNMhCCpf.js';
19
25
 
20
26
  var QUERY_KEYS = {
21
27
  APP_STICKY_RIBBONS_LIST: "APP_STICKY_RIBBONS_LIST"
22
28
  };
23
- var STICKY_RIBBON_KIND_TO_STYLE = {
24
- info: "blue",
25
- warning: "amber",
26
- error: "red"
27
- };
28
29
  var STICKY_RIBBONS_LOCAL_STORAGE_KEY = "dismissedStickyRibbons";
29
30
  var POLLING_INTERVAL = 5000;
30
31
  var MAX_POLLING_TIME = 60000;
31
32
  var DATE_TIME_FORMAT = "MMMM D h:mm A z";
33
+ var RIBBON_KIND_CONFIG = {
34
+ info: {
35
+ container: "border-info-border bg-info text-info-foreground",
36
+ role: "status"
37
+ },
38
+ warning: {
39
+ container: "border-warning-border bg-warning text-warning-foreground",
40
+ role: "status"
41
+ },
42
+ error: {
43
+ container: "border-error-border bg-error text-error-foreground",
44
+ role: "alert"
45
+ }
46
+ };
47
+
48
+ var _excluded = ["kind", "onDismiss", "children", "className"];
49
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
50
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
51
+ var Ribbon = function Ribbon(_ref) {
52
+ var _RIBBON_KIND_CONFIG$k;
53
+ var _ref$kind = _ref.kind,
54
+ kind = _ref$kind === void 0 ? "info" : _ref$kind,
55
+ onDismiss = _ref.onDismiss,
56
+ children = _ref.children,
57
+ className = _ref.className,
58
+ rest = _objectWithoutProperties(_ref, _excluded);
59
+ var _ref2 = (_RIBBON_KIND_CONFIG$k = RIBBON_KIND_CONFIG[kind]) !== null && _RIBBON_KIND_CONFIG$k !== void 0 ? _RIBBON_KIND_CONFIG$k : RIBBON_KIND_CONFIG.info,
60
+ container = _ref2.container,
61
+ role = _ref2.role;
62
+ return /*#__PURE__*/jsxs(Alert, _objectSpread(_objectSpread({
63
+ role: role,
64
+ className: classnames(container, "rounded-none border-x-0 px-12 py-2.5", className)
65
+ }, rest), {}, {
66
+ children: [/*#__PURE__*/jsx(AlertDescription, {
67
+ className: "text-center text-current",
68
+ children: children
69
+ }), onDismiss && /*#__PURE__*/jsx(AlertAction, {
70
+ children: /*#__PURE__*/jsx("button", {
71
+ "aria-label": "Dismiss",
72
+ className: "focus-visible:ring-ring rounded-sm p-0.5 transition-colors hover:bg-current/10 focus-visible:ring-2 focus-visible:outline-none",
73
+ type: "button",
74
+ onClick: onDismiss,
75
+ children: /*#__PURE__*/jsx(X, {
76
+ className: "size-4"
77
+ })
78
+ })
79
+ })]
80
+ }));
81
+ };
32
82
 
33
83
  var fetchStickyRibbons = function fetchStickyRibbons() {
34
84
  return axios.get("".concat(BASE_API_V1_URL, "/sticky_ribbons"), {
@@ -138,28 +188,23 @@ var StickyRibbonsContainer = function StickyRibbonsContainer() {
138
188
  return !dismissedRibbons.includes(ribbon.id);
139
189
  });
140
190
  return /*#__PURE__*/jsxs(Fragment, {
141
- children: [showRefreshRibbon && !isRefreshRibbonDismissed && /*#__PURE__*/jsx(Badge, {
142
- className: "w-full rounded-none p-2.5 text-center",
191
+ children: [showRefreshRibbon && !isRefreshRibbonDismissed && /*#__PURE__*/jsx(Ribbon, {
143
192
  "data-testid": "refresh-sticky-ribbon",
144
- size: "lg",
145
- variant: STICKY_RIBBON_KIND_TO_STYLE["error"],
193
+ kind: "error",
146
194
  onDismiss: function onDismiss() {
147
195
  return setIsRefreshRibbonDismissed(true);
148
196
  },
149
- children: /*#__PURE__*/jsx("span", {
150
- className: "w-full",
151
- children: /*#__PURE__*/jsx(Trans, {
152
- i18nKey: "neetoMolecules.stickyRibbonsContainer.refreshRibbon",
153
- components: {
154
- button: /*#__PURE__*/jsx(Button, {
155
- "data-testid": "refresh-button",
156
- variant: "link",
157
- onClick: function onClick() {
158
- return window.location.reload();
159
- }
160
- })
161
- }
162
- })
197
+ children: /*#__PURE__*/jsx(Trans, {
198
+ i18nKey: "neetoMolecules.stickyRibbonsContainer.refreshRibbon",
199
+ components: {
200
+ button: /*#__PURE__*/jsx(Button, {
201
+ "data-testid": "refresh-button",
202
+ variant: "link",
203
+ onClick: function onClick() {
204
+ return window.location.reload();
205
+ }
206
+ })
207
+ }
163
208
  })
164
209
  }), visibleRibbons.map(function (_ref) {
165
210
  var id = _ref.id,
@@ -167,23 +212,20 @@ var StickyRibbonsContainer = function StickyRibbonsContainer() {
167
212
  message = _ref.message,
168
213
  startsAt = _ref.startsAt,
169
214
  endsAt = _ref.endsAt;
170
- return /*#__PURE__*/jsx(Badge, {
171
- className: "w-full rounded-none p-2.5 text-center",
215
+ return /*#__PURE__*/createElement(Ribbon, {
216
+ kind: kind,
172
217
  "data-testid": "sticky-ribbon",
173
- size: "lg",
174
- variant: STICKY_RIBBON_KIND_TO_STYLE[kind],
218
+ key: id,
175
219
  onDismiss: function onDismiss() {
176
220
  return handleDismiss(id);
177
- },
178
- children: /*#__PURE__*/jsx(EditorContent, {
179
- className: "w-full",
180
- content: formatMessageContent({
181
- message: message,
182
- startsAt: startsAt,
183
- endsAt: endsAt
184
- })
221
+ }
222
+ }, /*#__PURE__*/jsx(EditorContent, {
223
+ content: formatMessageContent({
224
+ message: message,
225
+ startsAt: startsAt,
226
+ endsAt: endsAt
185
227
  })
186
- }, id);
228
+ }));
187
229
  })]
188
230
  });
189
231
  };
@@ -1 +1 @@
1
- {"version":3,"file":"StickyRibbonsContainer.js","sources":["../../src/v2/components/StickyRibbonsContainer/constants.js","../../src/v2/components/StickyRibbonsContainer/api.js","../../src/v2/components/StickyRibbonsContainer/useStickyRibbonsApi.js","../../src/v2/components/StickyRibbonsContainer/utils.js","../../src/v2/components/StickyRibbonsContainer/index.jsx"],"sourcesContent":["export const QUERY_KEYS = {\n APP_STICKY_RIBBONS_LIST: \"APP_STICKY_RIBBONS_LIST\",\n};\n\nexport const STICKY_RIBBON_KIND_TO_STYLE = {\n info: \"blue\",\n warning: \"amber\",\n error: \"red\",\n};\n\nexport const STICKY_RIBBONS_LOCAL_STORAGE_KEY = \"dismissedStickyRibbons\";\n\nexport const POLLING_INTERVAL = 5000;\nexport const MAX_POLLING_TIME = 60000;\n\nexport const DATE_TIME_FORMAT = \"MMMM D h:mm A z\";\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst fetchStickyRibbons = () =>\n axios.get(`${BASE_API_V1_URL}/sticky_ribbons`, {\n includeMetadataInResponse: true,\n });\n\nconst stickyRibbonsApi = { fetchStickyRibbons };\n\nexport default stickyRibbonsApi;\n","import { useState, useEffect } from \"react\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { noop } from \"neetocist\";\n\nimport stickyRibbonsApi from \"./api\";\nimport { QUERY_KEYS, POLLING_INTERVAL, MAX_POLLING_TIME } from \"./constants\";\n\nconst { APP_STICKY_RIBBONS_LIST } = QUERY_KEYS;\n\nconst useFetchStickyRibbons = () => {\n const [isPolling, setIsPolling] = useState(false);\n\n useEffect(() => {\n if (!isPolling) return noop;\n\n const timer = setTimeout(() => {\n setIsPolling(false);\n }, MAX_POLLING_TIME);\n\n return () => {\n clearTimeout(timer);\n };\n }, [isPolling]);\n\n return useQuery({\n queryKey: [APP_STICKY_RIBBONS_LIST],\n queryFn: async () => {\n const response = await stickyRibbonsApi.fetchStickyRibbons();\n\n if (response.status === 202) {\n setIsPolling(true);\n } else if (response.status === 200) {\n setIsPolling(false);\n }\n\n return response.data;\n },\n refetchInterval: isPolling ? POLLING_INTERVAL : false,\n });\n};\n\nexport { useFetchStickyRibbons };\n","import { dayjs } from \"neetocommons/utils\";\nimport { substituteVariables } from \"neetoeditor\";\n\nimport { DATE_TIME_FORMAT } from \"./constants\";\n\nconst dayTimeFormatter = timestamp =>\n // eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats\n dayjs.utc(timestamp).local().format(DATE_TIME_FORMAT);\n\nexport const formatMessageContent = ({ message, startsAt, endsAt }) =>\n substituteVariables(message, [\n {\n label: \"starts_at\",\n key: \"starts_at\",\n value: dayTimeFormatter(startsAt),\n },\n {\n label: \"ends_at\",\n key: \"ends_at\",\n value: dayTimeFormatter(endsAt),\n },\n ]);\n","import { useState } from \"react\";\n\nimport { Badge, Button } from \"@bigbinary/neeto-atoms\";\nimport { useLocalStorage } from \"neetocommons/react-utils\";\nimport { useErrorDisplayStore } from \"neetocommons/react-utils/useDisplayErrorPage\";\nimport { EditorContent } from \"neetoeditor\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport {\n STICKY_RIBBON_KIND_TO_STYLE,\n STICKY_RIBBONS_LOCAL_STORAGE_KEY,\n} from \"./constants\";\nimport { useFetchStickyRibbons } from \"./useStickyRibbonsApi\";\nimport { formatMessageContent } from \"./utils\";\n\nconst StickyRibbonsContainer = () => {\n const [isRefreshRibbonDismissed, setIsRefreshRibbonDismissed] =\n useState(false);\n\n const [dismissedRibbons, setDismissedRibbons] = useLocalStorage(\n STICKY_RIBBONS_LOCAL_STORAGE_KEY,\n []\n );\n\n const { showRefreshRibbon } = useErrorDisplayStore.pick();\n\n const { data: { stickyRibbons = [] } = {} } = useFetchStickyRibbons();\n\n const handleDismiss = ribbonId => {\n const validRibbonIds = pluck(\"id\", stickyRibbons);\n const updatedDismissedRibbons = dismissedRibbons.filter(id =>\n validRibbonIds.includes(id)\n );\n\n setDismissedRibbons([...updatedDismissedRibbons, ribbonId]);\n };\n\n const visibleRibbons = stickyRibbons.filter(\n ribbon => !dismissedRibbons.includes(ribbon.id)\n );\n\n return (\n <>\n {showRefreshRibbon && !isRefreshRibbonDismissed && (\n <Badge\n className=\"w-full rounded-none p-2.5 text-center\"\n data-testid=\"refresh-sticky-ribbon\"\n size=\"lg\"\n variant={STICKY_RIBBON_KIND_TO_STYLE[\"error\"]}\n onDismiss={() => setIsRefreshRibbonDismissed(true)}\n >\n <span className=\"w-full\">\n <Trans\n i18nKey=\"neetoMolecules.stickyRibbonsContainer.refreshRibbon\"\n components={{\n button: (\n <Button\n data-testid=\"refresh-button\"\n variant=\"link\"\n onClick={() => window.location.reload()}\n />\n ),\n }}\n />\n </span>\n </Badge>\n )}\n {visibleRibbons.map(({ id, kind, message, startsAt, endsAt }) => (\n <Badge\n className=\"w-full rounded-none p-2.5 text-center\"\n data-testid=\"sticky-ribbon\"\n key={id}\n size=\"lg\"\n variant={STICKY_RIBBON_KIND_TO_STYLE[kind]}\n onDismiss={() => handleDismiss(id)}\n >\n <EditorContent\n className=\"w-full\"\n content={formatMessageContent({ message, startsAt, endsAt })}\n />\n </Badge>\n ))}\n </>\n );\n};\n\nexport default StickyRibbonsContainer;\n"],"names":["QUERY_KEYS","APP_STICKY_RIBBONS_LIST","STICKY_RIBBON_KIND_TO_STYLE","info","warning","error","STICKY_RIBBONS_LOCAL_STORAGE_KEY","POLLING_INTERVAL","MAX_POLLING_TIME","DATE_TIME_FORMAT","fetchStickyRibbons","axios","get","concat","BASE_API_V1_URL","includeMetadataInResponse","stickyRibbonsApi","e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","useFetchStickyRibbons","_useState","useState","_useState2","_slicedToArray","isPolling","setIsPolling","useEffect","noop","timer","setTimeout","clearTimeout","useQuery","queryKey","queryFn","_queryFn","_asyncToGenerator","_callee","response","_context","status","data","apply","arguments","refetchInterval","dayTimeFormatter","timestamp","dayjs","utc","local","format","formatMessageContent","_ref","message","startsAt","endsAt","substituteVariables","label","key","StickyRibbonsContainer","isRefreshRibbonDismissed","setIsRefreshRibbonDismissed","_useLocalStorage","useLocalStorage","_useLocalStorage2","dismissedRibbons","setDismissedRibbons","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","showRefreshRibbon","_useFetchStickyRibbon","_useFetchStickyRibbon2","_useFetchStickyRibbon3","_useFetchStickyRibbon4","stickyRibbons","handleDismiss","ribbonId","validRibbonIds","pluck","updatedDismissedRibbons","filter","id","includes","_toConsumableArray","visibleRibbons","ribbon","_jsxs","_Fragment","children","_jsx","Badge","className","size","variant","onDismiss","Trans","i18nKey","components","button","Button","onClick","window","location","reload","map","kind","EditorContent","content"],"mappings":"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"}
1
+ {"version":3,"file":"StickyRibbonsContainer.js","sources":["../../src/v2/components/StickyRibbonsContainer/constants.js","../../src/v2/components/StickyRibbonsContainer/Ribbon.jsx","../../src/v2/components/StickyRibbonsContainer/api.js","../../src/v2/components/StickyRibbonsContainer/useStickyRibbonsApi.js","../../src/v2/components/StickyRibbonsContainer/utils.js","../../src/v2/components/StickyRibbonsContainer/index.jsx"],"sourcesContent":["export const QUERY_KEYS = {\n APP_STICKY_RIBBONS_LIST: \"APP_STICKY_RIBBONS_LIST\",\n};\n\nexport const STICKY_RIBBONS_LOCAL_STORAGE_KEY = \"dismissedStickyRibbons\";\n\nexport const POLLING_INTERVAL = 5000;\nexport const MAX_POLLING_TIME = 60000;\n\nexport const DATE_TIME_FORMAT = \"MMMM D h:mm A z\";\n\nexport const RIBBON_KIND_CONFIG = {\n info: {\n container: \"border-info-border bg-info text-info-foreground\",\n role: \"status\",\n },\n warning: {\n container: \"border-warning-border bg-warning text-warning-foreground\",\n role: \"status\",\n },\n error: {\n container: \"border-error-border bg-error text-error-foreground\",\n role: \"alert\",\n },\n};\n","import {\n Alert,\n AlertAction,\n AlertDescription,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport classnames from \"classnames\";\nimport { X } from \"lucide-react\";\n\nimport { RIBBON_KIND_CONFIG } from \"./constants\";\n\nconst Ribbon = ({ kind = \"info\", onDismiss, children, className, ...rest }) => {\n const { container, role } =\n RIBBON_KIND_CONFIG[kind] ?? RIBBON_KIND_CONFIG.info;\n\n return (\n <Alert\n {...{ role }}\n className={classnames(\n container,\n \"rounded-none border-x-0 px-12 py-2.5\",\n className\n )}\n {...rest}\n >\n <AlertDescription className=\"text-center text-current\">\n {children}\n </AlertDescription>\n {onDismiss && (\n <AlertAction>\n <button\n aria-label=\"Dismiss\"\n className=\"focus-visible:ring-ring rounded-sm p-0.5 transition-colors hover:bg-current/10 focus-visible:ring-2 focus-visible:outline-none\"\n type=\"button\"\n onClick={onDismiss}\n >\n <X className=\"size-4\" />\n </button>\n </AlertAction>\n )}\n </Alert>\n );\n};\n\nexport default Ribbon;\n","import axios from \"axios\";\nimport { BASE_API_V1_URL } from \"neetocommons/constants\";\n\nconst fetchStickyRibbons = () =>\n axios.get(`${BASE_API_V1_URL}/sticky_ribbons`, {\n includeMetadataInResponse: true,\n });\n\nconst stickyRibbonsApi = { fetchStickyRibbons };\n\nexport default stickyRibbonsApi;\n","import { useState, useEffect } from \"react\";\n\nimport { useQuery } from \"@tanstack/react-query\";\nimport { noop } from \"neetocist\";\n\nimport stickyRibbonsApi from \"./api\";\nimport { QUERY_KEYS, POLLING_INTERVAL, MAX_POLLING_TIME } from \"./constants\";\n\nconst { APP_STICKY_RIBBONS_LIST } = QUERY_KEYS;\n\nconst useFetchStickyRibbons = () => {\n const [isPolling, setIsPolling] = useState(false);\n\n useEffect(() => {\n if (!isPolling) return noop;\n\n const timer = setTimeout(() => {\n setIsPolling(false);\n }, MAX_POLLING_TIME);\n\n return () => {\n clearTimeout(timer);\n };\n }, [isPolling]);\n\n return useQuery({\n queryKey: [APP_STICKY_RIBBONS_LIST],\n queryFn: async () => {\n const response = await stickyRibbonsApi.fetchStickyRibbons();\n\n if (response.status === 202) {\n setIsPolling(true);\n } else if (response.status === 200) {\n setIsPolling(false);\n }\n\n return response.data;\n },\n refetchInterval: isPolling ? POLLING_INTERVAL : false,\n });\n};\n\nexport { useFetchStickyRibbons };\n","import { dayjs } from \"neetocommons/utils\";\nimport { substituteVariables } from \"neetoeditor\";\n\nimport { DATE_TIME_FORMAT } from \"./constants\";\n\nconst dayTimeFormatter = timestamp =>\n // eslint-disable-next-line @bigbinary/neeto/use-standard-date-time-formats\n dayjs.utc(timestamp).local().format(DATE_TIME_FORMAT);\n\nexport const formatMessageContent = ({ message, startsAt, endsAt }) =>\n substituteVariables(message, [\n {\n label: \"starts_at\",\n key: \"starts_at\",\n value: dayTimeFormatter(startsAt),\n },\n {\n label: \"ends_at\",\n key: \"ends_at\",\n value: dayTimeFormatter(endsAt),\n },\n ]);\n","import { useState } from \"react\";\n\nimport { Button } from \"@bigbinary/neeto-atoms\";\nimport { useLocalStorage } from \"neetocommons/react-utils\";\nimport { useErrorDisplayStore } from \"neetocommons/react-utils/useDisplayErrorPage\";\nimport { EditorContent } from \"neetoeditor\";\nimport { pluck } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport { STICKY_RIBBONS_LOCAL_STORAGE_KEY } from \"./constants\";\nimport Ribbon from \"./Ribbon\";\nimport { useFetchStickyRibbons } from \"./useStickyRibbonsApi\";\nimport { formatMessageContent } from \"./utils\";\n\nconst StickyRibbonsContainer = () => {\n const [isRefreshRibbonDismissed, setIsRefreshRibbonDismissed] =\n useState(false);\n\n const [dismissedRibbons, setDismissedRibbons] = useLocalStorage(\n STICKY_RIBBONS_LOCAL_STORAGE_KEY,\n []\n );\n\n const { showRefreshRibbon } = useErrorDisplayStore.pick();\n\n const { data: { stickyRibbons = [] } = {} } = useFetchStickyRibbons();\n\n const handleDismiss = ribbonId => {\n const validRibbonIds = pluck(\"id\", stickyRibbons);\n const updatedDismissedRibbons = dismissedRibbons.filter(id =>\n validRibbonIds.includes(id)\n );\n\n setDismissedRibbons([...updatedDismissedRibbons, ribbonId]);\n };\n\n const visibleRibbons = stickyRibbons.filter(\n ribbon => !dismissedRibbons.includes(ribbon.id)\n );\n\n return (\n <>\n {showRefreshRibbon && !isRefreshRibbonDismissed && (\n <Ribbon\n data-testid=\"refresh-sticky-ribbon\"\n kind=\"error\"\n onDismiss={() => setIsRefreshRibbonDismissed(true)}\n >\n <Trans\n i18nKey=\"neetoMolecules.stickyRibbonsContainer.refreshRibbon\"\n components={{\n button: (\n <Button\n data-testid=\"refresh-button\"\n variant=\"link\"\n onClick={() => window.location.reload()}\n />\n ),\n }}\n />\n </Ribbon>\n )}\n {visibleRibbons.map(({ id, kind, message, startsAt, endsAt }) => (\n <Ribbon\n {...{ kind }}\n data-testid=\"sticky-ribbon\"\n key={id}\n onDismiss={() => handleDismiss(id)}\n >\n <EditorContent\n content={formatMessageContent({ message, startsAt, endsAt })}\n />\n </Ribbon>\n ))}\n </>\n );\n};\n\nexport default StickyRibbonsContainer;\n"],"names":["QUERY_KEYS","APP_STICKY_RIBBONS_LIST","STICKY_RIBBONS_LOCAL_STORAGE_KEY","POLLING_INTERVAL","MAX_POLLING_TIME","DATE_TIME_FORMAT","RIBBON_KIND_CONFIG","info","container","role","warning","error","Ribbon","_ref","_RIBBON_KIND_CONFIG$k","_ref$kind","kind","onDismiss","children","className","rest","_objectWithoutProperties","_excluded","_ref2","_jsxs","Alert","_objectSpread","classnames","_jsx","AlertDescription","AlertAction","type","onClick","X","fetchStickyRibbons","axios","get","concat","BASE_API_V1_URL","includeMetadataInResponse","stickyRibbonsApi","e","t","r","Symbol","n","iterator","o","toStringTag","i","c","prototype","Generator","u","Object","create","_regeneratorDefine2","f","p","y","G","v","a","d","bind","length","l","TypeError","call","done","value","GeneratorFunction","GeneratorFunctionPrototype","getPrototypeOf","setPrototypeOf","__proto__","displayName","_regenerator","w","m","defineProperty","_regeneratorDefine","_invoke","enumerable","configurable","writable","useFetchStickyRibbons","_useState","useState","_useState2","_slicedToArray","isPolling","setIsPolling","useEffect","noop","timer","setTimeout","clearTimeout","useQuery","queryKey","queryFn","_queryFn","_asyncToGenerator","_callee","response","_context","status","data","apply","arguments","refetchInterval","dayTimeFormatter","timestamp","dayjs","utc","local","format","formatMessageContent","message","startsAt","endsAt","substituteVariables","label","key","StickyRibbonsContainer","isRefreshRibbonDismissed","setIsRefreshRibbonDismissed","_useLocalStorage","useLocalStorage","_useLocalStorage2","dismissedRibbons","setDismissedRibbons","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","showRefreshRibbon","_useFetchStickyRibbon","_useFetchStickyRibbon2","_useFetchStickyRibbon3","_useFetchStickyRibbon4","stickyRibbons","handleDismiss","ribbonId","validRibbonIds","pluck","updatedDismissedRibbons","filter","id","includes","_toConsumableArray","visibleRibbons","ribbon","_Fragment","Trans","i18nKey","components","button","Button","variant","window","location","reload","map","_createElement","EditorContent","content"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAO,IAAMA,UAAU,GAAG;AACxBC,EAAAA,uBAAuB,EAAE;AAC3B,CAAC;AAEM,IAAMC,gCAAgC,GAAG,wBAAwB;AAEjE,IAAMC,gBAAgB,GAAG,IAAI;AAC7B,IAAMC,gBAAgB,GAAG,KAAK;AAE9B,IAAMC,gBAAgB,GAAG,iBAAiB;AAE1C,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,IAAI,EAAE;AACJC,IAAAA,SAAS,EAAE,iDAAiD;AAC5DC,IAAAA,IAAI,EAAE;GACP;AACDC,EAAAA,OAAO,EAAE;AACPF,IAAAA,SAAS,EAAE,0DAA0D;AACrEC,IAAAA,IAAI,EAAE;GACP;AACDE,EAAAA,KAAK,EAAE;AACLH,IAAAA,SAAS,EAAE,oDAAoD;AAC/DC,IAAAA,IAAI,EAAE;AACR;AACF,CAAC;;;;;ACdD,IAAMG,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAmE;AAAA,EAAA,IAAAC,qBAAA;AAAA,EAAA,IAAAC,SAAA,GAAAF,IAAA,CAA7DG,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,SAAA;IAAEE,SAAS,GAAAJ,IAAA,CAATI,SAAS;IAAEC,QAAQ,GAAAL,IAAA,CAARK,QAAQ;IAAEC,SAAS,GAAAN,IAAA,CAATM,SAAS;AAAKC,IAAAA,IAAI,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA;AACtE,EAAA,IAAAC,KAAA,GAAA,CAAAT,qBAAA,GACER,kBAAkB,CAACU,IAAI,CAAC,MAAA,IAAA,IAAAF,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAIR,kBAAkB,CAACC,IAAI;IAD7CC,SAAS,GAAAe,KAAA,CAATf,SAAS;IAAEC,IAAI,GAAAc,KAAA,CAAJd,IAAI;AAGvB,EAAA,oBACEe,IAAA,CAACC,KAAK,EAAAC,aAAA,CAAAA,aAAA,CAAA;AACEjB,IAAAA,IAAI,EAAJA,IAAI;AACVU,IAAAA,SAAS,EAAEQ,UAAU,CACnBnB,SAAS,EACT,sCAAsC,EACtCW,SACF;AAAE,GAAA,EACEC,IAAI,CAAA,EAAA,EAAA,EAAA;IAAAF,QAAA,EAAA,cAERU,GAAA,CAACC,gBAAgB,EAAA;AAACV,MAAAA,SAAS,EAAC,0BAA0B;AAAAD,MAAAA,QAAA,EACnDA;AAAQ,KACO,CAAC,EAClBD,SAAS,iBACRW,GAAA,CAACE,WAAW,EAAA;AAAAZ,MAAAA,QAAA,eACVU,GAAA,CAAA,QAAA,EAAA;AACE,QAAA,YAAA,EAAW,SAAS;AACpBT,QAAAA,SAAS,EAAC,gIAAgI;AAC1IY,QAAAA,IAAI,EAAC,QAAQ;AACbC,QAAAA,OAAO,EAAEf,SAAU;QAAAC,QAAA,eAEnBU,GAAA,CAACK,CAAC,EAAA;AAACd,UAAAA,SAAS,EAAC;SAAU;OACjB;AAAC,KACE,CACd;AAAA,GAAA,CACI,CAAC;AAEZ,CAAC;;ACtCD,IAAMe,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;AAAA,EAAA,OACtBC,KAAK,CAACC,GAAG,IAAAC,MAAA,CAAIC,eAAe,EAAA,iBAAA,CAAA,EAAmB;AAC7CC,IAAAA,yBAAyB,EAAE;AAC7B,GAAC,CAAC;AAAA,CAAA;AAEJ,IAAMC,gBAAgB,GAAG;AAAEN,EAAAA,kBAAkB,EAAlBA;AAAmB,CAAC;;ACP/C,SAAA,YAAA,GAAA,qKAAA,IAAAO,CAAA,EAAAC,CAAA,EAAAC,CAAA,GAAA,UAAA,IAAA,OAAAC,MAAA,GAAAA,MAAA,GAAA,EAAA,EAAAC,CAAA,GAAAF,CAAA,CAAAG,QAAA,IAAA,YAAA,EAAAC,CAAA,GAAAJ,CAAA,CAAAK,WAAA,IAAA,eAAA,CAAA,CAAA,SAAAC,EAAAN,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAC,CAAA,GAAAL,CAAA,IAAAA,CAAA,CAAAM,SAAA,YAAAC,SAAA,GAAAP,CAAA,GAAAO,SAAA,EAAAC,CAAA,GAAAC,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAAC,SAAA,CAAA,CAAA,CAAA,OAAAK,mBAAA,CAAAH,CAAA,EAAA,SAAA,EAAA,UAAAV,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAA,EAAA,IAAAE,CAAA,EAAAC,CAAA,EAAAG,CAAA,EAAAI,CAAA,GAAA,CAAA,EAAAC,CAAA,GAAAX,CAAA,IAAA,EAAA,EAAAY,CAAA,GAAA,KAAA,EAAAC,CAAA,GAAA,EAAAF,CAAA,EAAA,CAAA,EAAAb,CAAA,EAAA,CAAA,EAAAgB,CAAA,EAAApB,CAAA,EAAAqB,CAAA,EAAAC,CAAA,EAAAN,CAAA,EAAAM,CAAA,CAAAC,IAAA,CAAAvB,CAAA,EAAA,CAAA,CAAA,EAAAsB,CAAA,WAAAA,CAAAA,CAAArB,CAAA,EAAAC,CAAA,WAAAM,CAAA,GAAAP,CAAA,EAAAQ,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAZ,CAAA,EAAAmB,CAAA,CAAAf,CAAA,GAAAF,CAAA,EAAAmB,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,SAAAC,EAAApB,CAAA,EAAAE,CAAA,EAAA,EAAA,KAAAK,CAAA,GAAAP,CAAA,EAAAU,CAAA,GAAAR,CAAA,EAAAH,CAAA,OAAAiB,CAAA,IAAAF,CAAA,IAAA,CAAAV,CAAA,IAAAL,CAAA,GAAAgB,CAAA,CAAAO,MAAA,EAAAvB,CAAA,UAAAK,CAAA,EAAAE,CAAA,GAAAS,CAAA,CAAAhB,CAAA,CAAA,EAAAqB,CAAA,GAAAH,CAAA,CAAAF,CAAA,EAAAQ,CAAA,GAAAjB,CAAA,KAAAN,CAAA,GAAA,CAAA,GAAA,CAAAI,CAAA,GAAAmB,CAAA,KAAArB,CAAA,MAAAQ,CAAA,GAAAJ,CAAA,CAAA,CAAAC,CAAA,GAAAD,CAAA,CAAA,CAAA,CAAA,IAAA,CAAA,IAAAC,CAAA,GAAA,CAAA,EAAA,CAAA,CAAA,CAAA,EAAAD,CAAA,CAAA,CAAA,CAAA,GAAAA,CAAA,CAAA,CAAA,CAAA,GAAAR,CAAA,IAAAQ,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,KAAA,CAAAhB,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAoB,CAAA,GAAAd,CAAA,CAAA,CAAA,CAAA,KAAAC,CAAA,MAAAU,CAAA,CAAAC,CAAA,GAAAhB,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAI,CAAA,CAAA,CAAA,CAAA,IAAAc,CAAA,GAAAG,CAAA,KAAAnB,CAAA,GAAAJ,CAAA,GAAA,CAAA,IAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,IAAAA,CAAA,GAAAqB,CAAA,MAAAjB,CAAA,CAAA,CAAA,CAAA,GAAAN,CAAA,EAAAM,CAAA,CAAA,CAAA,CAAA,GAAAJ,CAAA,EAAAe,CAAA,CAAAf,CAAA,GAAAqB,CAAA,EAAAhB,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAH,CAAA,IAAAJ,CAAA,GAAA,CAAA,EAAA,OAAAmB,CAAA,CAAA,CAAA,MAAAH,CAAA,GAAA,IAAA,EAAAd,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,UAAAE,CAAA,EAAAW,CAAA,EAAAQ,CAAA,EAAA,EAAA,IAAAT,CAAA,GAAA,CAAA,EAAA,MAAAU,SAAA,CAAA,8BAAA,CAAA,CAAA,CAAA,KAAAR,CAAA,UAAAD,CAAA,IAAAK,CAAA,CAAAL,CAAA,EAAAQ,CAAA,CAAA,EAAAhB,CAAA,GAAAQ,CAAA,EAAAL,CAAA,GAAAa,CAAA,EAAA,CAAAxB,CAAA,GAAAQ,CAAA,GAAA,CAAA,GAAAT,CAAA,GAAAY,CAAA,KAAA,CAAAM,CAAA,GAAA,EAAAV,CAAA,KAAAC,CAAA,GAAAA,CAAA,GAAA,CAAA,IAAAA,CAAA,GAAA,CAAA,KAAAU,CAAA,CAAAf,CAAA,GAAA,EAAA,CAAA,EAAAkB,CAAA,CAAAb,CAAA,EAAAG,CAAA,CAAA,IAAAO,CAAA,CAAAf,CAAA,GAAAQ,CAAA,GAAAO,CAAA,CAAAC,CAAA,GAAAR,CAAA,aAAAI,CAAA,GAAA,CAAA,EAAAR,CAAA,EAAA,EAAA,IAAAC,CAAA,KAAAH,CAAA,GAAA,MAAA,CAAA,EAAAL,CAAA,GAAAO,CAAA,CAAAF,CAAA,WAAAL,CAAA,GAAAA,CAAA,CAAA0B,IAAA,CAAAnB,CAAA,EAAAI,CAAA,CAAA,CAAA,EAAA,MAAAc,SAAA,CAAA,kCAAA,CAAA,CAAA,CAAA,IAAA,CAAAzB,CAAA,CAAA2B,IAAA,EAAA,OAAA3B,CAAA,CAAA,CAAAW,CAAA,GAAAX,CAAA,CAAA4B,KAAA,EAAApB,CAAA,GAAA,CAAA,KAAAA,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,MAAA,CAAA,KAAAA,CAAA,KAAAR,CAAA,GAAAO,CAAA,CAAA,QAAA,CAAA,CAAA,IAAAP,CAAA,CAAA0B,IAAA,CAAAnB,CAAA,CAAA,EAAAC,CAAA,SAAAG,CAAA,GAAAc,SAAA,CAAA,mCAAA,GAAApB,CAAA,GAAA,UAAA,CAAA,EAAAG,CAAA,GAAA,CAAA,CAAA,CAAA,CAAAD,CAAA,GAAAR,CAAA,CAAA,CAAA,CAAA,MAAA,IAAA,CAAAC,CAAA,IAAAiB,CAAA,GAAAC,CAAA,CAAAf,CAAA,GAAA,CAAA,IAAAQ,CAAA,GAAAV,CAAA,CAAAyB,IAAA,CAAAvB,CAAA,EAAAe,CAAA,CAAA,MAAAE,CAAA,EAAA,MAAA,CAAA,CAAA,CAAA,OAAApB,CAAA,EAAA,EAAAO,CAAA,GAAAR,CAAA,EAAAS,CAAA,GAAA,CAAA,EAAAG,CAAA,GAAAX,CAAA,CAAA,CAAA,CAAA,SAAA,EAAAe,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA,EAAAa,KAAA,EAAA5B,CAAA,EAAA2B,IAAA,EAAAV,CAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAAhB,CAAA,EAAAI,CAAA,EAAAE,CAAA,CAAA,EAAA,IAAA,CAAA,EAAAI,CAAA,CAAA,CAAA,CAAA,CAAA,IAAAS,CAAA,GAAA,EAAA,CAAA,CAAA,SAAAV,SAAAA,eAAAmB,iBAAAA,GAAA,CAAA,CAAA,CAAA,SAAAC,0BAAAA,GAAA,CAAA,CAAA,CAAA9B,CAAA,GAAAY,MAAA,CAAAmB,cAAA,CAAA,CAAA,IAAAvB,CAAA,GAAA,EAAA,CAAAL,CAAA,CAAA,GAAAH,CAAA,CAAAA,CAAA,IAAAG,CAAA,CAAA,EAAA,CAAA,CAAA,IAAAW,mBAAA,CAAAd,CAAA,GAAA,EAAA,EAAAG,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAH,CAAA,GAAAW,CAAA,GAAAmB,0BAAA,CAAArB,SAAA,GAAAC,SAAA,CAAAD,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAL,CAAA,CAAA,CAAA,CAAA,SAAAO,CAAAA,CAAAhB,CAAA,WAAAa,MAAA,CAAAoB,cAAA,GAAApB,MAAA,CAAAoB,cAAA,CAAAjC,CAAA,EAAA+B,0BAAA,CAAA,IAAA/B,CAAA,CAAAkC,SAAA,GAAAH,0BAAA,EAAAhB,mBAAA,CAAAf,CAAA,EAAAM,CAAA,EAAA,mBAAA,CAAA,CAAA,EAAAN,CAAA,CAAAU,SAAA,GAAAG,MAAA,CAAAC,MAAA,CAAAF,CAAA,CAAA,EAAAZ,CAAA,CAAA,CAAA,CAAA,CAAA,OAAA8B,iBAAA,CAAApB,SAAA,GAAAqB,0BAAA,EAAAhB,mBAAA,CAAAH,CAAA,iBAAAmB,0BAAA,CAAA,EAAAhB,mBAAA,CAAAgB,0BAAA,EAAA,aAAA,EAAAD,iBAAA,CAAA,EAAAA,iBAAA,CAAAK,WAAA,GAAA,mBAAA,EAAApB,mBAAA,CAAAgB,0BAAA,EAAAzB,CAAA,EAAA,mBAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,CAAA,EAAAG,mBAAA,CAAAH,CAAA,EAAAN,CAAA,EAAA,WAAA,CAAA,EAAAS,mBAAA,CAAAH,CAAA,EAAAR,CAAA,EAAA,YAAA,EAAA,OAAA,IAAA,CAAA,CAAA,CAAA,CAAA,EAAAW,mBAAA,CAAAH,CAAA,8DAAAwB,YAAA,GAAA,SAAAA,YAAAA,GAAA,EAAA,OAAA,EAAAC,CAAA,EAAA7B,CAAA,EAAA8B,CAAA,EAAAtB,CAAA,EAAA,CAAA,CAAA,CAAA,GAAA,CAAA,CAAA;AAAA,SAAAD,mBAAAA,CAAAf,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAH,CAAA,EAAA,EAAA,IAAAO,CAAA,GAAAK,MAAA,CAAA0B,cAAA,CAAA,CAAA,IAAA,EAAA/B,CAAA,uBAAAR,CAAA,EAAA,EAAAQ,CAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAAO,mBAAA,GAAA,SAAAyB,mBAAAxC,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAH,CAAA,EAAA,EAAA,SAAAK,CAAAA,CAAAJ,CAAA,EAAAE,CAAA,IAAAW,mBAAA,CAAAf,CAAA,EAAAE,CAAA,YAAAF,CAAA,EAAA,EAAA,OAAA,IAAA,CAAAyC,OAAA,CAAAvC,CAAA,EAAAE,CAAA,EAAAJ,CAAA,SAAAE,CAAA,GAAAM,CAAA,GAAAA,CAAA,CAAAR,CAAA,EAAAE,CAAA,IAAA2B,KAAA,EAAAzB,CAAA,EAAAsC,UAAA,GAAAzC,CAAA,EAAA0C,YAAA,EAAA,CAAA1C,CAAA,EAAA2C,QAAA,EAAA,CAAA3C,CAAA,MAAAD,CAAA,CAAAE,CAAA,CAAA,GAAAE,CAAA,IAAAE,CAAA,CAAA,MAAA,EAAA,CAAA,CAAA,EAAAA,CAAA,cAAAA,CAAA,CAAA,QAAA,EAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA,EAAAS,mBAAA,CAAAf,CAAA,EAAAE,CAAA,EAAAE,CAAA,EAAAH,CAAA,CAAA,CAAA,CAAA;AAOA,IAAQzC,uBAAuB,GAAKD,UAAU,CAAtCC,uBAAuB;AAE/B,IAAMqF,qBAAqB,GAAG,SAAxBA,qBAAqBA,GAAS;AAClC,EAAA,IAAAC,SAAA,GAAkCC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1CI,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,YAAY,GAAAH,UAAA,CAAA,CAAA,CAAA;AAE9BI,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAACF,SAAS,EAAE,OAAOG,IAAI;AAE3B,IAAA,IAAMC,KAAK,GAAGC,UAAU,CAAC,YAAM;MAC7BJ,YAAY,CAAC,KAAK,CAAC;IACrB,CAAC,EAAExF,gBAAgB,CAAC;AAEpB,IAAA,OAAO,YAAM;MACX6F,YAAY,CAACF,KAAK,CAAC;IACrB,CAAC;AACH,EAAA,CAAC,EAAE,CAACJ,SAAS,CAAC,CAAC;AAEf,EAAA,OAAOO,QAAQ,CAAC;IACdC,QAAQ,EAAE,CAAClG,uBAAuB,CAAC;IACnCmG,OAAO,EAAA,YAAA;MAAA,IAAAC,QAAA,GAAAC,iBAAA,cAAAzB,YAAA,EAAA,CAAAE,CAAA,CAAE,SAAAwB,OAAAA,GAAA;AAAA,QAAA,IAAAC,QAAA;AAAA,QAAA,OAAA3B,YAAA,EAAA,CAAAC,CAAA,CAAA,UAAA2B,QAAA,EAAA;UAAA,OAAA,CAAA,EAAA,QAAAA,QAAA,CAAA5D,CAAA;AAAA,YAAA,KAAA,CAAA;AAAA4D,cAAAA,QAAA,CAAA5D,CAAA,GAAA,CAAA;AAAA,cAAA,OACgBL,gBAAgB,CAACN,kBAAkB,EAAE;AAAA,YAAA,KAAA,CAAA;cAAtDsE,QAAQ,GAAAC,QAAA,CAAA5C,CAAA;AAEd,cAAA,IAAI2C,QAAQ,CAACE,MAAM,KAAK,GAAG,EAAE;gBAC3Bd,YAAY,CAAC,IAAI,CAAC;AACpB,cAAA,CAAC,MAAM,IAAIY,QAAQ,CAACE,MAAM,KAAK,GAAG,EAAE;gBAClCd,YAAY,CAAC,KAAK,CAAC;AACrB,cAAA;AAAC,cAAA,OAAAa,QAAA,CAAA3C,CAAA,CAAA,CAAA,EAEM0C,QAAQ,CAACG,IAAI,CAAA;AAAA;AAAA,QAAA,CAAA,EAAAJ,OAAA,CAAA;MAAA,CACrB,CAAA,CAAA;AAAA,MAAA,SAVDH,OAAOA,GAAA;AAAA,QAAA,OAAAC,QAAA,CAAAO,KAAA,CAAA,IAAA,EAAAC,SAAA,CAAA;AAAA,MAAA;AAAA,MAAA,OAAPT,OAAO;IAAA,CAAA,EAUN;AACDU,IAAAA,eAAe,EAAEnB,SAAS,GAAGxF,gBAAgB,GAAG;AAClD,GAAC,CAAC;AACJ,CAAC;;ACnCD,IAAM4G,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,SAAS,EAAA;AAAA,EAAA;AAChC;AACAC,IAAAA,KAAK,CAACC,GAAG,CAACF,SAAS,CAAC,CAACG,KAAK,EAAE,CAACC,MAAM,CAAC/G,gBAAgB;AAAC;AAAA,CAAA;AAEhD,IAAMgH,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAxG,IAAA,EAAA;AAAA,EAAA,IAAMyG,OAAO,GAAAzG,IAAA,CAAPyG,OAAO;IAAEC,QAAQ,GAAA1G,IAAA,CAAR0G,QAAQ;IAAEC,MAAM,GAAA3G,IAAA,CAAN2G,MAAM;AAAA,EAAA,OAC9DC,mBAAmB,CAACH,OAAO,EAAE,CAC3B;AACEI,IAAAA,KAAK,EAAE,WAAW;AAClBC,IAAAA,GAAG,EAAE,WAAW;IAChBrD,KAAK,EAAEyC,gBAAgB,CAACQ,QAAQ;AAClC,GAAC,EACD;AACEG,IAAAA,KAAK,EAAE,SAAS;AAChBC,IAAAA,GAAG,EAAE,SAAS;IACdrD,KAAK,EAAEyC,gBAAgB,CAACS,MAAM;AAChC,GAAC,CACF,CAAC;AAAA,CAAA;;ACPJ,IAAMI,sBAAsB,GAAG,SAAzBA,sBAAsBA,GAAS;AACnC,EAAA,IAAArC,SAAA,GACEC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AADVsC,IAAAA,wBAAwB,GAAApC,UAAA,CAAA,CAAA,CAAA;AAAEqC,IAAAA,2BAA2B,GAAArC,UAAA,CAAA,CAAA,CAAA;AAG5D,EAAA,IAAAsC,gBAAA,GAAgDC,eAAe,CAC7D9H,gCAAgC,EAChC,EACF,CAAC;IAAA+H,iBAAA,GAAAvC,cAAA,CAAAqC,gBAAA,EAAA,CAAA,CAAA;AAHMG,IAAAA,gBAAgB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,mBAAmB,GAAAF,iBAAA,CAAA,CAAA,CAAA;AAK5C,EAAA,IAAAG,qBAAA,GAAAC,oBAAA,CAAAC,UAAA,WAAAC,KAAA,EAAA;AAAA,MAAA,OAAA;AAAQC,QAAAA,iBAAiB,EAAAD,KAAA,CAAA,mBAAA;AAAA,OAAA;AAAA,IAAA,CAAA,CAAA,CAAA;IAAjBC,iBAAiB,GAAAJ,qBAAA,CAAjBI,iBAAiB;AAEzB,EAAA,IAAAC,qBAAA,GAA8CnD,qBAAqB,EAAE;IAAAoD,sBAAA,GAAAD,qBAAA,CAA7D9B,IAAI;AAAAgC,IAAAA,sBAAA,GAAAD,sBAAA,KAAA,MAAA,GAA2B,EAAE,GAAAA,sBAAA;IAAAE,sBAAA,GAAAD,sBAAA,CAAzBE,aAAa;AAAbA,IAAAA,aAAa,GAAAD,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;AAElC,EAAA,IAAME,aAAa,GAAG,SAAhBA,aAAaA,CAAGC,QAAQ,EAAI;AAChC,IAAA,IAAMC,cAAc,GAAGC,KAAK,CAAC,IAAI,EAAEJ,aAAa,CAAC;AACjD,IAAA,IAAMK,uBAAuB,GAAGhB,gBAAgB,CAACiB,MAAM,CAAC,UAAAC,EAAE,EAAA;AAAA,MAAA,OACxDJ,cAAc,CAACK,QAAQ,CAACD,EAAE,CAAC;AAAA,IAAA,CAC7B,CAAC;IAEDjB,mBAAmB,CAAA,EAAA,CAAA9F,MAAA,CAAAiH,kBAAA,CAAKJ,uBAAuB,CAAA,EAAA,CAAEH,QAAQ,CAAA,CAAC,CAAC;EAC7D,CAAC;AAED,EAAA,IAAMQ,cAAc,GAAGV,aAAa,CAACM,MAAM,CACzC,UAAAK,MAAM,EAAA;IAAA,OAAI,CAACtB,gBAAgB,CAACmB,QAAQ,CAACG,MAAM,CAACJ,EAAE,CAAC;AAAA,EAAA,CACjD,CAAC;EAED,oBACE5H,IAAA,CAAAiI,QAAA,EAAA;IAAAvI,QAAA,EAAA,CACGsH,iBAAiB,IAAI,CAACX,wBAAwB,iBAC7CjG,GAAA,CAAChB,MAAM,EAAA;AACL,MAAA,aAAA,EAAY,uBAAuB;AACnCI,MAAAA,IAAI,EAAC,OAAO;MACZC,SAAS,EAAE,SAAXA,SAASA,GAAA;QAAA,OAAQ6G,2BAA2B,CAAC,IAAI,CAAC;MAAA,CAAC;MAAA5G,QAAA,eAEnDU,GAAA,CAAC8H,KAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,qDAAqD;AAC7DC,QAAAA,UAAU,EAAE;UACVC,MAAM,eACJjI,GAAA,CAACkI,MAAM,EAAA;AACL,YAAA,aAAA,EAAY,gBAAgB;AAC5BC,YAAAA,OAAO,EAAC,MAAM;YACd/H,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,cAAA,OAAQgI,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE;AAAA,YAAA;WACxC;AAEL;OACD;AAAC,KACI,CACT,EACAX,cAAc,CAACY,GAAG,CAAC,UAAAtJ,IAAA,EAAA;AAAA,MAAA,IAAGuI,EAAE,GAAAvI,IAAA,CAAFuI,EAAE;QAAEpI,IAAI,GAAAH,IAAA,CAAJG,IAAI;QAAEsG,OAAO,GAAAzG,IAAA,CAAPyG,OAAO;QAAEC,QAAQ,GAAA1G,IAAA,CAAR0G,QAAQ;QAAEC,MAAM,GAAA3G,IAAA,CAAN2G,MAAM;MAAA,oBACxD4C,aAAA,CAACxJ,MAAM,EAAA;AACCI,QAAAA,IAAI,EAAJA,IAAI;AACV,QAAA,aAAA,EAAY,eAAe;AAC3B2G,QAAAA,GAAG,EAAEyB,EAAG;QACRnI,SAAS,EAAE,SAAXA,SAASA,GAAA;UAAA,OAAQ6H,aAAa,CAACM,EAAE,CAAC;AAAA,QAAA;OAAC,eAEnCxH,GAAA,CAACyI,aAAa,EAAA;QACZC,OAAO,EAAEjD,oBAAoB,CAAC;AAAEC,UAAAA,OAAO,EAAPA,OAAO;AAAEC,UAAAA,QAAQ,EAARA,QAAQ;AAAEC,UAAAA,MAAM,EAANA;SAAQ;AAAE,OAC9D,CACK,CAAC;AAAA,IAAA,CACV,CAAC;AAAA,GACF,CAAC;AAEP;;;;"}