@bigbinary/neeto-molecules 5.1.17 → 5.1.19

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 (136) hide show
  1. package/dist/{Columns-gR00LMKF.js → Columns-BFBWAHqh.js} +2 -20
  2. package/dist/Columns-BFBWAHqh.js.map +1 -0
  3. package/dist/EmailForm.js +2 -0
  4. package/dist/EmailForm.js.map +1 -1
  5. package/dist/EmailPreview.js +1 -20
  6. package/dist/EmailPreview.js.map +1 -1
  7. package/dist/GoogleFontPicker.js +1 -449
  8. package/dist/GoogleFontPicker.js.map +1 -1
  9. package/dist/IconPicker.js +6 -914
  10. package/dist/IconPicker.js.map +1 -1
  11. package/dist/SendToFields.js +3 -1943
  12. package/dist/SendToFields.js.map +1 -1
  13. package/dist/ShareViaEmail.js +2 -0
  14. package/dist/ShareViaEmail.js.map +1 -1
  15. package/dist/avatar-placeholder-DEjUhVlU.js +23 -0
  16. package/dist/avatar-placeholder-DEjUhVlU.js.map +1 -0
  17. package/dist/cjs/{Columns-Brpr2a_M.js → Columns-CHOsnC9n.js} +3 -21
  18. package/dist/cjs/Columns-CHOsnC9n.js.map +1 -0
  19. package/dist/cjs/EmailForm.js +2 -0
  20. package/dist/cjs/EmailForm.js.map +1 -1
  21. package/dist/cjs/EmailPreview.js +2 -39
  22. package/dist/cjs/EmailPreview.js.map +1 -1
  23. package/dist/cjs/GoogleFontPicker.js +9 -457
  24. package/dist/cjs/GoogleFontPicker.js.map +1 -1
  25. package/dist/cjs/IconPicker.js +6 -914
  26. package/dist/cjs/IconPicker.js.map +1 -1
  27. package/dist/cjs/SendToFields.js +4 -1944
  28. package/dist/cjs/SendToFields.js.map +1 -1
  29. package/dist/cjs/ShareViaEmail.js +2 -0
  30. package/dist/cjs/ShareViaEmail.js.map +1 -1
  31. package/dist/cjs/avatar-placeholder-CSJpe1V0.js +44 -0
  32. package/dist/cjs/avatar-placeholder-CSJpe1V0.js.map +1 -0
  33. package/dist/cjs/download-B53zeKGa.js +21 -0
  34. package/dist/cjs/download-B53zeKGa.js.map +1 -0
  35. package/dist/cjs/grip-vertical-7cfWc2sE.js +24 -0
  36. package/dist/cjs/grip-vertical-7cfWc2sE.js.map +1 -0
  37. package/dist/cjs/index.es-Bcx0v5Pd.js +454 -0
  38. package/dist/cjs/index.es-Bcx0v5Pd.js.map +1 -0
  39. package/dist/cjs/index.esm-Bb1Vtlp2.js +919 -0
  40. package/dist/cjs/index.esm-Bb1Vtlp2.js.map +1 -0
  41. package/dist/cjs/papaparse-B5u_uWB3.js +1948 -0
  42. package/dist/cjs/papaparse-B5u_uWB3.js.map +1 -0
  43. package/dist/cjs/upload-C5ZnN-d5.js +21 -0
  44. package/dist/cjs/upload-C5ZnN-d5.js.map +1 -0
  45. package/dist/cjs/v2/BrowserPreview.js +51 -0
  46. package/dist/cjs/v2/BrowserPreview.js.map +1 -0
  47. package/dist/cjs/v2/Builder.js +872 -0
  48. package/dist/cjs/v2/Builder.js.map +1 -0
  49. package/dist/cjs/v2/CalendarView.js +3 -1
  50. package/dist/cjs/v2/CalendarView.js.map +1 -1
  51. package/dist/cjs/v2/Codeblock.js +62 -0
  52. package/dist/cjs/v2/Codeblock.js.map +1 -0
  53. package/dist/cjs/v2/Columns.js +2 -1
  54. package/dist/cjs/v2/Columns.js.map +1 -1
  55. package/dist/cjs/v2/Currency.js +920 -0
  56. package/dist/cjs/v2/Currency.js.map +1 -0
  57. package/dist/cjs/v2/DeleteArchiveModal.js +91 -0
  58. package/dist/cjs/v2/DeleteArchiveModal.js.map +1 -0
  59. package/dist/cjs/v2/DownloadMobileAppCallout.js +43 -0
  60. package/dist/cjs/v2/DownloadMobileAppCallout.js.map +1 -0
  61. package/dist/cjs/v2/EmailForm.js +622 -0
  62. package/dist/cjs/v2/EmailForm.js.map +1 -0
  63. package/dist/cjs/v2/EmailPreview.js +138 -0
  64. package/dist/cjs/v2/EmailPreview.js.map +1 -0
  65. package/dist/cjs/v2/EmojiReactions.js +82 -0
  66. package/dist/cjs/v2/EmojiReactions.js.map +1 -0
  67. package/dist/cjs/v2/FileUpload.js +5 -19
  68. package/dist/cjs/v2/FileUpload.js.map +1 -1
  69. package/dist/cjs/v2/GoogleFontPicker.js +130 -0
  70. package/dist/cjs/v2/GoogleFontPicker.js.map +1 -0
  71. package/dist/cjs/v2/IconPicker.js +274 -0
  72. package/dist/cjs/v2/IconPicker.js.map +1 -0
  73. package/dist/cjs/v2/SendToFields.js +313 -0
  74. package/dist/cjs/v2/SendToFields.js.map +1 -0
  75. package/dist/cjs/v2/SubHeader.js +6 -19
  76. package/dist/cjs/v2/SubHeader.js.map +1 -1
  77. package/dist/download-CZ7Q6k7-.js +19 -0
  78. package/dist/download-CZ7Q6k7-.js.map +1 -0
  79. package/dist/grip-vertical-FEAaqOeC.js +22 -0
  80. package/dist/grip-vertical-FEAaqOeC.js.map +1 -0
  81. package/dist/index.es-BQ-dr8y1.js +451 -0
  82. package/dist/index.es-BQ-dr8y1.js.map +1 -0
  83. package/dist/index.esm-DLni3-hz.js +917 -0
  84. package/dist/index.esm-DLni3-hz.js.map +1 -0
  85. package/dist/papaparse-p7fkGgWo.js +1946 -0
  86. package/dist/papaparse-p7fkGgWo.js.map +1 -0
  87. package/dist/upload-BNvlRoRJ.js +19 -0
  88. package/dist/upload-BNvlRoRJ.js.map +1 -0
  89. package/dist/v2/BrowserPreview.js +49 -0
  90. package/dist/v2/BrowserPreview.js.map +1 -0
  91. package/dist/v2/Builder.js +864 -0
  92. package/dist/v2/Builder.js.map +1 -0
  93. package/dist/v2/CalendarView.js +3 -1
  94. package/dist/v2/CalendarView.js.map +1 -1
  95. package/dist/v2/Codeblock.js +60 -0
  96. package/dist/v2/Codeblock.js.map +1 -0
  97. package/dist/v2/Columns.js +2 -1
  98. package/dist/v2/Columns.js.map +1 -1
  99. package/dist/v2/Currency.js +917 -0
  100. package/dist/v2/Currency.js.map +1 -0
  101. package/dist/v2/DeleteArchiveModal.js +89 -0
  102. package/dist/v2/DeleteArchiveModal.js.map +1 -0
  103. package/dist/v2/DownloadMobileAppCallout.js +41 -0
  104. package/dist/v2/DownloadMobileAppCallout.js.map +1 -0
  105. package/dist/v2/EmailForm.js +596 -0
  106. package/dist/v2/EmailForm.js.map +1 -0
  107. package/dist/v2/EmailPreview.js +136 -0
  108. package/dist/v2/EmailPreview.js.map +1 -0
  109. package/dist/v2/EmojiReactions.js +80 -0
  110. package/dist/v2/EmojiReactions.js.map +1 -0
  111. package/dist/v2/FileUpload.js +4 -18
  112. package/dist/v2/FileUpload.js.map +1 -1
  113. package/dist/v2/GoogleFontPicker.js +128 -0
  114. package/dist/v2/GoogleFontPicker.js.map +1 -0
  115. package/dist/v2/IconPicker.js +272 -0
  116. package/dist/v2/IconPicker.js.map +1 -0
  117. package/dist/v2/SendToFields.js +311 -0
  118. package/dist/v2/SendToFields.js.map +1 -0
  119. package/dist/v2/SubHeader.js +5 -18
  120. package/dist/v2/SubHeader.js.map +1 -1
  121. package/package.json +9 -9
  122. package/types/v2/BrowserPreview.d.ts +9 -0
  123. package/types/v2/Builder.d.ts +71 -0
  124. package/types/v2/Codeblock.d.ts +12 -0
  125. package/types/v2/Currency.d.ts +12 -0
  126. package/types/v2/DeleteArchiveModal.d.ts +16 -0
  127. package/types/v2/DownloadMobileAppCallout.d.ts +7 -0
  128. package/types/v2/EmailForm.d.ts +88 -0
  129. package/types/v2/EmailFormProvider.d.ts +29 -0
  130. package/types/v2/EmailPreview.d.ts +16 -0
  131. package/types/v2/EmojiReactions.d.ts +22 -0
  132. package/types/v2/GoogleFontPicker.d.ts +19 -0
  133. package/types/v2/IconPicker.d.ts +11 -0
  134. package/types/v2/SendToFields.d.ts +25 -0
  135. package/dist/Columns-gR00LMKF.js.map +0 -1
  136. package/dist/cjs/Columns-Brpr2a_M.js.map +0 -1
