@bigbinary/neeto-molecules 5.2.1 → 5.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Columns-BFBWAHqh.js → Columns-CLfAUkgh.js} +4 -4
- package/dist/Columns-CLfAUkgh.js.map +1 -0
- package/dist/{ConfigureView-CohhUNxy.js → ConfigureView-DfBAWbOJ.js} +4 -2
- package/dist/ConfigureView-DfBAWbOJ.js.map +1 -0
- package/dist/cjs/{Columns-CHOsnC9n.js → Columns-CKgVNYub.js} +4 -4
- package/dist/cjs/Columns-CKgVNYub.js.map +1 -0
- package/dist/cjs/{ConfigureView-CCjMYBjp.js → ConfigureView-BeNSaMvm.js} +4 -2
- package/dist/cjs/ConfigureView-BeNSaMvm.js.map +1 -0
- package/dist/cjs/{phone-number-DMH57syY.js → phone-number-YL_ULNtx.js} +2 -2
- package/dist/cjs/{phone-number-DMH57syY.js.map → phone-number-YL_ULNtx.js.map} +1 -1
- package/dist/cjs/v2/ButtonGroup.js +2 -2
- package/dist/cjs/v2/ButtonGroup.js.map +1 -1
- package/dist/cjs/v2/CalendarView.js +1 -1
- package/dist/cjs/v2/Codeblock.js +2 -2
- package/dist/cjs/v2/Codeblock.js.map +1 -1
- package/dist/cjs/v2/Columns.js +1 -1
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/v2/DndTable.js +120 -51
- package/dist/cjs/v2/DndTable.js.map +1 -1
- package/dist/cjs/v2/EmailPreview.js +1 -1
- package/dist/cjs/v2/EmailPreview.js.map +1 -1
- package/dist/cjs/v2/ErrorPage.js +2 -2
- package/dist/cjs/v2/ErrorPage.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/NeetoWidget.js +1 -1
- package/dist/cjs/v2/NeetoWidget.js.map +1 -1
- package/dist/cjs/v2/OptionFields.js +2 -2
- package/dist/cjs/v2/OptionFields.js.map +1 -1
- package/dist/cjs/v2/PhoneNumber.js +1 -1
- package/dist/cjs/v2/ProductEmbed.js +54 -28
- package/dist/cjs/v2/ProductEmbed.js.map +1 -1
- package/dist/cjs/v2/SessionEnvironment.js +1 -1
- package/dist/cjs/v2/ShareViaEmail.js +1 -1
- package/dist/cjs/v2/ShareViaEmail.js.map +1 -1
- package/dist/cjs/v2/ShareViaLink.js +30 -25
- package/dist/cjs/v2/ShareViaLink.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +1 -1
- package/dist/cjs/v2/SubHeader.js +1 -1
- package/dist/cjs/v2/Taxonomy.js +1 -1
- package/dist/{phone-number-D9soCpCv.js → phone-number-ChAzsdbN.js} +2 -2
- package/dist/{phone-number-D9soCpCv.js.map → phone-number-ChAzsdbN.js.map} +1 -1
- package/dist/v2/ButtonGroup.js +2 -2
- package/dist/v2/ButtonGroup.js.map +1 -1
- package/dist/v2/CalendarView.js +1 -1
- package/dist/v2/Codeblock.js +2 -2
- package/dist/v2/Codeblock.js.map +1 -1
- package/dist/v2/Columns.js +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -1
- package/dist/v2/DndTable.js +121 -52
- package/dist/v2/DndTable.js.map +1 -1
- package/dist/v2/EmailPreview.js +1 -1
- package/dist/v2/EmailPreview.js.map +1 -1
- package/dist/v2/ErrorPage.js +2 -2
- package/dist/v2/ErrorPage.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +1 -1
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/NeetoWidget.js +1 -1
- package/dist/v2/NeetoWidget.js.map +1 -1
- package/dist/v2/OptionFields.js +2 -2
- package/dist/v2/OptionFields.js.map +1 -1
- package/dist/v2/PhoneNumber.js +2 -2
- package/dist/v2/ProductEmbed.js +55 -29
- package/dist/v2/ProductEmbed.js.map +1 -1
- package/dist/v2/SessionEnvironment.js +1 -1
- package/dist/v2/ShareViaEmail.js +1 -1
- package/dist/v2/ShareViaEmail.js.map +1 -1
- package/dist/v2/ShareViaLink.js +30 -25
- package/dist/v2/ShareViaLink.js.map +1 -1
- package/dist/v2/Sidebar.js +1 -1
- package/dist/v2/SubHeader.js +1 -1
- package/dist/v2/Taxonomy.js +1 -1
- package/package.json +1 -1
- package/src/translations/en.json +4 -0
- package/dist/Columns-BFBWAHqh.js.map +0 -1
- package/dist/ConfigureView-CohhUNxy.js.map +0 -1
- package/dist/cjs/Columns-CHOsnC9n.js.map +0 -1
- package/dist/cjs/ConfigureView-CCjMYBjp.js.map +0 -1
|
@@ -25,9 +25,9 @@ var ButtonGroup = function ButtonGroup(_ref) {
|
|
|
25
25
|
return /*#__PURE__*/React.createElement(neetoAtoms.Button, _objectSpread({
|
|
26
26
|
size: size,
|
|
27
27
|
key: key,
|
|
28
|
-
variant: "
|
|
28
|
+
variant: "outline",
|
|
29
29
|
className: classnames({
|
|
30
|
-
"
|
|
30
|
+
"bg-muted text-foreground hover:bg-muted hover:text-foreground": isActive
|
|
31
31
|
}, className)
|
|
32
32
|
}, buttonProps));
|
|
33
33
|
})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ButtonGroup.js","sources":["../../../src/v2/components/ButtonGroup/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { ButtonGroup as ButtonGroupWrapper } from \"@bigbinary/neeto-atoms/primitives\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst ButtonGroup = ({ buttons = [], size = \"default\" }) => (\n <ButtonGroupWrapper>\n {buttons.map(({ key, isActive, className, ...buttonProps }) => (\n <Button\n {...{ size }}\n key={key}\n variant=\"
|
|
1
|
+
{"version":3,"file":"ButtonGroup.js","sources":["../../../src/v2/components/ButtonGroup/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { ButtonGroup as ButtonGroupWrapper } from \"@bigbinary/neeto-atoms/primitives\";\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst ButtonGroup = ({ buttons = [], size = \"default\" }) => (\n <ButtonGroupWrapper>\n {buttons.map(({ key, isActive, className, ...buttonProps }) => (\n <Button\n {...{ size }}\n key={key}\n variant=\"outline\"\n className={classnames(\n {\n \"bg-muted text-foreground hover:bg-muted hover:text-foreground\":\n isActive,\n },\n className\n )}\n {...buttonProps}\n />\n ))}\n </ButtonGroupWrapper>\n);\n\nButtonGroup.propTypes = {\n buttons: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string.isRequired,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n isActive: PropTypes.bool,\n onClick: PropTypes.func,\n tooltipProps: PropTypes.shape({\n content: PropTypes.node,\n position: PropTypes.string,\n disabled: PropTypes.bool,\n }),\n })\n ),\n size: PropTypes.oneOf([\"xs\", \"sm\", \"default\", \"lg\"]),\n};\n\nexport default ButtonGroup;\n"],"names":["ButtonGroup","_ref","_ref$buttons","buttons","_ref$size","size","_jsx","ButtonGroupWrapper","children","map","_ref2","key","isActive","className","buttonProps","_objectWithoutProperties","_excluded","_createElement","Button","_objectSpread","variant","classnames"],"mappings":";;;;;;;;;;;;;AAKA,IAAMA,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAAC,YAAA,GAAAD,IAAA,CAAME,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IAAAE,SAAA,GAAAH,IAAA,CAAEI,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,MAAA,GAAG,SAAS,GAAAA,SAAA;EAAA,oBACnDE,cAAA,CAACC,sBAAkB,EAAA;AAAAC,IAAAA,QAAA,EAChBL,OAAO,CAACM,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,MAAA,IAAGC,GAAG,GAAAD,KAAA,CAAHC,GAAG;QAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;QAAEC,SAAS,GAAAH,KAAA,CAATG,SAAS;AAAKC,QAAAA,WAAW,GAAAC,wBAAA,CAAAL,KAAA,EAAAM,SAAA,CAAA;AAAA,MAAA,oBACtDC,mBAAA,CAACC,iBAAM,EAAAC,aAAA,CAAA;AACCd,QAAAA,IAAI,EAAJA,IAAI;AACVM,QAAAA,GAAG,EAAEA,GAAI;AACTS,QAAAA,OAAO,EAAC,SAAS;QACjBP,SAAS,EAAEQ,UAAU,CACnB;AACE,UAAA,+DAA+D,EAC7DT;AACJ,SAAC,EACDC,SACF;OAAE,EACEC,WAAW,CAChB,CAAC;IAAA,CACH;AAAC,GACgB,CAAC;AAAA;;;;"}
|
|
@@ -23,7 +23,7 @@ var chevronRight = require('../chevron-right-DpleLIQp.js');
|
|
|
23
23
|
var v2_SubHeader = require('./SubHeader.js');
|
|
24
24
|
require('../createLucideIcon-DBDhE7kE.js');
|
|
25
25
|
require('@bigbinary/neeto-atoms/primitives');
|
|
26
|
-
require('../Columns-
|
|
26
|
+
require('../Columns-CKgVNYub.js');
|
|
27
27
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
28
28
|
require('@dnd-kit/core');
|
|
29
29
|
require('@dnd-kit/modifiers');
|
package/dist/cjs/v2/Codeblock.js
CHANGED
|
@@ -39,7 +39,7 @@ var Codeblock = function Codeblock(_ref) {
|
|
|
39
39
|
className: "relative",
|
|
40
40
|
children: [/*#__PURE__*/jsxRuntime.jsx(CodeBlock, _objectSpread(_objectSpread({
|
|
41
41
|
wrapLines: true,
|
|
42
|
-
className: "neeto-molecules-code-block p-4
|
|
42
|
+
className: "neeto-molecules-code-block p-4 pe-12 md:pe-4",
|
|
43
43
|
codeTagProps: {
|
|
44
44
|
"data-testid": "code-block-content"
|
|
45
45
|
},
|
|
@@ -49,7 +49,7 @@ var Codeblock = function Codeblock(_ref) {
|
|
|
49
49
|
}, codeblockProps), {}, {
|
|
50
50
|
children: code
|
|
51
51
|
})), showCopyButton && /*#__PURE__*/jsxRuntime.jsx(v2_CopyToClipboardButton, _objectSpread(_objectSpread({
|
|
52
|
-
className: "absolute
|
|
52
|
+
className: "absolute end-2 top-2",
|
|
53
53
|
size: "sm",
|
|
54
54
|
value: code,
|
|
55
55
|
variant: "secondary"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Codeblock.js","sources":["../../../src/v2/components/Codeblock.jsx"],"sourcesContent":["import useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport javascript from \"react-syntax-highlighter/dist/esm/languages/prism/javascript\";\nimport CodeBlock from \"react-syntax-highlighter/dist/esm/prism-light.js\";\nimport { dracula } from \"react-syntax-highlighter/dist/esm/styles/prism\";\n\nimport CopyToClipboardButton from \"./CopyToClipboardButton\";\n\n// `prism-light` ships no languages by default; register the one we render so\n// the code is actually syntax-highlighted (otherwise it renders as plain text).\nCodeBlock.registerLanguage(\"javascript\", javascript);\n\nconst Codeblock = ({\n code,\n showCopyButton = true,\n codeblockProps,\n copyButtonProps = {},\n}) => {\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const { label: copyLabel = \"Copy\", ...restCopyButtonProps } = copyButtonProps;\n\n return (\n <div className=\"relative\">\n <CodeBlock\n wrapLines\n className=\"neeto-molecules-code-block p-4
|
|
1
|
+
{"version":3,"file":"Codeblock.js","sources":["../../../src/v2/components/Codeblock.jsx"],"sourcesContent":["import useBreakpoints from \"neetocommons/v2/react-utils/useBreakpoints\";\nimport PropTypes from \"prop-types\";\nimport javascript from \"react-syntax-highlighter/dist/esm/languages/prism/javascript\";\nimport CodeBlock from \"react-syntax-highlighter/dist/esm/prism-light.js\";\nimport { dracula } from \"react-syntax-highlighter/dist/esm/styles/prism\";\n\nimport CopyToClipboardButton from \"./CopyToClipboardButton\";\n\n// `prism-light` ships no languages by default; register the one we render so\n// the code is actually syntax-highlighted (otherwise it renders as plain text).\nCodeBlock.registerLanguage(\"javascript\", javascript);\n\nconst Codeblock = ({\n code,\n showCopyButton = true,\n codeblockProps,\n copyButtonProps = {},\n}) => {\n const { isSize } = useBreakpoints();\n const isLargerScreen = !isSize(\"mobile\");\n\n const { label: copyLabel = \"Copy\", ...restCopyButtonProps } = copyButtonProps;\n\n return (\n <div className=\"relative\">\n <CodeBlock\n wrapLines\n className=\"neeto-molecules-code-block p-4 pe-12 md:pe-4\"\n codeTagProps={{ \"data-testid\": \"code-block-content\" }}\n data-testid=\"code-block\"\n language=\"javascript\"\n style={dracula}\n {...codeblockProps}\n >\n {code}\n </CodeBlock>\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"absolute end-2 top-2\"\n size=\"sm\"\n value={code}\n variant=\"secondary\"\n {...restCopyButtonProps}\n label={isLargerScreen ? copyLabel : \"\"}\n />\n )}\n </div>\n );\n};\n\nCodeblock.propTypes = {\n /**\n * The code to be displayed.\n */\n code: PropTypes.string,\n /**\n * Flag to determine whether the 'Copy' button is displayed.\n */\n showCopyButton: PropTypes.bool,\n /**\n * Additional props that can be passed on to the 'PrismLight' component from 'react-syntax-highlighter'.\n */\n codeblockProps: PropTypes.object,\n /**\n * Additional props that can be passed on to the 'CopyToClipboardButton' component from 'neeto-molecules'.\n */\n copyButtonProps: PropTypes.object,\n};\n\nexport default Codeblock;\n"],"names":["CodeBlock","registerLanguage","javascript","Codeblock","_ref","code","_ref$showCopyButton","showCopyButton","codeblockProps","_ref$copyButtonProps","copyButtonProps","_useBreakpoints","useBreakpoints","isSize","isLargerScreen","_copyButtonProps$labe","label","copyLabel","restCopyButtonProps","_objectWithoutProperties","_excluded","_jsxs","className","children","_jsx","_objectSpread","wrapLines","codeTagProps","language","style","dracula","CopyToClipboardButton","size","value","variant"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUAA,SAAS,CAACC,gBAAgB,CAAC,YAAY,EAAEC,UAAU,CAAC;AAEpD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAAC,IAAA,EAKT;AAAA,EAAA,IAJJC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAAC,mBAAA,GAAAF,IAAA,CACJG,cAAc;AAAdA,IAAAA,cAAc,GAAAD,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IACrBE,cAAc,GAAAJ,IAAA,CAAdI,cAAc;IAAAC,oBAAA,GAAAL,IAAA,CACdM,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,oBAAA;AAEpB,EAAA,IAAAE,eAAA,GAAmBC,cAAc,EAAE;IAA3BC,MAAM,GAAAF,eAAA,CAANE,MAAM;AACd,EAAA,IAAMC,cAAc,GAAG,CAACD,MAAM,CAAC,QAAQ,CAAC;AAExC,EAAA,IAAAE,qBAAA,GAA8DL,eAAe,CAArEM,KAAK;AAAEC,IAAAA,SAAS,GAAAF,qBAAA,KAAA,MAAA,GAAG,MAAM,GAAAA,qBAAA;AAAKG,IAAAA,mBAAmB,GAAAC,wBAAA,CAAKT,eAAe,EAAAU,SAAA,CAAA;AAE7E,EAAA,oBACEC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,UAAU;AAAAC,IAAAA,QAAA,gBACvBC,cAAA,CAACxB,SAAS,EAAAyB,aAAA,CAAAA,aAAA,CAAA;MACRC,SAAS,EAAA,IAAA;AACTJ,MAAAA,SAAS,EAAC,8CAA8C;AACxDK,MAAAA,YAAY,EAAE;AAAE,QAAA,aAAa,EAAE;OAAuB;AACtD,MAAA,aAAA,EAAY,YAAY;AACxBC,MAAAA,QAAQ,EAAC,YAAY;AACrBC,MAAAA,KAAK,EAAEC;AAAQ,KAAA,EACXtB,cAAc,CAAA,EAAA,EAAA,EAAA;AAAAe,MAAAA,QAAA,EAEjBlB;KAAI,CACI,CAAC,EACXE,cAAc,iBACbiB,cAAA,CAACO,wBAAqB,EAAAN,aAAA,CAAAA,aAAA,CAAA;AACpBH,MAAAA,SAAS,EAAC,sBAAsB;AAChCU,MAAAA,IAAI,EAAC,IAAI;AACTC,MAAAA,KAAK,EAAE5B,IAAK;AACZ6B,MAAAA,OAAO,EAAC;AAAW,KAAA,EACfhB,mBAAmB,CAAA,EAAA,EAAA,EAAA;AACvBF,MAAAA,KAAK,EAAEF,cAAc,GAAGG,SAAS,GAAG;AAAG,KAAA,CACxC,CACF;AAAA,GACE,CAAC;AAEV;;;;"}
|
package/dist/cjs/v2/Columns.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Columns = require('../Columns-
|
|
5
|
+
var Columns = require('../Columns-CKgVNYub.js');
|
|
6
6
|
require('@babel/runtime/helpers/defineProperty');
|
|
7
7
|
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
8
8
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
@@ -5,7 +5,7 @@ var React = require('react');
|
|
|
5
5
|
var primitives = require('@bigbinary/neeto-atoms/primitives');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
7
|
var reactRouterDom = require('react-router-dom');
|
|
8
|
-
var ConfigureView = require('../ConfigureView-
|
|
8
|
+
var ConfigureView = require('../ConfigureView-BeNSaMvm.js');
|
|
9
9
|
var jsxRuntime = require('react/jsx-runtime');
|
|
10
10
|
require('@babel/runtime/helpers/defineProperty');
|
|
11
11
|
require('@babel/runtime/helpers/objectWithoutProperties');
|
package/dist/cjs/v2/DndTable.js
CHANGED
|
@@ -2,10 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var
|
|
5
|
+
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
6
6
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
7
7
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
8
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
8
9
|
var React = require('react');
|
|
10
|
+
var neetoAtoms = require('@bigbinary/neeto-atoms');
|
|
9
11
|
var primitives = require('@bigbinary/neeto-atoms/primitives');
|
|
10
12
|
var core = require('@dnd-kit/core');
|
|
11
13
|
var modifiers = require('@dnd-kit/modifiers');
|
|
@@ -15,7 +17,6 @@ var ReactDOM = require('react-dom');
|
|
|
15
17
|
var classnames = require('classnames');
|
|
16
18
|
var jsxRuntime = require('react/jsx-runtime');
|
|
17
19
|
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
18
|
-
var neetoAtoms = require('@bigbinary/neeto-atoms');
|
|
19
20
|
var useStateWithDependency = require('@bigbinary/neeto-commons-frontend/v2/react-utils/useStateWithDependency');
|
|
20
21
|
|
|
21
22
|
var _excluded$1 = ["children", "data", "index", "className", "isDroppable"];
|
|
@@ -62,7 +63,7 @@ var Row = function Row(_ref) {
|
|
|
62
63
|
}));
|
|
63
64
|
};
|
|
64
65
|
|
|
65
|
-
var _excluded = ["rowData", "columnData", "overlayColumnIndex", "isRowDroppable", "onDrop", "
|
|
66
|
+
var _excluded = ["rowData", "columnData", "overlayColumnIndex", "isRowDroppable", "onDrop", "rowSelection", "selectedRowKeys", "onRowSelect", "currentPageNumber", "paginationProps", "childrenColumnName"];
|
|
66
67
|
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; }
|
|
67
68
|
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; }
|
|
68
69
|
var sensorConfig = {
|
|
@@ -70,26 +71,58 @@ var sensorConfig = {
|
|
|
70
71
|
distance: 8
|
|
71
72
|
}
|
|
72
73
|
};
|
|
73
|
-
var
|
|
74
|
+
var getRowKey = function getRowKey(row, index) {
|
|
75
|
+
var _ref, _row$id;
|
|
76
|
+
return String((_ref = (_row$id = row.id) !== null && _row$id !== void 0 ? _row$id : row.key) !== null && _ref !== void 0 ? _ref : index);
|
|
77
|
+
};
|
|
78
|
+
var buildColumns = function buildColumns(columnData) {
|
|
79
|
+
return columnData.map(function (_ref2) {
|
|
80
|
+
var key = _ref2.key,
|
|
81
|
+
dataIndex = _ref2.dataIndex,
|
|
82
|
+
title = _ref2.title,
|
|
83
|
+
width = _ref2.width;
|
|
84
|
+
return _objectSpread({
|
|
85
|
+
id: key || dataIndex,
|
|
86
|
+
accessorKey: dataIndex,
|
|
87
|
+
header: title
|
|
88
|
+
}, width ? {
|
|
89
|
+
size: width
|
|
90
|
+
} : {});
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
var DndTable = function DndTable(_ref3) {
|
|
74
94
|
var _dragState$active$dat;
|
|
75
|
-
var rowData =
|
|
76
|
-
columnData =
|
|
77
|
-
|
|
78
|
-
overlayColumnIndex =
|
|
79
|
-
|
|
80
|
-
isRowDroppable =
|
|
81
|
-
|
|
82
|
-
onDrop =
|
|
83
|
-
|
|
84
|
-
|
|
95
|
+
var rowData = _ref3.rowData,
|
|
96
|
+
columnData = _ref3.columnData,
|
|
97
|
+
_ref3$overlayColumnIn = _ref3.overlayColumnIndex,
|
|
98
|
+
overlayColumnIndex = _ref3$overlayColumnIn === void 0 ? 0 : _ref3$overlayColumnIn,
|
|
99
|
+
_ref3$isRowDroppable = _ref3.isRowDroppable,
|
|
100
|
+
isRowDroppable = _ref3$isRowDroppable === void 0 ? ramda.T : _ref3$isRowDroppable,
|
|
101
|
+
_ref3$onDrop = _ref3.onDrop,
|
|
102
|
+
onDrop = _ref3$onDrop === void 0 ? neetoCist.noop : _ref3$onDrop,
|
|
103
|
+
_ref3$rowSelection = _ref3.rowSelection,
|
|
104
|
+
rowSelection = _ref3$rowSelection === void 0 ? false : _ref3$rowSelection,
|
|
105
|
+
_ref3$selectedRowKeys = _ref3.selectedRowKeys,
|
|
106
|
+
selectedRowKeys = _ref3$selectedRowKeys === void 0 ? [] : _ref3$selectedRowKeys,
|
|
107
|
+
_ref3$onRowSelect = _ref3.onRowSelect,
|
|
108
|
+
onRowSelect = _ref3$onRowSelect === void 0 ? neetoCist.noop : _ref3$onRowSelect,
|
|
109
|
+
currentPageNumber = _ref3.currentPageNumber,
|
|
110
|
+
paginationProps = _ref3.paginationProps;
|
|
111
|
+
_ref3.childrenColumnName;
|
|
112
|
+
var rest = _objectWithoutProperties(_ref3, _excluded);
|
|
85
113
|
var _useState = React.useState(null),
|
|
86
114
|
_useState2 = _slicedToArray(_useState, 2),
|
|
87
115
|
dragState = _useState2[0],
|
|
88
116
|
setDragState = _useState2[1];
|
|
89
117
|
var sensors = core.useSensors(core.useSensor(core.PointerSensor, sensorConfig));
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
118
|
+
|
|
119
|
+
// getRowId stringifies row ids, but consumers may pass numeric selection
|
|
120
|
+
// keys; normalise so selection state matches in both DataTable and the body.
|
|
121
|
+
var selectedKeys = selectedRowKeys.map(String);
|
|
122
|
+
var selectedKeySet = new Set(selectedKeys);
|
|
123
|
+
var onDragEnd = function onDragEnd(_ref4) {
|
|
124
|
+
var active = _ref4.active,
|
|
125
|
+
over = _ref4.over;
|
|
93
126
|
setDragState(null);
|
|
94
127
|
if (!active || !over) return;
|
|
95
128
|
onDrop(active.data.current, over.data.current);
|
|
@@ -105,44 +138,80 @@ var DndTable = function DndTable(_ref) {
|
|
|
105
138
|
})
|
|
106
139
|
});
|
|
107
140
|
};
|
|
141
|
+
var toggleRowSelection = function toggleRowSelection(rowItem) {
|
|
142
|
+
var rowKey = getRowKey(rowItem);
|
|
143
|
+
var nextKeys = selectedKeySet.has(rowKey) ? selectedKeys.filter(function (key) {
|
|
144
|
+
return key !== rowKey;
|
|
145
|
+
}) : [].concat(_toConsumableArray(selectedKeys), [rowKey]);
|
|
146
|
+
var nextKeySet = new Set(nextKeys);
|
|
147
|
+
|
|
148
|
+
// Pass the rows for the freshly computed selection (nextKeys), matching
|
|
149
|
+
// the keys argument; Set keeps the lookup O(n) over rowData.
|
|
150
|
+
onRowSelect(nextKeys, rowData.filter(function (row) {
|
|
151
|
+
return nextKeySet.has(getRowKey(row));
|
|
152
|
+
}));
|
|
153
|
+
};
|
|
154
|
+
var renderBody = function renderBody() {
|
|
155
|
+
return /*#__PURE__*/jsxRuntime.jsx(primitives.TableBody, {
|
|
156
|
+
children: rowData.map(function (rowItem, index) {
|
|
157
|
+
var rowKey = getRowKey(rowItem, index);
|
|
158
|
+
return /*#__PURE__*/React.createElement(Row, {
|
|
159
|
+
index: index,
|
|
160
|
+
data: rowItem,
|
|
161
|
+
"data-row-key": rowKey,
|
|
162
|
+
isDroppable: isRowDroppable(rowItem),
|
|
163
|
+
key: rowKey
|
|
164
|
+
}, rowSelection &&
|
|
165
|
+
/*#__PURE__*/
|
|
166
|
+
// Match DataTable's selection header cell padding (it forces
|
|
167
|
+
// !pe-2 while TableCell zeroes pe for checkbox cells) so the
|
|
168
|
+
// body checkbox lines up with the header select-all checkbox.
|
|
169
|
+
jsxRuntime.jsx(primitives.TableCell, {
|
|
170
|
+
className: "!pe-2",
|
|
171
|
+
onClick: function onClick(e) {
|
|
172
|
+
return e.stopPropagation();
|
|
173
|
+
},
|
|
174
|
+
children: /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
175
|
+
className: "flex w-full items-center justify-center",
|
|
176
|
+
children: /*#__PURE__*/jsxRuntime.jsx(primitives.Checkbox, {
|
|
177
|
+
checked: selectedKeySet.has(rowKey),
|
|
178
|
+
onCheckedChange: function onCheckedChange() {
|
|
179
|
+
return toggleRowSelection(rowItem);
|
|
180
|
+
}
|
|
181
|
+
})
|
|
182
|
+
})
|
|
183
|
+
}), columnData.map(function (col) {
|
|
184
|
+
return /*#__PURE__*/jsxRuntime.jsx(primitives.TableCell, {
|
|
185
|
+
children: col.render ? col.render(rowItem[col.dataIndex], rowItem) : rowItem[col.dataIndex]
|
|
186
|
+
}, col.key || col.dataIndex);
|
|
187
|
+
}));
|
|
188
|
+
})
|
|
189
|
+
});
|
|
190
|
+
};
|
|
191
|
+
var dataTableProps = _objectSpread(_objectSpread({}, rest), {}, {
|
|
192
|
+
columns: buildColumns(columnData),
|
|
193
|
+
data: rowData,
|
|
194
|
+
getRowId: getRowKey,
|
|
195
|
+
renderBody: renderBody,
|
|
196
|
+
enableColumnResize: true,
|
|
197
|
+
enableURLPagination: true,
|
|
198
|
+
enableHeaderMenu: false,
|
|
199
|
+
// Sorting intentionally left off: DataTable's URL sort params
|
|
200
|
+
// (sort_by/order_by) don't match the app's (sortBy/orderBy), so enabling
|
|
201
|
+
// it would render sort headers that silently do nothing. Tracked as a
|
|
202
|
+
// follow-up once the sort URL convention is wired through.
|
|
203
|
+
enableSorting: false,
|
|
204
|
+
enableRowSelection: rowSelection,
|
|
205
|
+
selectedRowKeys: selectedKeys,
|
|
206
|
+
onRowSelect: onRowSelect,
|
|
207
|
+
currentPage: currentPageNumber,
|
|
208
|
+
pageSize: paginationProps === null || paginationProps === void 0 ? void 0 : paginationProps.pageSize
|
|
209
|
+
});
|
|
108
210
|
return /*#__PURE__*/jsxRuntime.jsxs(core.DndContext, {
|
|
109
211
|
onDragEnd: onDragEnd,
|
|
110
212
|
sensors: sensors,
|
|
111
213
|
onDragStart: setDragState,
|
|
112
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(
|
|
113
|
-
className: "border-border overflow-hidden rounded-lg border",
|
|
114
|
-
children: /*#__PURE__*/jsxRuntime.jsxs(primitives.Table, _objectSpread(_objectSpread({}, _objectSpread({
|
|
115
|
-
className: className
|
|
116
|
-
}, rest)), {}, {
|
|
117
|
-
children: [/*#__PURE__*/jsxRuntime.jsx(primitives.TableHeader, {
|
|
118
|
-
className: "bg-muted sticky top-0 z-20",
|
|
119
|
-
children: /*#__PURE__*/jsxRuntime.jsx(primitives.TableRow, {
|
|
120
|
-
className: "hover:bg-muted",
|
|
121
|
-
children: columnData.map(function (col) {
|
|
122
|
-
return /*#__PURE__*/jsxRuntime.jsx(primitives.TableHead, {
|
|
123
|
-
children: col.title
|
|
124
|
-
}, col.key || col.dataIndex);
|
|
125
|
-
})
|
|
126
|
-
})
|
|
127
|
-
}), /*#__PURE__*/jsxRuntime.jsx(primitives.TableBody, {
|
|
128
|
-
children: rowData.map(function (rowItem, index) {
|
|
129
|
-
var _ref3, _rowItem$id;
|
|
130
|
-
var rowKey = String((_ref3 = (_rowItem$id = rowItem.id) !== null && _rowItem$id !== void 0 ? _rowItem$id : rowItem.key) !== null && _ref3 !== void 0 ? _ref3 : index);
|
|
131
|
-
return /*#__PURE__*/React.createElement(Row, {
|
|
132
|
-
index: index,
|
|
133
|
-
data: rowItem,
|
|
134
|
-
"data-row-key": rowKey,
|
|
135
|
-
isDroppable: isRowDroppable(rowItem),
|
|
136
|
-
key: rowKey
|
|
137
|
-
}, columnData.map(function (col) {
|
|
138
|
-
return /*#__PURE__*/jsxRuntime.jsx(primitives.TableCell, {
|
|
139
|
-
children: col.render ? col.render(rowItem[col.dataIndex], rowItem) : rowItem[col.dataIndex]
|
|
140
|
-
}, col.key || col.dataIndex);
|
|
141
|
-
}));
|
|
142
|
-
})
|
|
143
|
-
})]
|
|
144
|
-
}))
|
|
145
|
-
}), /*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/jsxRuntime.jsx(core.DragOverlay, {
|
|
214
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DataTable, _objectSpread({}, dataTableProps)), /*#__PURE__*/ReactDOM.createPortal(/*#__PURE__*/jsxRuntime.jsx(core.DragOverlay, {
|
|
146
215
|
modifiers: [modifiers.restrictToVerticalAxis],
|
|
147
216
|
children: (dragState === null || dragState === void 0 ? void 0 : dragState.active) && renderOverlay((_dragState$active$dat = dragState.active.data) === null || _dragState$active$dat === void 0 ? void 0 : _dragState$active$dat.current)
|
|
148
217
|
}), document.body)]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DndTable.js","sources":["../../../src/v2/components/DndTable/Row.jsx","../../../src/v2/components/DndTable/Table.jsx","../../../src/v2/components/DndTable/useDndTable.js"],"sourcesContent":["import { useDraggable, useDroppable } from \"@dnd-kit/core\";\nimport classNames from \"classnames\";\n\nconst Row = ({ children, data, index, className, isDroppable, ...rest }) => {\n const {\n isDragging,\n attributes,\n listeners,\n setNodeRef: setDraggableNodeRef,\n } = useDraggable({\n data: { ...data, index },\n id: `draggable-${rest[\"data-row-key\"]}`,\n });\n\n const { isOver, setNodeRef: setDroppableNodeRef } = useDroppable({\n data: { ...data, index: index + 1 },\n id: `droppable-${rest[\"data-row-key\"]}`,\n disabled: !isDroppable || isDragging,\n });\n\n const isIndicatorVisible = !isDragging && isOver;\n\n return (\n <tr\n {...rest}\n {...attributes}\n {...listeners}\n className={classNames(className, {\n \"border-border hover:bg-muted/50 data-[state=selected]:bg-row-selected w-full min-w-0 cursor-move border-b transition-colors\": true,\n \"bg-muted opacity-50\": isDragging,\n \"bg-primary/10 shadow-sm\": isIndicatorVisible,\n })}\n ref={node => {\n setDraggableNodeRef(node);\n setDroppableNodeRef(node);\n }}\n >\n {children}\n </tr>\n );\n};\n\nexport default Row;\n","import { useState } from \"react\";\n\nimport {\n Table,\n TableBody,\n TableCell,\n TableHead,\n TableHeader,\n TableRow,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport {\n DndContext,\n DragOverlay,\n PointerSensor,\n useSensor,\n useSensors,\n} from \"@dnd-kit/core\";\nimport { restrictToVerticalAxis } from \"@dnd-kit/modifiers\";\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { T } from \"ramda\";\nimport { createPortal } from \"react-dom\";\n\nimport Row from \"./Row\";\n\nconst sensorConfig = { activationConstraint: { distance: 8 } };\n\nconst DndTable = ({\n rowData,\n columnData,\n overlayColumnIndex = 0,\n isRowDroppable = T,\n onDrop = noop,\n className,\n ...rest\n}) => {\n const [dragState, setDragState] = useState(null);\n const sensors = useSensors(useSensor(PointerSensor, sensorConfig));\n\n const onDragEnd = ({ active, over }) => {\n setDragState(null);\n if (!active || !over) return;\n onDrop(active.data.current, over.data.current);\n };\n\n const renderOverlay = data => {\n const colData = columnData[overlayColumnIndex];\n const cellValue = data[colData.dataIndex];\n\n return (\n <div className=\"flex px-20\">\n <div className=\"bg-background rounded-lg px-4\">\n {colData.render ? colData.render(cellValue, data) : cellValue}\n </div>\n </div>\n );\n };\n\n return (\n <DndContext {...{ onDragEnd, sensors }} onDragStart={setDragState}>\n <div className=\"border-border overflow-hidden rounded-lg border\">\n <Table {...{ className, ...rest }}>\n <TableHeader className=\"bg-muted sticky top-0 z-20\">\n <TableRow className=\"hover:bg-muted\">\n {columnData.map(col => (\n <TableHead key={col.key || col.dataIndex}>\n {col.title}\n </TableHead>\n ))}\n </TableRow>\n </TableHeader>\n <TableBody>\n {rowData.map((rowItem, index) => {\n const rowKey = String(rowItem.id ?? rowItem.key ?? index);\n\n return (\n <Row\n {...{ index }}\n data={rowItem}\n data-row-key={rowKey}\n isDroppable={isRowDroppable(rowItem)}\n key={rowKey}\n >\n {columnData.map(col => (\n <TableCell key={col.key || col.dataIndex}>\n {col.render\n ? col.render(rowItem[col.dataIndex], rowItem)\n : rowItem[col.dataIndex]}\n </TableCell>\n ))}\n </Row>\n );\n })}\n </TableBody>\n </Table>\n </div>\n {createPortal(\n <DragOverlay modifiers={[restrictToVerticalAxis]}>\n {dragState?.active && renderOverlay(dragState.active.data?.current)}\n </DragOverlay>,\n document.body\n )}\n </DndContext>\n );\n};\n\nDndTable.propTypes = {\n rowData: PropTypes.arrayOf(PropTypes.object).isRequired,\n columnData: PropTypes.arrayOf(PropTypes.object).isRequired,\n overlayColumnIndex: PropTypes.number,\n isRowDroppable: PropTypes.func,\n onDrop: PropTypes.func.isRequired,\n};\n\nexport default DndTable;\n","import { Toastr } from \"@bigbinary/neeto-atoms\";\nimport useStateWithDependency from \"neetocommons/v2/react-utils/useStateWithDependency\";\nimport { path, remove } from \"ramda\";\n\nconst useDndTable = ({ rowData, onUpdate }) => {\n const [rowDataState, setRowDataState] = useStateWithDependency(rowData, [\n rowData,\n ]);\n\n const onDrop = async (active, over) => {\n const stateBefore = rowDataState;\n setRowDataState(remove(active.index, 1));\n\n try {\n await onUpdate(active, over);\n } catch (error) {\n setRowDataState(stateBefore);\n const errors = path([\"response\", \"data\", \"errors\"], error);\n const message = errors && Object.values(errors)[0]?.[0];\n if (message) Toastr.error(message);\n }\n };\n\n return { rowData: rowDataState, onDrop };\n};\n\nexport default useDndTable;\n"],"names":["Row","_ref","children","data","index","className","isDroppable","rest","_objectWithoutProperties","_excluded","_useDraggable","useDraggable","_objectSpread","id","concat","isDragging","attributes","listeners","setDraggableNodeRef","setNodeRef","_useDroppable","useDroppable","disabled","isOver","setDroppableNodeRef","isIndicatorVisible","_jsx","classNames","ref","node","sensorConfig","activationConstraint","distance","DndTable","_dragState$active$dat","rowData","columnData","_ref$overlayColumnInd","overlayColumnIndex","_ref$isRowDroppable","isRowDroppable","T","_ref$onDrop","onDrop","noop","_useState","useState","_useState2","_slicedToArray","dragState","setDragState","sensors","useSensors","useSensor","PointerSensor","onDragEnd","_ref2","active","over","current","renderOverlay","colData","cellValue","dataIndex","render","_jsxs","DndContext","onDragStart","Table","TableHeader","TableRow","map","col","TableHead","title","key","TableBody","rowItem","_ref3","_rowItem$id","rowKey","String","_createElement","TableCell","createPortal","DragOverlay","modifiers","restrictToVerticalAxis","document","body","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","useDndTable","onUpdate","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","rowDataState","setRowDataState","_asyncToGenerator","_callee","stateBefore","_Object$values$","errors","message","_t","_context","remove","path","values","Toastr","error","_x","_x2","apply","arguments"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DndTable.js","sources":["../../../src/v2/components/DndTable/Row.jsx","../../../src/v2/components/DndTable/Table.jsx","../../../src/v2/components/DndTable/useDndTable.js"],"sourcesContent":["import { useDraggable, useDroppable } from \"@dnd-kit/core\";\nimport classNames from \"classnames\";\n\nconst Row = ({ children, data, index, className, isDroppable, ...rest }) => {\n const {\n isDragging,\n attributes,\n listeners,\n setNodeRef: setDraggableNodeRef,\n } = useDraggable({\n data: { ...data, index },\n id: `draggable-${rest[\"data-row-key\"]}`,\n });\n\n const { isOver, setNodeRef: setDroppableNodeRef } = useDroppable({\n data: { ...data, index: index + 1 },\n id: `droppable-${rest[\"data-row-key\"]}`,\n disabled: !isDroppable || isDragging,\n });\n\n const isIndicatorVisible = !isDragging && isOver;\n\n return (\n <tr\n {...rest}\n {...attributes}\n {...listeners}\n className={classNames(className, {\n \"border-border hover:bg-muted/50 data-[state=selected]:bg-row-selected w-full min-w-0 cursor-move border-b transition-colors\": true,\n \"bg-muted opacity-50\": isDragging,\n \"bg-primary/10 shadow-sm\": isIndicatorVisible,\n })}\n ref={node => {\n setDraggableNodeRef(node);\n setDroppableNodeRef(node);\n }}\n >\n {children}\n </tr>\n );\n};\n\nexport default Row;\n","import { useState } from \"react\";\n\nimport { DataTable } from \"@bigbinary/neeto-atoms\";\nimport {\n Checkbox,\n TableBody,\n TableCell,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport {\n DndContext,\n DragOverlay,\n PointerSensor,\n useSensor,\n useSensors,\n} from \"@dnd-kit/core\";\nimport { restrictToVerticalAxis } from \"@dnd-kit/modifiers\";\nimport { noop } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { T } from \"ramda\";\nimport { createPortal } from \"react-dom\";\n\nimport Row from \"./Row\";\n\nconst sensorConfig = { activationConstraint: { distance: 8 } };\n\nconst getRowKey = (row, index) => String(row.id ?? row.key ?? index);\n\nconst buildColumns = columnData =>\n columnData.map(({ key, dataIndex, title, width }) => ({\n id: key || dataIndex,\n accessorKey: dataIndex,\n header: title,\n ...(width ? { size: width } : {}),\n }));\n\nconst DndTable = ({\n rowData,\n columnData,\n overlayColumnIndex = 0,\n isRowDroppable = T,\n onDrop = noop,\n rowSelection = false,\n selectedRowKeys = [],\n onRowSelect = noop,\n currentPageNumber,\n paginationProps,\n // antd tree-data prop carried over from v1; DataTable has no tree rows, so\n // pull it out of ...rest instead of forwarding it.\n childrenColumnName: _childrenColumnName,\n ...rest\n}) => {\n const [dragState, setDragState] = useState(null);\n const sensors = useSensors(useSensor(PointerSensor, sensorConfig));\n\n // getRowId stringifies row ids, but consumers may pass numeric selection\n // keys; normalise so selection state matches in both DataTable and the body.\n const selectedKeys = selectedRowKeys.map(String);\n const selectedKeySet = new Set(selectedKeys);\n\n const onDragEnd = ({ active, over }) => {\n setDragState(null);\n if (!active || !over) return;\n onDrop(active.data.current, over.data.current);\n };\n\n const renderOverlay = data => {\n const colData = columnData[overlayColumnIndex];\n const cellValue = data[colData.dataIndex];\n\n return (\n <div className=\"flex px-20\">\n <div className=\"bg-background rounded-lg px-4\">\n {colData.render ? colData.render(cellValue, data) : cellValue}\n </div>\n </div>\n );\n };\n\n const toggleRowSelection = rowItem => {\n const rowKey = getRowKey(rowItem);\n const nextKeys = selectedKeySet.has(rowKey)\n ? selectedKeys.filter(key => key !== rowKey)\n : [...selectedKeys, rowKey];\n const nextKeySet = new Set(nextKeys);\n\n // Pass the rows for the freshly computed selection (nextKeys), matching\n // the keys argument; Set keeps the lookup O(n) over rowData.\n onRowSelect(\n nextKeys,\n rowData.filter(row => nextKeySet.has(getRowKey(row)))\n );\n };\n\n const renderBody = () => (\n <TableBody>\n {rowData.map((rowItem, index) => {\n const rowKey = getRowKey(rowItem, index);\n\n return (\n <Row\n {...{ index }}\n data={rowItem}\n data-row-key={rowKey}\n isDroppable={isRowDroppable(rowItem)}\n key={rowKey}\n >\n {rowSelection && (\n // Match DataTable's selection header cell padding (it forces\n // !pe-2 while TableCell zeroes pe for checkbox cells) so the\n // body checkbox lines up with the header select-all checkbox.\n <TableCell className=\"!pe-2\" onClick={e => e.stopPropagation()}>\n <div className=\"flex w-full items-center justify-center\">\n <Checkbox\n checked={selectedKeySet.has(rowKey)}\n onCheckedChange={() => toggleRowSelection(rowItem)}\n />\n </div>\n </TableCell>\n )}\n {columnData.map(col => (\n <TableCell key={col.key || col.dataIndex}>\n {col.render\n ? col.render(rowItem[col.dataIndex], rowItem)\n : rowItem[col.dataIndex]}\n </TableCell>\n ))}\n </Row>\n );\n })}\n </TableBody>\n );\n\n const dataTableProps = {\n ...rest,\n columns: buildColumns(columnData),\n data: rowData,\n getRowId: getRowKey,\n renderBody,\n enableColumnResize: true,\n enableURLPagination: true,\n enableHeaderMenu: false,\n // Sorting intentionally left off: DataTable's URL sort params\n // (sort_by/order_by) don't match the app's (sortBy/orderBy), so enabling\n // it would render sort headers that silently do nothing. Tracked as a\n // follow-up once the sort URL convention is wired through.\n enableSorting: false,\n enableRowSelection: rowSelection,\n selectedRowKeys: selectedKeys,\n onRowSelect,\n currentPage: currentPageNumber,\n pageSize: paginationProps?.pageSize,\n };\n\n return (\n <DndContext {...{ onDragEnd, sensors }} onDragStart={setDragState}>\n <DataTable {...dataTableProps} />\n {createPortal(\n <DragOverlay modifiers={[restrictToVerticalAxis]}>\n {dragState?.active && renderOverlay(dragState.active.data?.current)}\n </DragOverlay>,\n document.body\n )}\n </DndContext>\n );\n};\n\nDndTable.propTypes = {\n rowData: PropTypes.arrayOf(PropTypes.object).isRequired,\n columnData: PropTypes.arrayOf(PropTypes.object).isRequired,\n overlayColumnIndex: PropTypes.number,\n isRowDroppable: PropTypes.func,\n onDrop: PropTypes.func.isRequired,\n rowSelection: PropTypes.bool,\n selectedRowKeys: PropTypes.arrayOf(\n PropTypes.oneOfType([PropTypes.string, PropTypes.number])\n ),\n onRowSelect: PropTypes.func,\n currentPageNumber: PropTypes.number,\n paginationProps: PropTypes.shape({ pageSize: PropTypes.number }),\n};\n\nexport default DndTable;\n","import { Toastr } from \"@bigbinary/neeto-atoms\";\nimport useStateWithDependency from \"neetocommons/v2/react-utils/useStateWithDependency\";\nimport { path, remove } from \"ramda\";\n\nconst useDndTable = ({ rowData, onUpdate }) => {\n const [rowDataState, setRowDataState] = useStateWithDependency(rowData, [\n rowData,\n ]);\n\n const onDrop = async (active, over) => {\n const stateBefore = rowDataState;\n setRowDataState(remove(active.index, 1));\n\n try {\n await onUpdate(active, over);\n } catch (error) {\n setRowDataState(stateBefore);\n const errors = path([\"response\", \"data\", \"errors\"], error);\n const message = errors && Object.values(errors)[0]?.[0];\n if (message) Toastr.error(message);\n }\n };\n\n return { rowData: rowDataState, onDrop };\n};\n\nexport default useDndTable;\n"],"names":["Row","_ref","children","data","index","className","isDroppable","rest","_objectWithoutProperties","_excluded","_useDraggable","useDraggable","_objectSpread","id","concat","isDragging","attributes","listeners","setDraggableNodeRef","setNodeRef","_useDroppable","useDroppable","disabled","isOver","setDroppableNodeRef","isIndicatorVisible","_jsx","classNames","ref","node","sensorConfig","activationConstraint","distance","getRowKey","row","_row$id","String","key","buildColumns","columnData","map","_ref2","dataIndex","title","width","accessorKey","header","size","DndTable","_ref3","_dragState$active$dat","rowData","_ref3$overlayColumnIn","overlayColumnIndex","_ref3$isRowDroppable","isRowDroppable","T","_ref3$onDrop","onDrop","noop","_ref3$rowSelection","rowSelection","_ref3$selectedRowKeys","selectedRowKeys","_ref3$onRowSelect","onRowSelect","currentPageNumber","paginationProps","childrenColumnName","_useState","useState","_useState2","_slicedToArray","dragState","setDragState","sensors","useSensors","useSensor","PointerSensor","selectedKeys","selectedKeySet","Set","onDragEnd","_ref4","active","over","current","renderOverlay","colData","cellValue","render","toggleRowSelection","rowItem","rowKey","nextKeys","has","filter","_toConsumableArray","nextKeySet","renderBody","TableBody","_createElement","TableCell","onClick","e","stopPropagation","Checkbox","checked","onCheckedChange","col","dataTableProps","columns","getRowId","enableColumnResize","enableURLPagination","enableHeaderMenu","enableSorting","enableRowSelection","currentPage","pageSize","_jsxs","DndContext","onDragStart","DataTable","createPortal","DragOverlay","modifiers","restrictToVerticalAxis","document","body","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","useDndTable","onUpdate","_useStateWithDependen","useStateWithDependency","_useStateWithDependen2","rowDataState","setRowDataState","_asyncToGenerator","_callee","stateBefore","_Object$values$","errors","message","_t","_context","remove","path","values","Toastr","error","_x","_x2","apply","arguments"],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ var EmailPreview = reactUtils.withT(function (_ref) {
|
|
|
28
28
|
"data-testid": "email-preview-card",
|
|
29
29
|
className: classnames("bg-background neeto-ui-theme--light relative flex flex-1 flex-col rounded-lg px-6 py-8", className),
|
|
30
30
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
31
|
-
className: "absolute -
|
|
31
|
+
className: "absolute -end-1.5 -top-1.5 z-10 min-w-max rounded-ss-md rounded-se-md rounded-es-md px-3 py-1.5 text-center text-sm font-medium text-[#49545c] shadow-[0px_3px_4px_0px_#00000026] [background:#ffee6a] after:absolute after:end-0 after:top-full after:-z-20 after:[border-width:0_0_12px_6px] after:border-solid after:[border-color:transparent_#ddd06b] after:content-['']",
|
|
32
32
|
children: t("neetoMolecules.emailPreview.previewMessage")
|
|
33
33
|
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
34
34
|
className: "w-full pb-4",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EmailPreview.js","sources":["../../../src/v2/components/EmailPreview.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { EditorContent } from \"neetoeditor/v2\";\nimport PropTypes from \"prop-types\";\n\nimport AvatarPlaceholder from \"assets/images/avatar-placeholder\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst EmailPreview = withT(\n ({\n t,\n to = [],\n from,\n subject,\n body,\n actionButtonText,\n logo,\n className = \"\",\n customContent,\n }) => (\n <div\n data-testid=\"email-preview-card\"\n className={classnames(\n \"bg-background neeto-ui-theme--light relative flex flex-1 flex-col rounded-lg px-6 py-8\",\n className\n )}\n >\n <div className=\"absolute -
|
|
1
|
+
{"version":3,"file":"EmailPreview.js","sources":["../../../src/v2/components/EmailPreview.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { EditorContent } from \"neetoeditor/v2\";\nimport PropTypes from \"prop-types\";\n\nimport AvatarPlaceholder from \"assets/images/avatar-placeholder\";\n\nconst MemoizedEditorContent = memo(EditorContent);\n\nconst EmailPreview = withT(\n ({\n t,\n to = [],\n from,\n subject,\n body,\n actionButtonText,\n logo,\n className = \"\",\n customContent,\n }) => (\n <div\n data-testid=\"email-preview-card\"\n className={classnames(\n \"bg-background neeto-ui-theme--light relative flex flex-1 flex-col rounded-lg px-6 py-8\",\n className\n )}\n >\n <div className=\"absolute -end-1.5 -top-1.5 z-10 min-w-max rounded-ss-md rounded-se-md rounded-es-md px-3 py-1.5 text-center text-sm font-medium text-[#49545c] shadow-[0px_3px_4px_0px_#00000026] [background:#ffee6a] after:absolute after:end-0 after:top-full after:-z-20 after:[border-width:0_0_12px_6px] after:border-solid after:[border-color:transparent_#ddd06b] after:content-['']\">\n {t(\"neetoMolecules.emailPreview.previewMessage\")}\n </div>\n <div className=\"w-full pb-4\">\n <Typography\n className=\"text-foreground min-w-0 grow space-x-2 leading-normal break-words\"\n data-testid=\"email-subject-preview\"\n variant=\"h4\"\n >\n <span>\n {subject || <span className=\"bg-muted h-2 w-40 rounded-full\" />}\n </span>\n </Typography>\n <div className=\"mt-4 flex items-center gap-2\">\n <div className=\"shrink-0\">\n <AvatarPlaceholder />\n </div>\n <div className=\"flex flex-col gap-1\">\n {isPresent(from) ? (\n <Typography variant=\"h6\" weight=\"medium\">\n {from}\n </Typography>\n ) : (\n <div className=\"flex gap-2\">\n <span className=\"bg-muted h-2 w-24 rounded-full\" />\n <span className=\"bg-muted h-2 w-24 rounded-full\" />\n </div>\n )}\n {isPresent(to) ? (\n <Typography\n className=\"text-muted-foreground line-clamp-1\"\n data-testid=\"email-to-block\"\n variant=\"nano\"\n >\n {to.join(\", \")}\n </Typography>\n ) : (\n <span\n className=\"bg-muted h-2 w-16 rounded-full\"\n data-testid=\"email-to-block\"\n />\n )}\n </div>\n </div>\n </div>\n <div\n className=\"bg-muted flex flex-1 flex-col justify-between gap-y-6 rounded px-6 py-4 text-base leading-relaxed\"\n data-testid=\"email-body-preview-container\"\n >\n <div className=\"bg-background w-full p-6 md:p-8 2xl:mx-auto 2xl:max-w-lg\">\n {body ? (\n <MemoizedEditorContent\n className=\"whitespace-normal\"\n content={body}\n />\n ) : (\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"bg-muted h-2 w-48 max-w-full rounded-full md:w-80\" />\n <div className=\"bg-muted h-2 w-40 max-w-full rounded-full md:w-72\" />\n <div className=\"bg-muted h-2 w-48 max-w-full rounded-full md:w-80\" />\n </div>\n )}\n {customContent && customContent}\n {actionButtonText && (\n <div className=\"mt-6 flex w-full items-center justify-center\">\n <Button\n className=\"pointer-events-none\"\n label={actionButtonText}\n />\n </div>\n )}\n {logo && (\n <img\n alt={t(\"neetoMolecules.emailPreview.logoAltText\")}\n className=\"h-20 w-36 object-cover\"\n data-testid=\"company-logo-preview\"\n src={logo}\n />\n )}\n </div>\n </div>\n </div>\n )\n);\n\nEmailPreview.propTypes = {\n /**\n * The value of the send-to field.\n */\n to: PropTypes.arrayOf(PropTypes.string),\n /**\n * The value of the send-from field.\n */\n from: PropTypes.string,\n /**\n * The subject of the email.\n */\n subject: PropTypes.string,\n /**\n * The body of the email.\n */\n body: PropTypes.string,\n /**\n * The text to be shown in the action button.\n */\n actionButtonText: PropTypes.string,\n /**\n * Source link for the company logo.\n */\n logo: PropTypes.string,\n /**\n * To pass custom content that will be rendered above the action button.\n */\n customContent: PropTypes.string,\n};\n\nexport default EmailPreview;\n"],"names":["MemoizedEditorContent","memo","EditorContent","EmailPreview","withT","_ref","t","_ref$to","to","from","subject","body","actionButtonText","logo","_ref$className","className","customContent","_jsxs","classnames","children","_jsx","Typography","variant","AvatarPlaceholder","isPresent","weight","join","content","Button","label","alt","src","propTypes","PropTypes","arrayOf","string"],"mappings":"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"}
|
package/dist/cjs/v2/ErrorPage.js
CHANGED
|
@@ -123,7 +123,7 @@ var ErrorPage = function ErrorPage(_ref) {
|
|
|
123
123
|
className: "@container/error-page flex min-h-dvh w-full flex-col items-center justify-center",
|
|
124
124
|
"data-testid": "error-page-container",
|
|
125
125
|
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
126
|
-
className: "flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-
|
|
126
|
+
className: "flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-start",
|
|
127
127
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
128
128
|
className: "bg-muted text-muted-foreground flex size-24 shrink-0 items-center justify-center rounded-full border",
|
|
129
129
|
"data-testid": "error-image",
|
|
@@ -184,7 +184,7 @@ var ErrorPage = function ErrorPage(_ref) {
|
|
|
184
184
|
type: "button",
|
|
185
185
|
onClick: handleGoBack,
|
|
186
186
|
children: [/*#__PURE__*/jsxRuntime.jsx(chevronLeft.ChevronLeft, {
|
|
187
|
-
className: "size-4"
|
|
187
|
+
className: "size-4 rtl:scale-x-[-1]"
|
|
188
188
|
}), t("neetoMolecules.errorPage.goBack")]
|
|
189
189
|
})
|
|
190
190
|
}) : !hideBackToHomeButton && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, _objectSpread(_objectSpread({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ErrorPage.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/lock.js","../../../src/v2/components/ErrorPage/constants.js","../../../src/v2/components/ErrorPage/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"11\", x: \"3\", y: \"11\", rx: \"2\", ry: \"2\", key: \"1w4ew1\" }],\n [\"path\", { d: \"M7 11V7a5 5 0 0 1 10 0v4\", key: \"fwvmzm\" }]\n];\nconst Lock = createLucideIcon(\"lock\", __iconNode);\n\nexport { __iconNode, Lock as default };\n//# sourceMappingURL=lock.js.map\n","import { Lock, Search, TriangleAlert } from \"lucide-react\";\n\nexport const ERRORS = {\n 404: {\n Icon: Search,\n errorKey: \"neetoMolecules.errorPage.cantBeFound\",\n titleKey: \"neetoMolecules.errorPage.title.cantBeFound\",\n descriptionKey: \"neetoMolecules.errorPage.description.cantBeFound\",\n primaryAction: \"home\",\n usesChat: true,\n },\n 403: {\n Icon: Lock,\n errorKey: \"neetoMolecules.errorPage.unauthorized\",\n titleKey: \"neetoMolecules.errorPage.title.unauthorized\",\n descriptionKey: \"neetoMolecules.errorPage.description.unauthorized\",\n primaryAction: \"back\",\n usesChat: false,\n },\n 500: {\n Icon: TriangleAlert,\n errorKey: \"neetoMolecules.errorPage.internalServerError\",\n titleKey: \"neetoMolecules.errorPage.title.internalServerError\",\n descriptionKey: \"neetoMolecules.errorPage.description.internalServerError\",\n primaryAction: \"home\",\n usesChat: true,\n },\n};\n","import { useEffect } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport DOMPurify from \"dompurify\";\nimport { ChevronLeft, House } from \"lucide-react\";\nimport { useErrorDisplayStore } from \"neetocommons/v2/react-utils/useDisplayErrorPage\";\nimport PropTypes from \"prop-types\";\nimport { Helmet } from \"react-helmet\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { ERRORS } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst ErrorPage = ({\n homeUrl = \"/\",\n status,\n backToHomeButtonProps,\n children,\n showNeetoChatWidget = true,\n description,\n title,\n hideBackToHomeButton = false,\n}) => {\n const { t } = useTranslation();\n const { statusCode: storeStatusCode, showErrorPage } =\n useErrorDisplayStore.pick();\n\n status = status || storeStatusCode;\n const { Icon, errorKey, titleKey, descriptionKey, primaryAction, usesChat } =\n ERRORS[status] || ERRORS[404];\n\n useEffect(() => {\n const pageLoader = document.getElementById(\"neeto-page-loader\");\n if (pageLoader) pageLoader.remove();\n\n const onBackButtonPress = () => {\n if (!showErrorPage) return;\n useErrorDisplayStore.setState({ showErrorPage: false });\n };\n\n window.addEventListener(\"popstate\", onBackButtonPress);\n\n return () => {\n window.removeEventListener(\"popstate\", onBackButtonPress);\n };\n }, []);\n\n const openChatWidget = () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n };\n\n // Falls back to homeUrl when the user landed on the error page directly\n // (deep link / fresh tab) and has no in-app history to go back to.\n const handleGoBack = () => {\n if (window.history.length > 1) {\n window.history.back();\n } else {\n window.location.href = homeUrl;\n }\n };\n\n const showDefaultDescription = !usesChat || showNeetoChatWidget;\n\n return (\n <div\n className=\"@container/error-page flex min-h-dvh w-full flex-col items-center justify-center\"\n data-testid=\"error-page-container\"\n >\n <div className=\"flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-left\">\n <div\n className=\"bg-muted text-muted-foreground flex size-24 shrink-0 items-center justify-center rounded-full border\"\n data-testid=\"error-image\"\n >\n <Icon className=\"size-10\" strokeWidth={1.5} />\n </div>\n <div className=\"flex flex-col justify-center md:min-w-0 md:flex-grow\">\n <Helmet>\n <title>{t(titleKey)}</title>\n </Helmet>\n {!!status && (\n <Typography\n className=\"text-muted-foreground mb-2 tracking-[0.08em] uppercase\"\n data-testid=\"status-code\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.errorPage.statusCodeLabel\", { status })}\n </Typography>\n )}\n <Typography\n className=\"mb-3\"\n data-testid=\"title\"\n variant=\"h3\"\n weight=\"semibold\"\n >\n {title || <Trans i18nKey={errorKey} />}\n </Typography>\n {description ? (\n <Typography\n className=\"mb-6\"\n dangerouslySetInnerHTML={{ __html: sanitize(description) }}\n data-testid=\"description\"\n variant=\"body1\"\n />\n ) : (\n showDefaultDescription && (\n <Typography\n className=\"mb-6\"\n data-testid=\"description\"\n variant=\"body1\"\n >\n <Trans\n i18nKey={descriptionKey}\n components={{\n contactLink: (\n <Button\n className=\"h-auto p-0 text-base\"\n variant=\"link\"\n onClick={openChatWidget}\n />\n ),\n }}\n />\n </Typography>\n )\n )}\n <div className=\"flex flex-wrap items-center justify-center gap-3 @[768px]/error-page:justify-start [&_a]:no-underline\">\n {primaryAction === \"back\" ? (\n <Button asChild size=\"lg\" variant=\"default\">\n <button type=\"button\" onClick={handleGoBack}>\n <ChevronLeft className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.goBack\")}\n </button>\n </Button>\n ) : (\n !hideBackToHomeButton && (\n <Button\n asChild\n size=\"lg\"\n variant=\"default\"\n {...backToHomeButtonProps}\n >\n <a href={homeUrl}>\n <House className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.backToHome\")}\n </a>\n </Button>\n )\n )}\n {children}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nErrorPage.propTypes = {\n /**\n * The URL to which the user will be taken to when user clicks on back to home button.\n */\n homeUrl: PropTypes.string,\n /**\n * The status code of the error.\n */\n status: PropTypes.oneOf([403, 404, 500]),\n /**\n * Decides whether 'contact us' link should be displayed or not.\n */\n showNeetoChatWidget: PropTypes.bool,\n /**\n * Description about the error.\n */\n description: PropTypes.string,\n /**\n * Decides whether 'back to home' button should be displayed or not.\n */\n hideBackToHomeButton: PropTypes.bool,\n /**\n * The title of the error page.\n */\n title: PropTypes.string,\n};\n\nexport default ErrorPage;\n"],"names":["createLucideIcon","ERRORS","Icon","Search","errorKey","titleKey","descriptionKey","primaryAction","usesChat","Lock","TriangleAlert","sanitize","DOMPurify","ErrorPage","_ref","_ref$homeUrl","homeUrl","status","backToHomeButtonProps","children","_ref$showNeetoChatWid","showNeetoChatWidget","description","title","_ref$hideBackToHomeBu","hideBackToHomeButton","_useTranslation","useTranslation","t","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","statusCode","showErrorPage","storeStatusCode","_ref2","useEffect","pageLoader","document","getElementById","remove","onBackButtonPress","setState","window","addEventListener","removeEventListener","openChatWidget","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","handleGoBack","history","length","back","location","href","showDefaultDescription","_jsx","className","_jsxs","strokeWidth","Helmet","Typography","variant","weight","Trans","i18nKey","dangerouslySetInnerHTML","__html","components","contactLink","Button","onClick","asChild","size","type","ChevronLeft","_objectSpread","House"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"ErrorPage.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/lock.js","../../../src/v2/components/ErrorPage/constants.js","../../../src/v2/components/ErrorPage/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"rect\", { width: \"18\", height: \"11\", x: \"3\", y: \"11\", rx: \"2\", ry: \"2\", key: \"1w4ew1\" }],\n [\"path\", { d: \"M7 11V7a5 5 0 0 1 10 0v4\", key: \"fwvmzm\" }]\n];\nconst Lock = createLucideIcon(\"lock\", __iconNode);\n\nexport { __iconNode, Lock as default };\n//# sourceMappingURL=lock.js.map\n","import { Lock, Search, TriangleAlert } from \"lucide-react\";\n\nexport const ERRORS = {\n 404: {\n Icon: Search,\n errorKey: \"neetoMolecules.errorPage.cantBeFound\",\n titleKey: \"neetoMolecules.errorPage.title.cantBeFound\",\n descriptionKey: \"neetoMolecules.errorPage.description.cantBeFound\",\n primaryAction: \"home\",\n usesChat: true,\n },\n 403: {\n Icon: Lock,\n errorKey: \"neetoMolecules.errorPage.unauthorized\",\n titleKey: \"neetoMolecules.errorPage.title.unauthorized\",\n descriptionKey: \"neetoMolecules.errorPage.description.unauthorized\",\n primaryAction: \"back\",\n usesChat: false,\n },\n 500: {\n Icon: TriangleAlert,\n errorKey: \"neetoMolecules.errorPage.internalServerError\",\n titleKey: \"neetoMolecules.errorPage.title.internalServerError\",\n descriptionKey: \"neetoMolecules.errorPage.description.internalServerError\",\n primaryAction: \"home\",\n usesChat: true,\n },\n};\n","import { useEffect } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport DOMPurify from \"dompurify\";\nimport { ChevronLeft, House } from \"lucide-react\";\nimport { useErrorDisplayStore } from \"neetocommons/v2/react-utils/useDisplayErrorPage\";\nimport PropTypes from \"prop-types\";\nimport { Helmet } from \"react-helmet\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { ERRORS } from \"./constants\";\n\nconst sanitize = DOMPurify.sanitize;\n\nconst ErrorPage = ({\n homeUrl = \"/\",\n status,\n backToHomeButtonProps,\n children,\n showNeetoChatWidget = true,\n description,\n title,\n hideBackToHomeButton = false,\n}) => {\n const { t } = useTranslation();\n const { statusCode: storeStatusCode, showErrorPage } =\n useErrorDisplayStore.pick();\n\n status = status || storeStatusCode;\n const { Icon, errorKey, titleKey, descriptionKey, primaryAction, usesChat } =\n ERRORS[status] || ERRORS[404];\n\n useEffect(() => {\n const pageLoader = document.getElementById(\"neeto-page-loader\");\n if (pageLoader) pageLoader.remove();\n\n const onBackButtonPress = () => {\n if (!showErrorPage) return;\n useErrorDisplayStore.setState({ showErrorPage: false });\n };\n\n window.addEventListener(\"popstate\", onBackButtonPress);\n\n return () => {\n window.removeEventListener(\"popstate\", onBackButtonPress);\n };\n }, []);\n\n const openChatWidget = () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n };\n\n // Falls back to homeUrl when the user landed on the error page directly\n // (deep link / fresh tab) and has no in-app history to go back to.\n const handleGoBack = () => {\n if (window.history.length > 1) {\n window.history.back();\n } else {\n window.location.href = homeUrl;\n }\n };\n\n const showDefaultDescription = !usesChat || showNeetoChatWidget;\n\n return (\n <div\n className=\"@container/error-page flex min-h-dvh w-full flex-col items-center justify-center\"\n data-testid=\"error-page-container\"\n >\n <div className=\"flex w-[768px] max-w-full flex-col items-center gap-8 p-4 text-center @[768px]/error-page:flex-row @[768px]/error-page:items-center @[768px]/error-page:gap-12 @[768px]/error-page:p-6 @[768px]/error-page:text-start\">\n <div\n className=\"bg-muted text-muted-foreground flex size-24 shrink-0 items-center justify-center rounded-full border\"\n data-testid=\"error-image\"\n >\n <Icon className=\"size-10\" strokeWidth={1.5} />\n </div>\n <div className=\"flex flex-col justify-center md:min-w-0 md:flex-grow\">\n <Helmet>\n <title>{t(titleKey)}</title>\n </Helmet>\n {!!status && (\n <Typography\n className=\"text-muted-foreground mb-2 tracking-[0.08em] uppercase\"\n data-testid=\"status-code\"\n variant=\"body3\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.errorPage.statusCodeLabel\", { status })}\n </Typography>\n )}\n <Typography\n className=\"mb-3\"\n data-testid=\"title\"\n variant=\"h3\"\n weight=\"semibold\"\n >\n {title || <Trans i18nKey={errorKey} />}\n </Typography>\n {description ? (\n <Typography\n className=\"mb-6\"\n dangerouslySetInnerHTML={{ __html: sanitize(description) }}\n data-testid=\"description\"\n variant=\"body1\"\n />\n ) : (\n showDefaultDescription && (\n <Typography\n className=\"mb-6\"\n data-testid=\"description\"\n variant=\"body1\"\n >\n <Trans\n i18nKey={descriptionKey}\n components={{\n contactLink: (\n <Button\n className=\"h-auto p-0 text-base\"\n variant=\"link\"\n onClick={openChatWidget}\n />\n ),\n }}\n />\n </Typography>\n )\n )}\n <div className=\"flex flex-wrap items-center justify-center gap-3 @[768px]/error-page:justify-start [&_a]:no-underline\">\n {primaryAction === \"back\" ? (\n <Button asChild size=\"lg\" variant=\"default\">\n <button type=\"button\" onClick={handleGoBack}>\n <ChevronLeft className=\"size-4 rtl:scale-x-[-1]\" />\n {t(\"neetoMolecules.errorPage.goBack\")}\n </button>\n </Button>\n ) : (\n !hideBackToHomeButton && (\n <Button\n asChild\n size=\"lg\"\n variant=\"default\"\n {...backToHomeButtonProps}\n >\n <a href={homeUrl}>\n <House className=\"size-4\" />\n {t(\"neetoMolecules.errorPage.backToHome\")}\n </a>\n </Button>\n )\n )}\n {children}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nErrorPage.propTypes = {\n /**\n * The URL to which the user will be taken to when user clicks on back to home button.\n */\n homeUrl: PropTypes.string,\n /**\n * The status code of the error.\n */\n status: PropTypes.oneOf([403, 404, 500]),\n /**\n * Decides whether 'contact us' link should be displayed or not.\n */\n showNeetoChatWidget: PropTypes.bool,\n /**\n * Description about the error.\n */\n description: PropTypes.string,\n /**\n * Decides whether 'back to home' button should be displayed or not.\n */\n hideBackToHomeButton: PropTypes.bool,\n /**\n * The title of the error page.\n */\n title: PropTypes.string,\n};\n\nexport default ErrorPage;\n"],"names":["createLucideIcon","ERRORS","Icon","Search","errorKey","titleKey","descriptionKey","primaryAction","usesChat","Lock","TriangleAlert","sanitize","DOMPurify","ErrorPage","_ref","_ref$homeUrl","homeUrl","status","backToHomeButtonProps","children","_ref$showNeetoChatWid","showNeetoChatWidget","description","title","_ref$hideBackToHomeBu","hideBackToHomeButton","_useTranslation","useTranslation","t","_useErrorDisplayStore","useErrorDisplayStore","useShallow","store","statusCode","showErrorPage","storeStatusCode","_ref2","useEffect","pageLoader","document","getElementById","remove","onBackButtonPress","setState","window","addEventListener","removeEventListener","openChatWidget","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","handleGoBack","history","length","back","location","href","showDefaultDescription","_jsx","className","_jsxs","strokeWidth","Helmet","Typography","variant","weight","Trans","i18nKey","dangerouslySetInnerHTML","__html","components","contactLink","Button","onClick","asChild","size","type","ChevronLeft","_objectSpread","House"],"mappings":"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","x_google_ignoreList":[0]}
|