@@ -0,0 +1,313 @@
1
+ 'use strict';
2
+
3
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
5
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
+ var React = require('react');
7
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
8
+ var formik$1 = require('@bigbinary/neeto-atoms/formik');
9
+ var formik = require('formik');
10
+ var reactI18next = require('react-i18next');
11
+ var classnames = require('classnames');
12
+ var reactDropzone = require('react-dropzone');
13
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
14
+ var jsxRuntime = require('react/jsx-runtime');
15
+ var download = require('../download-B53zeKGa.js');
16
+ var upload = require('../upload-C5ZnN-d5.js');
17
+ var i18next = require('i18next');
18
+ var papaparse = require('../papaparse-B5u_uWB3.js');
19
+ var ramda = require('ramda');
20
+ var yup = require('yup');
21
+ require('../createLucideIcon-DBDhE7kE.js');
22
+ require('../_commonjsHelpers-BJu3ubxk.js');
23
+ require('stream');
24
+
25
+ var CSV_FILE_SIZE_IN_KB = 32;
26
+ var ONE_KILOBYTE_IN_BYTES = 1024;
27
+ var DOWNLOAD_SAMPLE_EMAIL_CSV_FILE = "https://d2v7kzglnr2dnh.cloudfront.net/others/sample-bulk-email.csv";
28
+
29
+ var Requirements$1 = reactUtils.withT(function (_ref) {
30
+ var t = _ref.t,
31
+ fileSize = _ref.fileSize;
32
+ return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Callout, {
33
+ className: "flex flex-col items-center py-6",
34
+ variant: "info",
35
+ children: [/*#__PURE__*/jsxRuntime.jsxs("ul", {
36
+ className: "flex list-outside list-disc flex-col gap-y-1 leading-normal font-normal",
37
+ children: [fileSize && /*#__PURE__*/jsxRuntime.jsx("li", {
38
+ children: t("neetoMolecules.shareViaLink.requirements.fileTypeAndSize", {
39
+ limit: fileSize
40
+ })
41
+ }), /*#__PURE__*/jsxRuntime.jsx("li", {
42
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
43
+ components: {
44
+ strong: /*#__PURE__*/jsxRuntime.jsx("strong", {
45
+ className: "font-semibold"
46
+ })
47
+ },
48
+ i18nKey: "neetoMolecules.shareViaLink.requirements.shouldContainColumns"
49
+ })
50
+ })]
51
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
52
+ href: DOWNLOAD_SAMPLE_EMAIL_CSV_FILE,
53
+ icon: download.Download,
54
+ iconPosition: "left",
55
+ label: t("neetoMolecules.shareViaLink.bulkUploadPane.downloadSampleCSV"),
56
+ variant: "link"
57
+ })]
58
+ });
59
+ });
60
+ var Requirements = /*#__PURE__*/React.memo(Requirements$1);
61
+
62
+ function ownKeys$1(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; }
63
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
64
+ var BulkUploadPane = function BulkUploadPane(_ref) {
65
+ var _fileRejections$;
66
+ var isOpen = _ref.isOpen,
67
+ fileSize = _ref.fileSize,
68
+ onClose = _ref.onClose,
69
+ handleFileSubmit = _ref.handleFileSubmit;
70
+ var _useDropzone = reactDropzone.useDropzone({
71
+ accept: {
72
+ "text/csv": []
73
+ },
74
+ maxFiles: 1,
75
+ maxSize: fileSize * ONE_KILOBYTE_IN_BYTES,
76
+ onDrop: function onDrop(files) {
77
+ return files[0] && handleFileSubmit(files[0]);
78
+ }
79
+ }),
80
+ getRootProps = _useDropzone.getRootProps,
81
+ getInputProps = _useDropzone.getInputProps,
82
+ isDragActive = _useDropzone.isDragActive,
83
+ fileRejections = _useDropzone.fileRejections;
84
+ var errors = (_fileRejections$ = fileRejections[0]) === null || _fileRejections$ === void 0 ? void 0 : _fileRejections$.errors.map(function (_ref2) {
85
+ var message = _ref2.message,
86
+ code = _ref2.code;
87
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
88
+ className: "text-destructive items",
89
+ "data-testid": "file-input-error-message",
90
+ variant: "body3",
91
+ children: message
92
+ }, code);
93
+ });
94
+ var _useTranslation = reactI18next.useTranslation(),
95
+ t = _useTranslation.t;
96
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet, {
97
+ isOpen: isOpen,
98
+ onClose: onClose,
99
+ "aria-describedby": undefined,
100
+ "data-testid": "bulk-upload-pane",
101
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
102
+ tabIndex: 0,
103
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Header, {
104
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Title, {
105
+ "data-testid": "bulk-upload-header",
106
+ children: t("neetoMolecules.shareViaLink.bulkUpload")
107
+ })
108
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Body, {
109
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", {
110
+ className: "flex w-full flex-col gap-y-4",
111
+ children: [/*#__PURE__*/jsxRuntime.jsx(Requirements, {
112
+ fileSize: fileSize
113
+ }), /*#__PURE__*/jsxRuntime.jsxs("div", _objectSpread$1(_objectSpread$1({}, getRootProps({
114
+ className: classnames("border-primary flex cursor-pointer flex-col items-center rounded-md border border-dashed p-2 transition duration-500 ease-in-out hover:bg-muted", {
115
+ "border-muted": isDragActive,
116
+ "border-destructive bg-destructive/10 hover:bg-destructive/10": fileRejections.length
117
+ })
118
+ })), {}, {
119
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
120
+ className: "flex flex-col items-center gap-y-3 p-4",
121
+ children: [/*#__PURE__*/jsxRuntime.jsx(upload.Upload, {
122
+ className: "text-primary",
123
+ size: 32
124
+ }), /*#__PURE__*/jsxRuntime.jsx("input", _objectSpread$1(_objectSpread$1({}, getInputProps()), {}, {
125
+ "data-testid": "csv-upload-input"
126
+ })), isDragActive ? /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Typography, {
127
+ variant: "body2",
128
+ children: t("neetoMolecules.shareViaLink.bulkUploadPane.dropFileHere")
129
+ }) : /*#__PURE__*/jsxRuntime.jsxs("div", {
130
+ className: "flex flex-col items-center gap-y-1",
131
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
132
+ className: "flex w-full items-center justify-center gap-x-1",
133
+ children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
134
+ i18nKey: "neetoMolecules.shareViaLink.bulkUploadPane.dragNDrop",
135
+ components: {
136
+ Button: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
137
+ variant: "link"
138
+ })
139
+ }
140
+ })
141
+ }), /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Typography, {
142
+ className: "text-muted-foreground",
143
+ variant: "body3",
144
+ children: [/*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
145
+ i18nKey: "neetoMolecules.shareViaLink.bulkUploadPane.supportedFormat",
146
+ values: {
147
+ fileType: "csv"
148
+ },
149
+ components: {
150
+ code: /*#__PURE__*/jsxRuntime.jsx("code", {
151
+ className: "bg-background m-0 border-s-0 p-0 text-sm"
152
+ })
153
+ }
154
+ }), " ", fileSize && t("neetoMolecules.shareViaLink.bulkUploadPane.supportedSize", {
155
+ fileSize: fileSize
156
+ })]
157
+ })]
158
+ })]
159
+ }), errors]
160
+ }))]
161
+ })
162
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Footer, {
163
+ className: "flex items-center gap-x-2",
164
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
165
+ "data-testid": "bulk-upload-cancel-button",
166
+ label: t("neetoMolecules.common.actions.cancel"),
167
+ type: "reset",
168
+ variant: "ghost",
169
+ onClick: onClose
170
+ })
171
+ })]
172
+ })
173
+ });
174
+ };
175
+
176
+ var isValidEmail = function isValidEmail(email) {
177
+ return yup.string().email().isValidSync(email);
178
+ };
179
+ var createEmailOptions = function createEmailOptions() {
180
+ var emails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
181
+ return emails.map(function (email) {
182
+ return {
183
+ label: email,
184
+ value: email,
185
+ valid: isValidEmail(email)
186
+ };
187
+ });
188
+ };
189
+ var parseCsvEmails = function parseCsvEmails(file, onSuccess) {
190
+ papaparse.Papa.parse(file, {
191
+ header: true,
192
+ skipEmptyLines: true,
193
+ transformHeader: function transformHeader(h) {
194
+ return h.toLowerCase().replace(/\W/g, "");
195
+ },
196
+ complete: function complete(results) {
197
+ var _results$meta$fields;
198
+ var isEmailFieldPresent = (_results$meta$fields = results.meta.fields) === null || _results$meta$fields === void 0 ? void 0 : _results$meta$fields.includes("email");
199
+ if (isEmailFieldPresent) {
200
+ var emails = results.data.filter(ramda.prop("email")).map(function (item) {
201
+ return item.email.trim();
202
+ });
203
+ onSuccess(createEmailOptions(emails));
204
+ } else {
205
+ neetoAtoms.Toastr.error(i18next.t("neetoMolecules.sendToFields.errors.invalidCsv"));
206
+ }
207
+ }
208
+ });
209
+ };
210
+
211
+ 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; }
212
+ 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; }
213
+ var SendToFields = function SendToFields(_ref) {
214
+ var emailInputProps = _ref.emailInputProps,
215
+ ccInputProps = _ref.ccInputProps,
216
+ bccInputProps = _ref.bccInputProps,
217
+ _ref$showUploadCsvBut = _ref.showUploadCsvButton,
218
+ showUploadCsvButton = _ref$showUploadCsvBut === void 0 ? false : _ref$showUploadCsvBut,
219
+ _ref$showCcBccButton = _ref.showCcBccButton,
220
+ showCcBccButton = _ref$showCcBccButton === void 0 ? false : _ref$showCcBccButton,
221
+ _ref$showCcField = _ref.showCcField,
222
+ showCcField = _ref$showCcField === void 0 ? false : _ref$showCcField,
223
+ _ref$showBccField = _ref.showBccField,
224
+ showBccField = _ref$showBccField === void 0 ? false : _ref$showBccField,
225
+ _ref$showSendToField = _ref.showSendToField,
226
+ showSendToField = _ref$showSendToField === void 0 ? true : _ref$showSendToField;
227
+ var _useState = React.useState(false),
228
+ _useState2 = _slicedToArray(_useState, 2),
229
+ isBulkUploadPaneOpen = _useState2[0],
230
+ setIsBulkUploadPaneOpen = _useState2[1];
231
+ var sendToFieldRef = React.useRef();
232
+ var _useFormikContext = formik.useFormikContext(),
233
+ _useFormikContext$val = _useFormikContext.values,
234
+ showCopyEmails = _useFormikContext$val.showCopyEmails,
235
+ existingSendToEmails = _useFormikContext$val[emailInputProps.name || "sendTo"],
236
+ setFieldValue = _useFormikContext.setFieldValue;
237
+ var _useTranslation = reactI18next.useTranslation(),
238
+ t = _useTranslation.t;
239
+ var handleCSVFile = function handleCSVFile(file) {
240
+ try {
241
+ var _sendToFieldRef$curre;
242
+ var onSuccess = function onSuccess(values) {
243
+ return setFieldValue(emailInputProps.name || "sendTo", [].concat(_toConsumableArray(existingSendToEmails), _toConsumableArray(values)));
244
+ };
245
+ parseCsvEmails(file, onSuccess);
246
+ setIsBulkUploadPaneOpen(false);
247
+ (_sendToFieldRef$curre = sendToFieldRef.current) === null || _sendToFieldRef$curre === void 0 || _sendToFieldRef$curre.focus();
248
+ } catch (error) {
249
+ neetoAtoms.Toastr.error(error);
250
+ }
251
+ };
252
+ var handelCcBccButtonClick = function handelCcBccButtonClick(e) {
253
+ e.stopPropagation();
254
+ setFieldValue("showCopyEmails", !showCopyEmails);
255
+ };
256
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
257
+ className: "w-full",
258
+ "data-testid": "send-to-text-field",
259
+ children: [showUploadCsvButton && /*#__PURE__*/jsxRuntime.jsx("div", {
260
+ className: "flex justify-end",
261
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
262
+ "data-testid": "bulk-upload-button",
263
+ icon: upload.Upload,
264
+ label: t("neetoMolecules.shareViaLink.bulkUpload"),
265
+ size: "sm",
266
+ variant: "link",
267
+ onClick: function onClick() {
268
+ return setIsBulkUploadPaneOpen(true);
269
+ }
270
+ })
271
+ }), showSendToField && /*#__PURE__*/jsxRuntime.jsx("div", {
272
+ className: "border-border w-full border-b pb-1",
273
+ children: /*#__PURE__*/jsxRuntime.jsx(formik$1.MultiEmailInput, _objectSpread(_objectSpread({
274
+ name: "sendTo",
275
+ ref: sendToFieldRef
276
+ }, emailInputProps), {}, {
277
+ suffix: showCcBccButton && /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
278
+ "data-testid": "cc-bcc-button",
279
+ label: t("neetoMolecules.emailForm.labels.ccBcc"),
280
+ size: "sm",
281
+ variant: "link",
282
+ onClick: handelCcBccButtonClick,
283
+ onKeyDown: function onKeyDown(event) {
284
+ return event.stopPropagation();
285
+ }
286
+ })
287
+ }))
288
+ }), (showCopyEmails || showCcField || showBccField) && /*#__PURE__*/jsxRuntime.jsxs("div", {
289
+ className: "mt-5 flex w-full flex-col gap-5",
290
+ children: [(showCopyEmails || showCcField) && /*#__PURE__*/jsxRuntime.jsx("div", {
291
+ className: "border-border w-full border-b pb-1",
292
+ children: /*#__PURE__*/jsxRuntime.jsx(formik$1.MultiEmailInput, _objectSpread({
293
+ name: "sendToBcc"
294
+ }, ccInputProps))
295
+ }), (showCopyEmails || showBccField) && /*#__PURE__*/jsxRuntime.jsx("div", {
296
+ className: "border-border w-full border-b pb-1",
297
+ children: /*#__PURE__*/jsxRuntime.jsx(formik$1.MultiEmailInput, _objectSpread({
298
+ name: "sendToCc"
299
+ }, bccInputProps))
300
+ })]
301
+ }), /*#__PURE__*/jsxRuntime.jsx(BulkUploadPane, {
302
+ fileSize: CSV_FILE_SIZE_IN_KB,
303
+ handleFileSubmit: handleCSVFile,
304
+ isOpen: isBulkUploadPaneOpen,
305
+ onClose: function onClose() {
306
+ return setIsBulkUploadPaneOpen(false);
307
+ }
308
+ })]
309
+ });
310
+ };
311
+
312
+ module.exports = SendToFields;
313
+ //# sourceMappingURL=SendToFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SendToFields.js","sources":["../../../src/v2/components/SendToFields/constants.js","../../../src/v2/components/SendToFields/Requirements.jsx","../../../src/v2/components/SendToFields/BulkUploadPane.jsx","../../../src/v2/components/SendToFields/utils.js","../../../src/v2/components/SendToFields/index.jsx"],"sourcesContent":["export const SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\nexport const CSV_FILE_SIZE_IN_KB = 32;\nexport const ONE_KILOBYTE_IN_BYTES = 1024;\nexport const DOWNLOAD_SAMPLE_EMAIL_CSV_FILE =\n \"https://d2v7kzglnr2dnh.cloudfront.net/others/sample-bulk-email.csv\";\n","import { memo } from \"react\";\n\nimport { Button, Callout } from \"@bigbinary/neeto-atoms\";\nimport { Download } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { Trans } from \"react-i18next\";\n\nimport { DOWNLOAD_SAMPLE_EMAIL_CSV_FILE } from \"./constants\";\n\nconst Requirements = withT(({ t, fileSize }) => (\n <Callout className=\"flex flex-col items-center py-6\" variant=\"info\">\n <ul className=\"flex list-outside list-disc flex-col gap-y-1 leading-normal font-normal\">\n {fileSize && (\n <li>\n {t(\"neetoMolecules.shareViaLink.requirements.fileTypeAndSize\", {\n limit: fileSize,\n })}\n </li>\n )}\n <li>\n <Trans\n components={{ strong: <strong className=\"font-semibold\" /> }}\n i18nKey=\"neetoMolecules.shareViaLink.requirements.shouldContainColumns\"\n />\n </li>\n </ul>\n <Button\n href={DOWNLOAD_SAMPLE_EMAIL_CSV_FILE}\n icon={Download}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.shareViaLink.bulkUploadPane.downloadSampleCSV\")}\n variant=\"link\"\n />\n </Callout>\n));\n\nexport default memo(Requirements);\n","import { Button, Sheet, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { Upload } from \"lucide-react\";\nimport { useDropzone } from \"react-dropzone\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { ONE_KILOBYTE_IN_BYTES } from \"./constants\";\nimport Requirements from \"./Requirements\";\n\nconst BulkUploadPane = ({ isOpen, fileSize, onClose, handleFileSubmit }) => {\n const { getRootProps, getInputProps, isDragActive, fileRejections } =\n useDropzone({\n accept: { \"text/csv\": [] },\n maxFiles: 1,\n maxSize: fileSize * ONE_KILOBYTE_IN_BYTES,\n onDrop: files => files[0] && handleFileSubmit(files[0]),\n });\n\n const errors = fileRejections[0]?.errors.map(({ message, code }) => (\n <Typography\n className=\"text-destructive items\"\n data-testid=\"file-input-error-message\"\n key={code}\n variant=\"body3\"\n >\n {message}\n </Typography>\n ));\n\n const { t } = useTranslation();\n\n return (\n <Sheet\n {...{ isOpen, onClose }}\n aria-describedby={undefined}\n data-testid=\"bulk-upload-pane\"\n >\n <div tabIndex={0}>\n <Sheet.Header>\n <Sheet.Title data-testid=\"bulk-upload-header\">\n {t(\"neetoMolecules.shareViaLink.bulkUpload\")}\n </Sheet.Title>\n </Sheet.Header>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4\">\n <Requirements {...{ fileSize }} />\n <div\n {...getRootProps({\n className: classNames(\n \"border-primary flex cursor-pointer flex-col items-center rounded-md border border-dashed p-2 transition duration-500 ease-in-out hover:bg-muted\",\n {\n \"border-muted\": isDragActive,\n \"border-destructive bg-destructive/10 hover:bg-destructive/10\":\n fileRejections.length,\n }\n ),\n })}\n >\n <div className=\"flex flex-col items-center gap-y-3 p-4\">\n <Upload className=\"text-primary\" size={32} />\n <input {...getInputProps()} data-testid=\"csv-upload-input\" />\n {isDragActive ? (\n <Typography variant=\"body2\">\n {t(\n \"neetoMolecules.shareViaLink.bulkUploadPane.dropFileHere\"\n )}\n </Typography>\n ) : (\n <div className=\"flex flex-col items-center gap-y-1\">\n <div className=\"flex w-full items-center justify-center gap-x-1\">\n <Trans\n i18nKey=\"neetoMolecules.shareViaLink.bulkUploadPane.dragNDrop\"\n components={{\n Button: <Button variant=\"link\" />,\n }}\n />\n </div>\n <Typography\n className=\"text-muted-foreground\"\n variant=\"body3\"\n >\n <Trans\n i18nKey=\"neetoMolecules.shareViaLink.bulkUploadPane.supportedFormat\"\n values={{ fileType: \"csv\" }}\n components={{\n code: (\n <code className=\"bg-background m-0 border-s-0 p-0 text-sm\" />\n ),\n }}\n />{\" \"}\n {fileSize &&\n t(\n \"neetoMolecules.shareViaLink.bulkUploadPane.supportedSize\",\n { fileSize }\n )}\n </Typography>\n </div>\n )}\n </div>\n {errors}\n </div>\n </div>\n </Sheet.Body>\n <Sheet.Footer className=\"flex items-center gap-x-2\">\n <Button\n data-testid=\"bulk-upload-cancel-button\"\n label={t(\"neetoMolecules.common.actions.cancel\")}\n type=\"reset\"\n variant=\"ghost\"\n onClick={onClose}\n />\n </Sheet.Footer>\n </div>\n </Sheet>\n );\n};\n\nexport default BulkUploadPane;\n","import { Toastr } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport Papa from \"papaparse\";\nimport { prop } from \"ramda\";\nimport { string } from \"yup\";\n\nconst isValidEmail = email => string().email().isValidSync(email);\n\nexport const createEmailOptions = (emails = []) =>\n emails.map(email => ({\n label: email,\n value: email,\n valid: isValidEmail(email),\n }));\n\nexport const parseCsvEmails = (file, onSuccess) => {\n Papa.parse(file, {\n header: true,\n skipEmptyLines: true,\n transformHeader: h => h.toLowerCase().replace(/\\W/g, \"\"),\n complete: results => {\n const isEmailFieldPresent = results.meta.fields?.includes(\"email\");\n if (isEmailFieldPresent) {\n const emails = results.data\n .filter(prop(\"email\"))\n .map(item => item.email.trim());\n onSuccess(createEmailOptions(emails));\n } else {\n Toastr.error(t(\"neetoMolecules.sendToFields.errors.invalidCsv\"));\n }\n },\n });\n};\n","import { useRef, useState } from \"react\";\n\nimport { Button, Toastr } from \"@bigbinary/neeto-atoms\";\nimport { MultiEmailInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { Upload } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport BulkUploadPane from \"./BulkUploadPane\";\nimport { CSV_FILE_SIZE_IN_KB, SIZES } from \"./constants\";\nimport { parseCsvEmails } from \"./utils\";\n\nconst SendToFields = ({\n emailInputProps,\n ccInputProps,\n bccInputProps,\n showUploadCsvButton = false,\n showCcBccButton = false,\n showCcField = false,\n showBccField = false,\n showSendToField = true,\n}) => {\n const [isBulkUploadPaneOpen, setIsBulkUploadPaneOpen] = useState(false);\n const sendToFieldRef = useRef();\n const {\n values: {\n showCopyEmails,\n [emailInputProps.name || \"sendTo\"]: existingSendToEmails,\n },\n setFieldValue,\n } = useFormikContext();\n const { t } = useTranslation();\n\n const handleCSVFile = file => {\n try {\n const onSuccess = values =>\n setFieldValue(emailInputProps.name || \"sendTo\", [\n ...existingSendToEmails,\n ...values,\n ]);\n\n parseCsvEmails(file, onSuccess);\n setIsBulkUploadPaneOpen(false);\n sendToFieldRef.current?.focus();\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n const handelCcBccButtonClick = e => {\n e.stopPropagation();\n setFieldValue(\"showCopyEmails\", !showCopyEmails);\n };\n\n return (\n <div className=\"w-full\" data-testid=\"send-to-text-field\">\n {showUploadCsvButton && (\n <div className=\"flex justify-end\">\n <Button\n data-testid=\"bulk-upload-button\"\n icon={Upload}\n label={t(\"neetoMolecules.shareViaLink.bulkUpload\")}\n size=\"sm\"\n variant=\"link\"\n onClick={() => setIsBulkUploadPaneOpen(true)}\n />\n </div>\n )}\n {showSendToField && (\n <div className=\"border-border w-full border-b pb-1\">\n <MultiEmailInput\n name=\"sendTo\"\n ref={sendToFieldRef}\n {...emailInputProps}\n suffix={\n showCcBccButton && (\n <Button\n data-testid=\"cc-bcc-button\"\n label={t(\"neetoMolecules.emailForm.labels.ccBcc\")}\n size=\"sm\"\n variant=\"link\"\n onClick={handelCcBccButtonClick}\n onKeyDown={event => event.stopPropagation()}\n />\n )\n }\n />\n </div>\n )}\n {(showCopyEmails || showCcField || showBccField) && (\n <div className=\"mt-5 flex w-full flex-col gap-5\">\n {(showCopyEmails || showCcField) && (\n <div className=\"border-border w-full border-b pb-1\">\n <MultiEmailInput name=\"sendToBcc\" {...ccInputProps} />\n </div>\n )}\n {(showCopyEmails || showBccField) && (\n <div className=\"border-border w-full border-b pb-1\">\n <MultiEmailInput name=\"sendToCc\" {...bccInputProps} />\n </div>\n )}\n </div>\n )}\n <BulkUploadPane\n fileSize={CSV_FILE_SIZE_IN_KB}\n handleFileSubmit={handleCSVFile}\n isOpen={isBulkUploadPaneOpen}\n onClose={() => setIsBulkUploadPaneOpen(false)}\n />\n </div>\n );\n};\n\nconst inputPropTypes = PropTypes.shape({\n name: PropTypes.string,\n label: PropTypes.string,\n placeholder: PropTypes.string,\n dataTestid: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n size: PropTypes.oneOf(Object.values(SIZES)),\n required: PropTypes.bool,\n});\n\nSendToFields.propTypes = {\n /**\n * Input props for sendTo input field.\n */\n emailInputProps: inputPropTypes,\n /**\n * Input props for CC input field.\n */\n ccInputProps: inputPropTypes,\n /**\n * Input props for BCC input field.\n */\n bccInputProps: inputPropTypes,\n /**\n * Flag to determine whether the 'FilePicker' button is displayed.\n */\n showUploadCsvButton: PropTypes.bool,\n /**\n * Flag to determine whether the 'Cc/Bcc' button is displayed.\n */\n showCcBccButton: PropTypes.bool,\n /**\n * To show or hide the CC field.\n */\n showCcField: PropTypes.bool,\n /**\n * To show or hide the BCC field.\n */\n showBccField: PropTypes.bool,\n /**\n * To show or hide the \"Send to\" field.\n */\n showSendToField: PropTypes.bool,\n};\n\nexport default SendToFields;\n"],"names":["CSV_FILE_SIZE_IN_KB","ONE_KILOBYTE_IN_BYTES","DOWNLOAD_SAMPLE_EMAIL_CSV_FILE","Requirements","withT","_ref","t","fileSize","_jsxs","Callout","className","variant","children","_jsx","limit","Trans","components","strong","i18nKey","Button","href","icon","Download","iconPosition","label","memo","BulkUploadPane","_fileRejections$","isOpen","onClose","handleFileSubmit","_useDropzone","useDropzone","accept","maxFiles","maxSize","onDrop","files","getRootProps","getInputProps","isDragActive","fileRejections","errors","map","_ref2","message","code","Typography","_useTranslation","useTranslation","Sheet","undefined","tabIndex","Header","Title","Body","_objectSpread","classNames","length","Upload","size","values","fileType","Footer","type","onClick","isValidEmail","email","string","isValidSync","createEmailOptions","emails","arguments","value","valid","parseCsvEmails","file","onSuccess","Papa","parse","header","skipEmptyLines","transformHeader","h","toLowerCase","replace","complete","results","_results$meta$fields","isEmailFieldPresent","meta","fields","includes","data","filter","prop","item","trim","Toastr","error","SendToFields","emailInputProps","ccInputProps","bccInputProps","_ref$showUploadCsvBut","showUploadCsvButton","_ref$showCcBccButton","showCcBccButton","_ref$showCcField","showCcField","_ref$showBccField","showBccField","_ref$showSendToField","showSendToField","_useState","useState","_useState2","_slicedToArray","isBulkUploadPaneOpen","setIsBulkUploadPaneOpen","sendToFieldRef","useRef","_useFormikContext","useFormikContext","_useFormikContext$val","showCopyEmails","existingSendToEmails","name","setFieldValue","handleCSVFile","_sendToFieldRef$curre","concat","_toConsumableArray","current","focus","handelCcBccButtonClick","e","stopPropagation","MultiEmailInput","ref","suffix","onKeyDown","event"],"mappings":"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"}
@@ -9,7 +9,7 @@ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
9
9
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
10
10
  var primitives = require('@bigbinary/neeto-atoms/primitives');
11
11
  var reactI18next = require('react-i18next');
12
- var Columns$1 = require('../Columns-Brpr2a_M.js');
12
+ var Columns$1 = require('../Columns-CHOsnC9n.js');
13
13
  require('@babel/runtime/helpers/toConsumableArray');
14
14
  require('@tanstack/react-query');
15
15
  require('@bigbinary/neeto-commons-frontend/v2/react-utils/useMutationWithInvalidation');
@@ -17,6 +17,7 @@ require('axios');
17
17
  var jsxRuntime = require('react/jsx-runtime');
18
18
  var createLucideIcon = require('../createLucideIcon-DBDhE7kE.js');
19
19
  var neetoAtoms = require('@bigbinary/neeto-atoms');
20
+ var download = require('../download-B53zeKGa.js');
20
21
  var reactUtils = require('@bigbinary/neeto-commons-frontend/v2/react-utils');
21
22
  var NeetoFilters = require('@bigbinary/neeto-filters-frontend/v2/Filters');
22
23
  require('@dnd-kit/core');
@@ -24,6 +25,7 @@ require('@dnd-kit/modifiers');
24
25
  require('@dnd-kit/sortable');
25
26
  require('i18next');
26
27
  require('../utilities.esm-jwIHISzF.js');
28
+ require('../grip-vertical-7cfWc2sE.js');
27
29
  require('../search-BBuFYdmG.js');
28
30
 
29
31
  /**
@@ -34,27 +36,12 @@ require('../search-BBuFYdmG.js');
34
36
  */
35
37
 
36
38
 
37
- const __iconNode$2 = [
39
+ const __iconNode$1 = [
38
40
  ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
39
41
  ["path", { d: "M9 3v18", key: "fh3hqa" }],
40
42
  ["path", { d: "M15 3v18", key: "14nvp0" }]
41
43
  ];
42
- const Columns3 = createLucideIcon.createLucideIcon("columns-3", __iconNode$2);
43
-
44
- /**
45
- * @license lucide-react v1.7.0 - ISC
46
- *
47
- * This source code is licensed under the ISC license.
48
- * See the LICENSE file in the root directory of this source tree.
49
- */
50
-
51
-
52
- const __iconNode$1 = [
53
- ["path", { d: "M12 15V3", key: "m9g1x1" }],
54
- ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
55
- ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
56
- ];
57
- const Download = createLucideIcon.createLucideIcon("download", __iconNode$1);
44
+ const Columns3 = createLucideIcon.createLucideIcon("columns-3", __iconNode$1);
58
45
 
59
46
  /**
60
47
  * @license lucide-react v1.7.0 - ISC
@@ -151,7 +138,7 @@ var DownloadButton = function DownloadButton(_ref) {
151
138
  children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
152
139
  onClick: onClick,
153
140
  "data-testid": neetoCist.isPresent(dataTestid) ? dataTestid : "download-button",
154
- icon: Download,
141
+ icon: download.Download,
155
142
  size: "icon",
156
143
  variant: "ghost"
157
144
  })
@@ -1 +1 @@
1
- {"version":3,"file":"SubHeader.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/columns-3.js","../../../node_modules/lucide-react/dist/esm/icons/download.js","../../../node_modules/lucide-react/dist/esm/icons/funnel.js","../../../src/v2/components/SubHeader/RightBlock/Columns.jsx","../../../src/v2/components/SubHeader/RightBlock/Download.jsx","../../../src/v2/components/SubHeader/RightBlock/Filter.jsx","../../../src/v2/components/SubHeader/RightBlock/index.jsx","../../../src/v2/components/SubHeader/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: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M9 3v18\", key: \"fh3hqa\" }],\n [\"path\", { d: \"M15 3v18\", key: \"14nvp0\" }]\n];\nconst Columns3 = createLucideIcon(\"columns-3\", __iconNode);\n\nexport { __iconNode, Columns3 as default };\n//# sourceMappingURL=columns-3.js.map\n","/**\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 [\"path\", { d: \"M12 15V3\", key: \"m9g1x1\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"path\", { d: \"m7 10 5 5 5-5\", key: \"brsn70\" }]\n];\nconst Download = createLucideIcon(\"download\", __iconNode);\n\nexport { __iconNode, Download as default };\n//# sourceMappingURL=download.js.map\n","/**\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 [\n \"path\",\n {\n d: \"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z\",\n key: \"sc7q7i\"\n }\n ]\n];\nconst Funnel = createLucideIcon(\"funnel\", __iconNode);\n\nexport { __iconNode, Funnel as default };\n//# sourceMappingURL=funnel.js.map\n","import { useState } from \"react\";\n\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { Columns3 } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageColumns from \"../../Columns\";\n\nconst Columns = ({\n buttonProps = {},\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n tableKey,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useState(false);\n const [isTooltipOpen, setIsTooltipOpen] = useState(false);\n\n return (\n <TooltipProvider>\n <Tooltip\n open={isOpen ? false : isTooltipOpen}\n onOpenChange={setIsTooltipOpen}\n >\n <TooltipTrigger asChild>\n <span className=\"inline-flex\">\n <ManageColumns\n isSearchable\n buttonProps={{\n icon: Columns3,\n \"data-testid\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n onOpenChange={setIsOpen}\n {...{\n allowConfigurationResetOnUpdate,\n columnData,\n onMutationSuccess,\n tableKey,\n ...props,\n }}\n />\n </span>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\">\n {t(\"neetoMolecules.columns.columns\")}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Download } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DownloadButton = ({\n count,\n onClick,\n \"data-testid\": dataTestid = \"download-button\",\n tooltipProps = {},\n}) => {\n const { t } = useTranslation();\n const { content, position, ...restTooltipProps } = tooltipProps;\n\n return (\n <div className=\"relative\">\n <Tooltip\n content={content ?? t(\"neetoMolecules.common.download\")}\n position={position ?? \"bottom\"}\n {...restTooltipProps}\n >\n <Button\n {...{ onClick }}\n data-testid={isPresent(dataTestid) ? dataTestid : \"download-button\"}\n icon={Download}\n size=\"icon\"\n variant=\"ghost\"\n />\n </Tooltip>\n {count && (\n <span className=\"bg-primary text-primary-foreground absolute -end-0.5 -top-0.5 z-[1] inline-flex min-h-4 min-w-4 items-center justify-center rounded-full text-[0.625rem]\">\n {count}\n </span>\n )}\n </div>\n );\n};\n\nexport default DownloadButton;\n","import { Filter } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters/v2\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n variant: \"ghost\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\n \"flex flex-row items-center justify-end gap-2\",\n \"[&>:not([hidden])~:not([hidden])]:border-border [&>:not([hidden])~:not([hidden])]:border-s [&>:not([hidden])~:not([hidden])]:ps-2\",\n { hidden: not(showIcons) }\n )}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n tooltipProps: PropTypes.object,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n actionBlock: PropTypes.node,\n tableKey: PropTypes.string,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n onMutationSuccess: PropTypes.func,\n allowConfigurationResetOnUpdate: PropTypes.bool,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-testid\": dataTestid = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\"--nv-subheader-height\", `${height}px`);\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => {\n window.removeEventListener(\"resize\", updateHeaderHeight);\n document.body.style.removeProperty(\"--nv-subheader-height\");\n };\n }, []);\n\n return (\n <div\n data-testid={isPresent(dataTestid) ? dataTestid : \"subheader\"}\n ref={subheaderRef}\n className={classnames(\n \"mb-5 flex w-full shrink-0 flex-row flex-wrap items-center justify-between gap-4 md:flex-nowrap\",\n className\n )}\n >\n <div className=\"flex grow\" data-testid=\"subheader-left-wrapper\">\n {leftActionBlock && (\n <div\n className=\"flex flex-row items-center justify-start\"\n data-testid=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"ms-auto flex flex-row items-center justify-end gap-3 md:ms-0\"\n data-testid=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["__iconNode","createLucideIcon","Columns","_ref","_ref$buttonProps","buttonProps","columnData","onMutationSuccess","allowConfigurationResetOnUpdate","tableKey","props","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","_useState3","_useState4","isTooltipOpen","setIsTooltipOpen","_jsx","TooltipProvider","children","_jsxs","Tooltip","open","onOpenChange","TooltipTrigger","asChild","className","ManageColumns","_objectSpread","isSearchable","icon","Columns3","TooltipContent","side","displayName","DownloadButton","count","onClick","_ref$dataTestid","dataTestid","_ref$tooltipProps","tooltipProps","content","position","restTooltipProps","Button","isPresent","Download","size","variant","FilterButton","withT","NeetoFilters","Filter","label","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","style","setProperty","concat","window","addEventListener","removeEventListener","removeProperty","ref"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAMA,YAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AACjF,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE;AAC3C,CAAC;AACD,MAAM,QAAQ,GAAGC,iCAAgB,CAAC,WAAW,EAAED,YAAU,CAAC;;ACd1D;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAMA,YAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC5C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,2CAA2C,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC7E,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,EAAE;AAChD,CAAC;AACD,MAAM,QAAQ,GAAGC,iCAAgB,CAAC,UAAU,EAAED,YAAU,CAAC;;ACdzD;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE;AACF,IAAI,MAAM;AACV,IAAI;AACJ,MAAM,CAAC,EAAE,oJAAoJ;AAC7J,MAAM,GAAG,EAAE;AACX;AACA;AACA,CAAC;AACD,MAAM,MAAM,GAAGC,iCAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC;;;;;ACLrD,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAAC,IAAA,EAOP;AAAA,EAAA,IAAAC,gBAAA,GAAAD,IAAA,CANJE,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAChBE,UAAU,GAAAH,IAAA,CAAVG,UAAU;IACVC,iBAAiB,GAAAJ,IAAA,CAAjBI,iBAAiB;IACjBC,+BAA+B,GAAAL,IAAA,CAA/BK,+BAA+B;IAC/BC,QAAQ,GAAAN,IAAA,CAARM,QAAQ;AACLC,IAAAA,KAAK,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,WAAA,CAAA;AAER,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAAC,SAAA,GAA4BC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;AACxB,EAAA,IAAAI,UAAA,GAA0CL,cAAQ,CAAC,KAAK,CAAC;IAAAM,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAAlDE,IAAAA,aAAa,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,gBAAgB,GAAAF,UAAA,CAAA,CAAA,CAAA;EAEtC,oBACEG,cAAA,CAACC,0BAAe,EAAA;IAAAC,QAAA,eACdC,eAAA,CAACC,kBAAO,EAAA;AACNC,MAAAA,IAAI,EAAEX,MAAM,GAAG,KAAK,GAAGI,aAAc;AACrCQ,MAAAA,YAAY,EAAEP,gBAAiB;MAAAG,QAAA,EAAA,cAE/BF,cAAA,CAACO,yBAAc,EAAA;QAACC,OAAO,EAAA,IAAA;AAAAN,QAAAA,QAAA,eACrBF,cAAA,CAAA,MAAA,EAAA;AAAMS,UAAAA,SAAS,EAAC,aAAa;AAAAP,UAAAA,QAAA,eAC3BF,cAAA,CAACU,iBAAa,EAAAC,eAAA,CAAA;YACZC,YAAY,EAAA,IAAA;AACZjC,YAAAA,WAAW,EAAAgC,eAAA,CAAA;AACTE,cAAAA,IAAI,EAAEC,QAAQ;AACd,cAAA,aAAa,EAAE;AAAyB,aAAA,EACrCnC,WAAW,CACd;AACF2B,YAAAA,YAAY,EAAEX;AAAU,WAAA,EAAAgB,eAAA,CAAA;AAEtB7B,YAAAA,+BAA+B,EAA/BA,+BAA+B;AAC/BF,YAAAA,UAAU,EAAVA,UAAU;AACVC,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBE,YAAAA,QAAQ,EAARA;AAAQ,WAAA,EACLC,KAAK,CAAA,CAEX;SACG;AAAC,OACO,CAAC,eACjBgB,cAAA,CAACe,yBAAc,EAAA;AAACC,QAAAA,IAAI,EAAC,QAAQ;QAAAd,QAAA,EAC1Bb,CAAC,CAAC,gCAAgC;AAAC,OACtB,CAAC;KACV;AAAC,GACK,CAAC;AAEtB,CAAC;AAEDb,OAAO,CAACyC,WAAW,GAAG,SAAS;;;;;ACvD/B,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,CAAAzC,IAAA,EAKd;AAAA,EAAA,IAJJ0C,KAAK,GAAA1C,IAAA,CAAL0C,KAAK;IACLC,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IAAAC,eAAA,GAAA5C,IAAA,CACP,aAAa,CAAA;AAAE6C,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,iBAAiB,GAAAA,eAAA;IAAAE,iBAAA,GAAA9C,IAAA,CAC7C+C,YAAY;AAAZA,IAAAA,YAAY,GAAAD,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;AAEjB,EAAA,IAAApC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAQoC,OAAO,GAAoCD,YAAY,CAAvDC,OAAO;IAAEC,QAAQ,GAA0BF,YAAY,CAA9CE,QAAQ;AAAKC,IAAAA,gBAAgB,GAAA1C,wBAAA,CAAKuC,YAAY,EAAAtC,WAAA,CAAA;AAE/D,EAAA,oBACEiB,eAAA,CAAA,KAAA,EAAA;AAAKM,IAAAA,SAAS,EAAC,UAAU;AAAAP,IAAAA,QAAA,gBACvBF,cAAA,CAACI,kBAAO,EAAAO,eAAA,CAAAA,eAAA,CAAA;MACNc,OAAO,EAAEA,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,MAAA,GAAPA,OAAO,GAAIpC,CAAC,CAAC,gCAAgC,CAAE;AACxDqC,MAAAA,QAAQ,EAAEA,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAARA,QAAQ,GAAI;AAAS,KAAA,EAC3BC,gBAAgB,CAAA,EAAA,EAAA,EAAA;MAAAzB,QAAA,eAEpBF,cAAA,CAAC4B,iBAAM,EAAA;AACCR,QAAAA,OAAO,EAAPA,OAAO;AACb,QAAA,aAAA,EAAaS,mBAAS,CAACP,UAAU,CAAC,GAAGA,UAAU,GAAG,iBAAkB;AACpET,QAAAA,IAAI,EAAEiB,QAAS;AACfC,QAAAA,IAAI,EAAC,MAAM;AACXC,QAAAA,OAAO,EAAC;OACT;AAAC,KAAA,CACK,CAAC,EACTb,KAAK,iBACJnB,cAAA,CAAA,MAAA,EAAA;AAAMS,MAAAA,SAAS,EAAC,0JAA0J;AAAAP,MAAAA,QAAA,EACvKiB;AAAK,KACF,CACP;AAAA,GACE,CAAC;AAEV,CAAC;;;;;AChCD,IAAMc,YAAY,GAAGC,gBAAK,CAAC,UAAAzD,IAAA,EAAA;AAAA,EAAA,IAAGY,CAAC,GAAAZ,IAAA,CAADY,CAAC;IAAEV,WAAW,GAAAF,IAAA,CAAXE,WAAW;AAAKK,IAAAA,KAAK,GAAAC,wBAAA,CAAAR,IAAA,EAAAS,SAAA,CAAA;AAAA,EAAA,oBACpDc,cAAA,CAACmC,YAAY,EAAAxB,eAAA,CAAA;AACXhC,IAAAA,WAAW,EAAAgC,eAAA,CAAA;AACT,MAAA,aAAa,EAAE,eAAe;AAC9BE,MAAAA,IAAI,EAAEuB,MAAM;AACZJ,MAAAA,OAAO,EAAE,OAAO;AAChBR,MAAAA,YAAY,EAAE;AACZC,QAAAA,OAAO,EAAEpC,CAAC,CAAC,8BAA8B,CAAC;AAC1CqC,QAAAA,QAAQ,EAAE;OACX;AACDW,MAAAA,KAAK,EAAE;AAAI,KAAA,EACR1D,WAAW;GACd,EACEK,KAAK,CACV,CAAC;AAAA,CACH,CAAC;;;;ACVF,IAAMsD,UAAU,GAAG,SAAbA,UAAUA,CAAA7D,IAAA,EAKV;AAAA,EAAA,IAJJ8D,mBAAmB,GAAA9D,IAAA,CAAnB8D,mBAAmB;IACnBC,kBAAkB,GAAA/D,IAAA,CAAlB+D,kBAAkB;IAClBC,WAAW,GAAAhE,IAAA,CAAXgE,WAAW;IACXC,SAAS,GAAAjE,IAAA,CAATiE,SAAS;EAET,IAAMC,SAAS,GAAGC,sBAAY,CAACF,SAAS,aAATA,SAAS,KAAA,MAAA,GAAA,MAAA,GAATA,SAAS,CAAEG,UAAU,CAAC,GACjD,IAAI,GACJ,CAAAH,SAAS,KAAA,IAAA,IAATA,SAAS,uBAATA,SAAS,CAAEG,UAAU,IAAG,CAAC;AAE7B,EAAA,oBACE1C,eAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,wCAAwC;AACpDM,IAAAA,SAAS,EAAEqC,UAAU,CACnB,8CAA8C,EAC9C,mIAAmI,EACnI;MAAEC,MAAM,EAAEC,SAAG,CAACL,SAAS;AAAE,KAC3B,CAAE;AAAAzC,IAAAA,QAAA,EAAA,CAEDqC,mBAAmB,iBAAIvC,cAAA,CAAC8B,cAAQ,EAAAnB,aAAA,CAAA,EAAA,EAAK4B,mBAAmB,CAAG,CAAC,EAC5DC,kBAAkB,iBAAIxC,cAAA,CAACxB,OAAO,EAAAmC,aAAA,CAAA,EAAA,EAAK6B,kBAAkB,CAAG,CAAC,EACzDC,WAAW,iBAAIzC,cAAA,CAACoC,YAAM,EAAAzB,aAAA,CAAA,EAAA,EAAK8B,WAAW,CAAG,CAAC;AAAA,GACxC,CAAC;AAEV,CAAC;;ACzBD,IAAMQ,SAAS,GAAG,SAAZA,SAASA,CAAAxE,IAAA,EAKT;AAAA,EAAA,IAAAyE,cAAA,GAAAzE,IAAA,CAJJgC,SAAS;AAATA,IAAAA,SAAS,GAAAyC,cAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,cAAA;IACdC,eAAe,GAAA1E,IAAA,CAAf0E,eAAe;IACfC,gBAAgB,GAAA3E,IAAA,CAAhB2E,gBAAgB;IAAA/B,eAAA,GAAA5C,IAAA,CAChB,aAAa,CAAA;AAAE6C,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,WAAW,GAAAA,eAAA;AAEvC,EAAA,IAAMgC,YAAY,GAAGC,YAAM,CAAC,IAAI,CAAC;AAEjCC,EAAAA,qBAAe,CAAC,YAAM;AACpB,IAAA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAC/B,MAAA,IAAI,CAACH,YAAY,CAACI,OAAO,EAAE;AAC3B,MAAA,IAAMC,MAAM,GAAGL,YAAY,CAACI,OAAO,CAACE,YAAY;AAChDC,MAAAA,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACC,WAAW,CAAC,uBAAuB,EAAA,EAAA,CAAAC,MAAA,CAAKN,MAAM,OAAI,CAAC;IACzE,CAAC;AAEDF,IAAAA,kBAAkB,EAAE;AAEpBS,IAAAA,MAAM,CAACC,gBAAgB,CAAC,QAAQ,EAAEV,kBAAkB,CAAC;AAErD,IAAA,OAAO,YAAM;AACXS,MAAAA,MAAM,CAACE,mBAAmB,CAAC,QAAQ,EAAEX,kBAAkB,CAAC;MACxDI,QAAQ,CAACC,IAAI,CAACC,KAAK,CAACM,cAAc,CAAC,uBAAuB,CAAC;IAC7D,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;AAEN,EAAA,oBACEjE,eAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAa0B,mBAAS,CAACP,UAAU,CAAC,GAAGA,UAAU,GAAG,WAAY;AAC9D+C,IAAAA,GAAG,EAAEhB,YAAa;AAClB5C,IAAAA,SAAS,EAAEqC,UAAU,CACnB,gGAAgG,EAChGrC,SACF,CAAE;AAAAP,IAAAA,QAAA,gBAEFF,cAAA,CAAA,KAAA,EAAA;AAAKS,MAAAA,SAAS,EAAC,WAAW;AAAC,MAAA,aAAA,EAAY,wBAAwB;MAAAP,QAAA,EAC5DiD,eAAe,iBACdnD,cAAA,CAAA,KAAA,EAAA;AACES,QAAAA,SAAS,EAAC,0CAA0C;AACpD,QAAA,aAAA,EAAY,gBAAgB;AAAAP,QAAAA,QAAA,EAE3BiD;OACE;AACN,KACE,CAAC,EACLC,gBAAgB,iBACfpD,cAAA,CAAA,KAAA,EAAA;AACES,MAAAA,SAAS,EAAC,8DAA8D;AACxE,MAAA,aAAA,EAAY,iBAAiB;AAAAP,MAAAA,QAAA,EAE5BkD;AAAgB,KACd,CACN;AAAA,GACE,CAAC;AAEV;AAEAH,SAAS,CAACX,UAAU,GAAGA,UAAU;;;;","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"SubHeader.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/columns-3.js","../../../node_modules/lucide-react/dist/esm/icons/funnel.js","../../../src/v2/components/SubHeader/RightBlock/Columns.jsx","../../../src/v2/components/SubHeader/RightBlock/Download.jsx","../../../src/v2/components/SubHeader/RightBlock/Filter.jsx","../../../src/v2/components/SubHeader/RightBlock/index.jsx","../../../src/v2/components/SubHeader/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: \"18\", x: \"3\", y: \"3\", rx: \"2\", key: \"afitv7\" }],\n [\"path\", { d: \"M9 3v18\", key: \"fh3hqa\" }],\n [\"path\", { d: \"M15 3v18\", key: \"14nvp0\" }]\n];\nconst Columns3 = createLucideIcon(\"columns-3\", __iconNode);\n\nexport { __iconNode, Columns3 as default };\n//# sourceMappingURL=columns-3.js.map\n","/**\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 [\n \"path\",\n {\n d: \"M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z\",\n key: \"sc7q7i\"\n }\n ]\n];\nconst Funnel = createLucideIcon(\"funnel\", __iconNode);\n\nexport { __iconNode, Funnel as default };\n//# sourceMappingURL=funnel.js.map\n","import { useState } from \"react\";\n\nimport {\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@bigbinary/neeto-atoms/primitives\";\nimport { Columns3 } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageColumns from \"../../Columns\";\n\nconst Columns = ({\n buttonProps = {},\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n tableKey,\n ...props\n}) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useState(false);\n const [isTooltipOpen, setIsTooltipOpen] = useState(false);\n\n return (\n <TooltipProvider>\n <Tooltip\n open={isOpen ? false : isTooltipOpen}\n onOpenChange={setIsTooltipOpen}\n >\n <TooltipTrigger asChild>\n <span className=\"inline-flex\">\n <ManageColumns\n isSearchable\n buttonProps={{\n icon: Columns3,\n \"data-testid\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n onOpenChange={setIsOpen}\n {...{\n allowConfigurationResetOnUpdate,\n columnData,\n onMutationSuccess,\n tableKey,\n ...props,\n }}\n />\n </span>\n </TooltipTrigger>\n <TooltipContent side=\"bottom\">\n {t(\"neetoMolecules.columns.columns\")}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n );\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { Download } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nconst DownloadButton = ({\n count,\n onClick,\n \"data-testid\": dataTestid = \"download-button\",\n tooltipProps = {},\n}) => {\n const { t } = useTranslation();\n const { content, position, ...restTooltipProps } = tooltipProps;\n\n return (\n <div className=\"relative\">\n <Tooltip\n content={content ?? t(\"neetoMolecules.common.download\")}\n position={position ?? \"bottom\"}\n {...restTooltipProps}\n >\n <Button\n {...{ onClick }}\n data-testid={isPresent(dataTestid) ? dataTestid : \"download-button\"}\n icon={Download}\n size=\"icon\"\n variant=\"ghost\"\n />\n </Tooltip>\n {count && (\n <span className=\"bg-primary text-primary-foreground absolute -end-0.5 -top-0.5 z-[1] inline-flex min-h-4 min-w-4 items-center justify-center rounded-full text-[0.625rem]\">\n {count}\n </span>\n )}\n </div>\n );\n};\n\nexport default DownloadButton;\n","import { Filter } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters/v2\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n variant: \"ghost\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\n \"flex flex-row items-center justify-end gap-2\",\n \"[&>:not([hidden])~:not([hidden])]:border-border [&>:not([hidden])~:not([hidden])]:border-s [&>:not([hidden])~:not([hidden])]:ps-2\",\n { hidden: not(showIcons) }\n )}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n tooltipProps: PropTypes.object,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n actionBlock: PropTypes.node,\n tableKey: PropTypes.string,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n onMutationSuccess: PropTypes.func,\n allowConfigurationResetOnUpdate: PropTypes.bool,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-testid\": dataTestid = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\"--nv-subheader-height\", `${height}px`);\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => {\n window.removeEventListener(\"resize\", updateHeaderHeight);\n document.body.style.removeProperty(\"--nv-subheader-height\");\n };\n }, []);\n\n return (\n <div\n data-testid={isPresent(dataTestid) ? dataTestid : \"subheader\"}\n ref={subheaderRef}\n className={classnames(\n \"mb-5 flex w-full shrink-0 flex-row flex-wrap items-center justify-between gap-4 md:flex-nowrap\",\n className\n )}\n >\n <div className=\"flex grow\" data-testid=\"subheader-left-wrapper\">\n {leftActionBlock && (\n <div\n className=\"flex flex-row items-center justify-start\"\n data-testid=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"ms-auto flex flex-row items-center justify-end gap-3 md:ms-0\"\n data-testid=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["__iconNode","createLucideIcon","Columns","_ref","_ref$buttonProps","buttonProps","columnData","onMutationSuccess","allowConfigurationResetOnUpdate","tableKey","props","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","_useState3","_useState4","isTooltipOpen","setIsTooltipOpen","_jsx","TooltipProvider","children","_jsxs","Tooltip","open","onOpenChange","TooltipTrigger","asChild","className","ManageColumns","_objectSpread","isSearchable","icon","Columns3","TooltipContent","side","displayName","DownloadButton","count","onClick","_ref$dataTestid","dataTestid","_ref$tooltipProps","tooltipProps","content","position","restTooltipProps","Button","isPresent","Download","size","variant","FilterButton","withT","NeetoFilters","Filter","label","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","style","setProperty","concat","window","addEventListener","removeEventListener","removeProperty","ref"],"mappings":"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","x_google_ignoreList":[0,1]}
@@ -0,0 +1,19 @@
1
+ import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
2
+
3
+ /**
4
+ * @license lucide-react v1.7.0 - ISC
5
+ *
6
+ * This source code is licensed under the ISC license.
7
+ * See the LICENSE file in the root directory of this source tree.
8
+ */
9
+
10
+
11
+ const __iconNode = [
12
+ ["path", { d: "M12 15V3", key: "m9g1x1" }],
13
+ ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
14
+ ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
15
+ ];
16
+ const Download = createLucideIcon("download", __iconNode);
17
+
18
+ export { Download as D };
19
+ //# sourceMappingURL=download-CZ7Q6k7-.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"download-CZ7Q6k7-.js","sources":["../node_modules/lucide-react/dist/esm/icons/download.js"],"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 [\"path\", { d: \"M12 15V3\", key: \"m9g1x1\" }],\n [\"path\", { d: \"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\", key: \"ih7n3h\" }],\n [\"path\", { d: \"m7 10 5 5 5-5\", key: \"brsn70\" }]\n];\nconst Download = createLucideIcon(\"download\", __iconNode);\n\nexport { __iconNode, Download as default };\n//# sourceMappingURL=download.js.map\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC5C,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,2CAA2C,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC7E,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,EAAE;AAChD,CAAC;AACI,MAAC,QAAQ,GAAG,gBAAgB,CAAC,UAAU,EAAE,UAAU;;;;","x_google_ignoreList":[0]}
@@ -0,0 +1,22 @@
1
+ import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
2
+
3
+ /**
4
+ * @license lucide-react v1.7.0 - ISC
5
+ *
6
+ * This source code is licensed under the ISC license.
7
+ * See the LICENSE file in the root directory of this source tree.
8
+ */
9
+
10
+
11
+ const __iconNode = [
12
+ ["circle", { cx: "9", cy: "12", r: "1", key: "1vctgf" }],
13
+ ["circle", { cx: "9", cy: "5", r: "1", key: "hp0tcf" }],
14
+ ["circle", { cx: "9", cy: "19", r: "1", key: "fkjjf6" }],
15
+ ["circle", { cx: "15", cy: "12", r: "1", key: "1tmaij" }],
16
+ ["circle", { cx: "15", cy: "5", r: "1", key: "19l28e" }],
17
+ ["circle", { cx: "15", cy: "19", r: "1", key: "f4zoj3" }]
18
+ ];
19
+ const GripVertical = createLucideIcon("grip-vertical", __iconNode);
20
+
21
+ export { GripVertical as G };
22
+ //# sourceMappingURL=grip-vertical-FEAaqOeC.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grip-vertical-FEAaqOeC.js","sources":["../node_modules/lucide-react/dist/esm/icons/grip-vertical.js"],"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 [\"circle\", { cx: \"9\", cy: \"12\", r: \"1\", key: \"1vctgf\" }],\n [\"circle\", { cx: \"9\", cy: \"5\", r: \"1\", key: \"hp0tcf\" }],\n [\"circle\", { cx: \"9\", cy: \"19\", r: \"1\", key: \"fkjjf6\" }],\n [\"circle\", { cx: \"15\", cy: \"12\", r: \"1\", key: \"1tmaij\" }],\n [\"circle\", { cx: \"15\", cy: \"5\", r: \"1\", key: \"19l28e\" }],\n [\"circle\", { cx: \"15\", cy: \"19\", r: \"1\", key: \"f4zoj3\" }]\n];\nconst GripVertical = createLucideIcon(\"grip-vertical\", __iconNode);\n\nexport { __iconNode, GripVertical as default };\n//# sourceMappingURL=grip-vertical.js.map\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AACzD,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC3D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC1D,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE;AAC1D,CAAC;AACI,MAAC,YAAY,GAAG,gBAAgB,CAAC,eAAe,EAAE,UAAU;;;;","x_google_ignoreList":[0]}