@bigbinary/neeto-molecules 1.3.9 → 1.3.11

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 (119) hide show
  1. package/dist/NavigationHeader.js +6 -6
  2. package/dist/NavigationHeader.js.map +1 -1
  3. package/dist/PublishBlock.js +1 -1
  4. package/dist/PublishBlock.js.map +1 -1
  5. package/dist/cjs/Breadcrumbs.js +51 -0
  6. package/dist/cjs/Breadcrumbs.js.map +1 -0
  7. package/dist/cjs/BrowserSupport.js +426 -0
  8. package/dist/cjs/BrowserSupport.js.map +1 -0
  9. package/dist/cjs/Builder.js +712 -0
  10. package/dist/cjs/Builder.js.map +1 -0
  11. package/dist/cjs/CalendarView.js +549 -0
  12. package/dist/cjs/CalendarView.js.map +1 -0
  13. package/dist/cjs/Codeblock.js +251 -0
  14. package/dist/cjs/Codeblock.js.map +1 -0
  15. package/dist/cjs/Columns.js +248 -0
  16. package/dist/cjs/Columns.js.map +1 -0
  17. package/dist/cjs/ConfirmationModal.js +120 -0
  18. package/dist/cjs/ConfirmationModal.js.map +1 -0
  19. package/dist/cjs/Container.js +1218 -0
  20. package/dist/cjs/Container.js.map +1 -0
  21. package/dist/cjs/CopyToClipboardButton.js +215 -0
  22. package/dist/cjs/CopyToClipboardButton.js.map +1 -0
  23. package/dist/cjs/CustomDomain.js +743 -0
  24. package/dist/cjs/CustomDomain.js.map +1 -0
  25. package/dist/cjs/CustomDomainDashboard.js +2348 -0
  26. package/dist/cjs/CustomDomainDashboard.js.map +1 -0
  27. package/dist/cjs/DateFormat.js +53 -0
  28. package/dist/cjs/DateFormat.js.map +1 -0
  29. package/dist/cjs/DateRangeFilter.js +236 -0
  30. package/dist/cjs/DateRangeFilter.js.map +1 -0
  31. package/dist/cjs/DocumentEditor.js +283 -0
  32. package/dist/cjs/DocumentEditor.js.map +1 -0
  33. package/dist/cjs/DownloadMobileAppCallout.js +45 -0
  34. package/dist/cjs/DownloadMobileAppCallout.js.map +1 -0
  35. package/dist/cjs/DynamicVariables.js +189 -0
  36. package/dist/cjs/DynamicVariables.js.map +1 -0
  37. package/dist/cjs/EmailForm.js +2057 -0
  38. package/dist/cjs/EmailForm.js.map +1 -0
  39. package/dist/cjs/EmailPreview.js +1319 -0
  40. package/dist/cjs/EmailPreview.js.map +1 -0
  41. package/dist/cjs/ErrorPage.js +188 -0
  42. package/dist/cjs/ErrorPage.js.map +1 -0
  43. package/dist/cjs/Header.js +179 -0
  44. package/dist/cjs/Header.js.map +1 -0
  45. package/dist/cjs/IconPicker.js +324 -0
  46. package/dist/cjs/IconPicker.js.map +1 -0
  47. package/dist/cjs/ImageWithFallback.js +188 -0
  48. package/dist/cjs/ImageWithFallback.js.map +1 -0
  49. package/dist/cjs/InlineInput.js +734 -0
  50. package/dist/cjs/InlineInput.js.map +1 -0
  51. package/dist/cjs/IntegrationCard.js +400 -0
  52. package/dist/cjs/IntegrationCard.js.map +1 -0
  53. package/dist/cjs/IntegrationDisconnectAlert.js +89 -0
  54. package/dist/cjs/IntegrationDisconnectAlert.js.map +1 -0
  55. package/dist/cjs/IntegrationWalkthroughModal.js +50 -0
  56. package/dist/cjs/IntegrationWalkthroughModal.js.map +1 -0
  57. package/dist/cjs/IpRestriction.js +683 -0
  58. package/dist/cjs/IpRestriction.js.map +1 -0
  59. package/dist/cjs/KeyboardShortcuts.js +370 -0
  60. package/dist/cjs/KeyboardShortcuts.js.map +1 -0
  61. package/dist/cjs/LoginPage.js +620 -0
  62. package/dist/cjs/LoginPage.js.map +1 -0
  63. package/dist/cjs/MenuBar.js +1468 -0
  64. package/dist/cjs/MenuBar.js.map +1 -0
  65. package/dist/cjs/Metadata.js +215 -0
  66. package/dist/cjs/Metadata.js.map +1 -0
  67. package/dist/cjs/MoreDropdown.js +210 -0
  68. package/dist/cjs/MoreDropdown.js.map +1 -0
  69. package/dist/cjs/NavigationHeader.js +867 -0
  70. package/dist/cjs/NavigationHeader.js.map +1 -0
  71. package/dist/cjs/NeetoWidget.js +1078 -0
  72. package/dist/cjs/NeetoWidget.js.map +1 -0
  73. package/dist/cjs/PageLoader.js +159 -0
  74. package/dist/cjs/PageLoader.js.map +1 -0
  75. package/dist/cjs/PhoneNumber.js +492 -0
  76. package/dist/cjs/PhoneNumber.js.map +1 -0
  77. package/dist/cjs/PublishBlock.js +165 -0
  78. package/dist/cjs/PublishBlock.js.map +1 -0
  79. package/dist/cjs/PublishYourItem.js +1239 -0
  80. package/dist/cjs/PublishYourItem.js.map +1 -0
  81. package/dist/cjs/Rename.js +625 -0
  82. package/dist/cjs/Rename.js.map +1 -0
  83. package/dist/cjs/ResponsiveDevicePicker.js +200 -0
  84. package/dist/cjs/ResponsiveDevicePicker.js.map +1 -0
  85. package/dist/cjs/Schedule.js +1130 -0
  86. package/dist/cjs/Schedule.js.map +1 -0
  87. package/dist/cjs/Scrollable.js +129 -0
  88. package/dist/cjs/Scrollable.js.map +1 -0
  89. package/dist/cjs/Search.js +217 -0
  90. package/dist/cjs/Search.js.map +1 -0
  91. package/dist/cjs/Security.js +1930 -0
  92. package/dist/cjs/Security.js.map +1 -0
  93. package/dist/cjs/SendToFields.js +353 -0
  94. package/dist/cjs/SendToFields.js.map +1 -0
  95. package/dist/cjs/Settings.js +492 -0
  96. package/dist/cjs/Settings.js.map +1 -0
  97. package/dist/cjs/ShareViaEmail.js +2005 -0
  98. package/dist/cjs/ShareViaEmail.js.map +1 -0
  99. package/dist/cjs/ShareViaLink.js +729 -0
  100. package/dist/cjs/ShareViaLink.js.map +1 -0
  101. package/dist/cjs/Sidebar.js +930 -0
  102. package/dist/cjs/Sidebar.js.map +1 -0
  103. package/dist/cjs/SubHeader.js +224 -0
  104. package/dist/cjs/SubHeader.js.map +1 -0
  105. package/dist/cjs/SuffixedInput.js +216 -0
  106. package/dist/cjs/SuffixedInput.js.map +1 -0
  107. package/dist/cjs/TableWrapper.js +33 -0
  108. package/dist/cjs/TableWrapper.js.map +1 -0
  109. package/dist/cjs/Taxonomy.js +2125 -0
  110. package/dist/cjs/Taxonomy.js.map +1 -0
  111. package/dist/cjs/ThemeSidebar.js +2052 -0
  112. package/dist/cjs/ThemeSidebar.js.map +1 -0
  113. package/dist/cjs/TimeFormat.js +55 -0
  114. package/dist/cjs/TimeFormat.js.map +1 -0
  115. package/dist/cjs/TimezoneMismatchModal.js +176 -0
  116. package/dist/cjs/TimezoneMismatchModal.js.map +1 -0
  117. package/dist/cjs/ToggleFeatureCard.js +330 -0
  118. package/dist/cjs/ToggleFeatureCard.js.map +1 -0
  119. package/package.json +2 -1
@@ -0,0 +1,867 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var neetoCist = require('@bigbinary/neeto-cist');
5
+ var ramda = require('ramda');
6
+ var neetoui = require('@bigbinary/neetoui');
7
+ var reactRouterDom = require('react-router-dom');
8
+ var classnames = require('classnames');
9
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
10
+ var utils = require('@bigbinary/neeto-commons-frontend/utils');
11
+ var neetoIcons = require('@bigbinary/neeto-icons');
12
+ var i18next = require('i18next');
13
+ var reactI18next = require('react-i18next');
14
+
15
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
16
+
17
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
18
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
19
+
20
+ function _extends() {
21
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
22
+ for (var i = 1; i < arguments.length; i++) {
23
+ var source = arguments[i];
24
+ for (var key in source) {
25
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
26
+ target[key] = source[key];
27
+ }
28
+ }
29
+ }
30
+ return target;
31
+ };
32
+ return _extends.apply(this, arguments);
33
+ }
34
+
35
+ function _arrayWithHoles(arr) {
36
+ if (Array.isArray(arr)) return arr;
37
+ }
38
+
39
+ function _iterableToArrayLimit(r, l) {
40
+ var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
41
+ if (null != t) {
42
+ var e,
43
+ n,
44
+ i,
45
+ u,
46
+ a = [],
47
+ f = !0,
48
+ o = !1;
49
+ try {
50
+ if (i = (t = t.call(r)).next, 0 === l) {
51
+ if (Object(t) !== t) return;
52
+ f = !1;
53
+ } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);
54
+ } catch (r) {
55
+ o = !0, n = r;
56
+ } finally {
57
+ try {
58
+ if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return;
59
+ } finally {
60
+ if (o) throw n;
61
+ }
62
+ }
63
+ return a;
64
+ }
65
+ }
66
+
67
+ function _arrayLikeToArray(arr, len) {
68
+ if (len == null || len > arr.length) len = arr.length;
69
+ for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
70
+ return arr2;
71
+ }
72
+
73
+ function _unsupportedIterableToArray(o, minLen) {
74
+ if (!o) return;
75
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
76
+ var n = Object.prototype.toString.call(o).slice(8, -1);
77
+ if (n === "Object" && o.constructor) n = o.constructor.name;
78
+ if (n === "Map" || n === "Set") return Array.from(o);
79
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
80
+ }
81
+
82
+ function _nonIterableRest() {
83
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
84
+ }
85
+
86
+ function _slicedToArray(arr, i) {
87
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
88
+ }
89
+
90
+ var e=[],t=[];function n(n,r){if(n&&"undefined"!=typeof document){var a,s=!0===r.prepend?"prepend":"append",d=!0===r.singleTag,i="string"==typeof r.container?document.querySelector(r.container):document.getElementsByTagName("head")[0];if(d){var u=e.indexOf(i);-1===u&&(u=e.push(i)-1,t[u]={}),a=t[u]&&t[u][s]?t[u][s]:t[u][s]=c();}else a=c();65279===n.charCodeAt(0)&&(n=n.substring(1)),a.styleSheet?a.styleSheet.cssText+=n:a.appendChild(document.createTextNode(n));}function c(){var e=document.createElement("style");if(e.setAttribute("type","text/css"),r.attributes)for(var t=Object.keys(r.attributes),n=0;n<t.length;n++)e.setAttribute(t[n],r.attributes[t[n]]);var a="prepend"===s?"afterbegin":"beforeend";return i.insertAdjacentElement(a,e),e}}
91
+
92
+ var css$3 = ".neeto-molecules-breadcrumbs-wrap{display:flex}@media screen and (max-width:768px){.neeto-molecules-breadcrumbs-wrap{flex-wrap:wrap}}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb{align-items:center;display:flex;flex-direction:row;justify-content:flex-start;line-height:1}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb a{text-decoration:none;transition:all .3s ease-in-out}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb a:focus-visible{border-radius:var(--neeto-ui-rounded-sm);outline:3px solid rgba(var(--neeto-ui-primary-500),50%)}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb-link{color:rgb(var(--neeto-ui-gray-500));padding:8px 5px}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb-link:hover{color:rgb(var(--neeto-ui-gray-800))}.neeto-molecules-breadcrumbs-wrap .neeto-molecules-breadcrumb-separator{margin:0 4px}";
93
+ n(css$3,{});
94
+
95
+ var Breadcrumbs = function Breadcrumbs(_ref) {
96
+ var breadcrumbs = _ref.breadcrumbs,
97
+ _ref$hasTrailingSepar = _ref.hasTrailingSeparator,
98
+ hasTrailingSeparator = _ref$hasTrailingSepar === void 0 ? false : _ref$hasTrailingSepar;
99
+ return /*#__PURE__*/React__default["default"].createElement("div", {
100
+ className: "neeto-molecules-breadcrumbs-wrap"
101
+ }, breadcrumbs.map(function (_ref2, index) {
102
+ var text = _ref2.text,
103
+ _ref2$link = _ref2.link,
104
+ link = _ref2$link === void 0 ? "#" : _ref2$link;
105
+ return /*#__PURE__*/React__default["default"].createElement("div", {
106
+ className: "neeto-molecules-breadcrumb",
107
+ "data-cy": "header-breadcrumb",
108
+ key: index
109
+ }, /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, {
110
+ to: link
111
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
112
+ className: "neeto-ui-text-gray-700 hover:neeto-ui-text-gray-800 neeto-molecules-breadcrumb-link",
113
+ component: "p",
114
+ "data-cy": text,
115
+ "data-test-id": text,
116
+ style: "body2",
117
+ weight: "normal"
118
+ }, text)), (index + 1 !== breadcrumbs.length || hasTrailingSeparator) && /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
119
+ className: "neeto-molecules-breadcrumb-separator neeto-ui-text-gray-500",
120
+ component: "p",
121
+ "data-cy": "breadcrumb-divider-".concat(index),
122
+ "data-test-id": "breadcrumb-divider-".concat(index),
123
+ style: "body2",
124
+ weight: "normal"
125
+ }, "/"));
126
+ }));
127
+ };
128
+
129
+ var MIN_WIDTH = 150;
130
+
131
+ var DummySpan = function DummySpan(_ref) {
132
+ var name = _ref.name,
133
+ placeholderRef = _ref.placeholderRef,
134
+ setInputWidth = _ref.setInputWidth;
135
+ React.useEffect(function () {
136
+ var _placeholderRef$curre;
137
+ //To handle the input width on initial render.
138
+ var placeholderSpanWidth = (_placeholderRef$curre = placeholderRef.current) === null || _placeholderRef$curre === void 0 ? void 0 : _placeholderRef$curre.offsetWidth;
139
+ setInputWidth(placeholderSpanWidth);
140
+ }, [name]);
141
+ return (
142
+ /*#__PURE__*/
143
+ // Dummy element to calculate the width to be set for the input. Do not remove.
144
+ React__default["default"].createElement("div", {
145
+ className: "dummy-span pointer-events-none invisible absolute",
146
+ ref: placeholderRef
147
+ }, name.split(" ").join("."))
148
+ );
149
+ };
150
+
151
+ var mergeRefs = function mergeRefs() {
152
+ for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {
153
+ refs[_key] = arguments[_key];
154
+ }
155
+ return function (node) {
156
+ return refs.forEach(function (ref) {
157
+ return typeof ref === "function" ? ref(node) : ref.current = node;
158
+ });
159
+ };
160
+ };
161
+
162
+ var Editor = function Editor(_ref) {
163
+ var placeholder = _ref.placeholder,
164
+ inputWidth = _ref.inputWidth,
165
+ allowEmptySubmission = _ref.allowEmptySubmission,
166
+ name = _ref.name,
167
+ isLoading = _ref.isLoading,
168
+ handleRename = _ref.handleRename,
169
+ submitButtonProps = _ref.submitButtonProps,
170
+ handleClose = _ref.handleClose,
171
+ cancelButtonProps = _ref.cancelButtonProps,
172
+ setName = _ref.setName,
173
+ inputProps = _ref.inputProps,
174
+ editMode = _ref.editMode;
175
+ var closeRef = reactUtils.useHotKeys("escape", handleClose, {
176
+ mode: "scoped",
177
+ enabled: editMode
178
+ });
179
+ var submitRef = reactUtils.useHotKeys(["command+return", "return"], function (event) {
180
+ if (ramda.isEmpty(name) && !allowEmptySubmission) return;
181
+ handleRename(event, name);
182
+ }, {
183
+ mode: "scoped",
184
+ enabled: editMode
185
+ });
186
+ return /*#__PURE__*/React__default["default"].createElement("div", {
187
+ className: "flex min-w-0 max-w-full flex-grow"
188
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Input, _extends({
189
+ placeholder: placeholder,
190
+ autoFocus: true,
191
+ className: "neeto-molecules-rename__input flex-grow",
192
+ "data-cy": "form-rename-text-field",
193
+ "data-testid": "neeto-molecules-name-input",
194
+ ref: mergeRefs(closeRef, submitRef),
195
+ style: {
196
+ width: inputWidth
197
+ },
198
+ value: name,
199
+ suffix: /*#__PURE__*/React__default["default"].createElement("div", {
200
+ className: "flex items-center justify-end"
201
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
202
+ className: "neeto-ui-rounded-none",
203
+ "data-cy": "form-rename-submit-button",
204
+ "data-testid": "neeto-molecules-rename-button",
205
+ disabled: !allowEmptySubmission && ramda.isEmpty(name) || isLoading,
206
+ icon: neetoIcons.Check,
207
+ loading: isLoading,
208
+ style: "text",
209
+ onClick: function onClick(event) {
210
+ return handleRename(event, name);
211
+ }
212
+ }, submitButtonProps)), /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
213
+ className: "neeto-ui-rounded-none",
214
+ "data-cy": "form-rename-close-button",
215
+ "data-testid": "neeto-molecules-cancel-button",
216
+ disabled: isLoading,
217
+ icon: neetoIcons.Close,
218
+ style: "text",
219
+ onClick: handleClose
220
+ }, cancelButtonProps))),
221
+ onChange: utils.withEventTargetValue(setName),
222
+ onClick: function onClick(event) {
223
+ return event.stopPropagation();
224
+ }
225
+ }, inputProps)));
226
+ };
227
+
228
+ var css$2 = ".neeto-molecules-rename__input{height:32px;margin-left:4px;max-width:100%;position:relative;transition:width .2s ease-in-out;width:-moz-max-content;width:max-content}.neeto-molecules-rename__input .neeto-ui-input{border-color:transparent}.neeto-molecules-rename__input .neeto-ui-input:focus-within{border-color:rgb(var(--neeto-ui-primary-500))}.neeto-molecules-rename__input .neeto-ui-input .neeto-ui-input__suffix{margin-right:0!important}.neeto-molecules-rename__input .neeto-ui-input input{min-width:0}.neeto-molecules-rename__text{background-color:rgb(var(--neeto-ui-white));border:thin solid rgb(var(--neeto-ui-white));border-radius:var(--neeto-ui-rounded);cursor:pointer;font-size:var(--neeto-ui-text-sm);font-weight:400;letter-spacing:.005em;line-height:1;margin:0 1px;max-height:32px;max-width:448px;padding:8px 5px;transition:var(--neeto-ui-transition)}.neeto-molecules-rename__display-text{color:rgb(var(--neeto-ui-gray-800))}.neeto-molecules-rename__display-text:hover{border:thin solid rgb(var(--neeto-ui-gray-300))}.dummy-span{font-size:14px;font-weight:400;padding:5px 8px}";
229
+ n(css$2,{});
230
+
231
+ function _arrayWithoutHoles(arr) {
232
+ if (Array.isArray(arr)) return _arrayLikeToArray(arr);
233
+ }
234
+
235
+ function _iterableToArray(iter) {
236
+ if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
237
+ }
238
+
239
+ function _nonIterableSpread() {
240
+ throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
241
+ }
242
+
243
+ function _toConsumableArray(arr) {
244
+ return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
245
+ }
246
+
247
+ function _objectWithoutPropertiesLoose(source, excluded) {
248
+ if (source == null) return {};
249
+ var target = {};
250
+ var sourceKeys = Object.keys(source);
251
+ var key, i;
252
+ for (i = 0; i < sourceKeys.length; i++) {
253
+ key = sourceKeys[i];
254
+ if (excluded.indexOf(key) >= 0) continue;
255
+ target[key] = source[key];
256
+ }
257
+ return target;
258
+ }
259
+
260
+ function _objectWithoutProperties(source, excluded) {
261
+ if (source == null) return {};
262
+ var target = _objectWithoutPropertiesLoose(source, excluded);
263
+ var key, i;
264
+ if (Object.getOwnPropertySymbols) {
265
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
266
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
267
+ key = sourceSymbolKeys[i];
268
+ if (excluded.indexOf(key) >= 0) continue;
269
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
270
+ target[key] = source[key];
271
+ }
272
+ }
273
+ return target;
274
+ }
275
+
276
+ function _typeof(o) {
277
+ "@babel/helpers - typeof";
278
+
279
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
280
+ return typeof o;
281
+ } : function (o) {
282
+ return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
283
+ }, _typeof(o);
284
+ }
285
+
286
+ function _toPrimitive(input, hint) {
287
+ if (_typeof(input) !== "object" || input === null) return input;
288
+ var prim = input[Symbol.toPrimitive];
289
+ if (prim !== undefined) {
290
+ var res = prim.call(input, hint || "default");
291
+ if (_typeof(res) !== "object") return res;
292
+ throw new TypeError("@@toPrimitive must return a primitive value.");
293
+ }
294
+ return (hint === "string" ? String : Number)(input);
295
+ }
296
+
297
+ function _toPropertyKey(arg) {
298
+ var key = _toPrimitive(arg, "string");
299
+ return _typeof(key) === "symbol" ? key : String(key);
300
+ }
301
+
302
+ function _defineProperty(obj, key, value) {
303
+ key = _toPropertyKey(key);
304
+ if (key in obj) {
305
+ Object.defineProperty(obj, key, {
306
+ value: value,
307
+ enumerable: true,
308
+ configurable: true,
309
+ writable: true
310
+ });
311
+ } else {
312
+ obj[key] = value;
313
+ }
314
+ return obj;
315
+ }
316
+
317
+ var MENU_ITEM_TYPES = {
318
+ menuItem: "menuItem",
319
+ divider: "divider"
320
+ };
321
+ var DEFAULT_TOOLTIP_PROPS = {
322
+ disabled: true,
323
+ position: "bottom"
324
+ };
325
+
326
+ var _excluded$3 = ["label", "key"],
327
+ _excluded2$1 = ["isVisible", "key"];
328
+ var MenuItem$1 = neetoui.Dropdown.MenuItem,
329
+ Menu$1 = neetoui.Dropdown.Menu;
330
+ var Submenu = function Submenu(_ref) {
331
+ var label = _ref.label,
332
+ key = _ref.key,
333
+ menuItemProps = _objectWithoutProperties(_ref, _excluded$3);
334
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Dropdown, _extends({
335
+ customTarget: /*#__PURE__*/React__default["default"].createElement(MenuItem$1.Button, null, label),
336
+ key: key,
337
+ position: "left",
338
+ trigger: "hover"
339
+ }, menuItemProps.dropdownProps), /*#__PURE__*/React__default["default"].createElement(Menu$1, null, menuItemProps.menuItems.map(function (_ref2) {
340
+ var _ref2$isVisible = _ref2.isVisible,
341
+ isVisible = _ref2$isVisible === void 0 ? true : _ref2$isVisible,
342
+ key = _ref2.key,
343
+ menuItemProps = _objectWithoutProperties(_ref2, _excluded2$1);
344
+ if (!isVisible) return null;
345
+ return /*#__PURE__*/React__default["default"].createElement(MoreDropdownMenuItem, _extends({
346
+ key: key
347
+ }, menuItemProps));
348
+ })));
349
+ };
350
+
351
+ var _excluded$2 = ["onClick", "label", "type", "hasSubItems"];
352
+ 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; }
353
+ 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), !0).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; }
354
+ var MenuItem = neetoui.Dropdown.MenuItem,
355
+ Divider = neetoui.Dropdown.Divider;
356
+ var MoreDropdownMenuItem = function MoreDropdownMenuItem(_ref) {
357
+ var onClick = _ref.onClick,
358
+ label = _ref.label,
359
+ _ref$type = _ref.type,
360
+ type = _ref$type === void 0 ? MENU_ITEM_TYPES.menuItem : _ref$type,
361
+ _ref$hasSubItems = _ref.hasSubItems,
362
+ hasSubItems = _ref$hasSubItems === void 0 ? false : _ref$hasSubItems,
363
+ menuItemProps = _objectWithoutProperties(_ref, _excluded$2);
364
+ if (type === MENU_ITEM_TYPES.divider) {
365
+ return /*#__PURE__*/React__default["default"].createElement(Divider, null);
366
+ }
367
+ if (hasSubItems) {
368
+ return /*#__PURE__*/React__default["default"].createElement(Submenu, _objectSpread$1({
369
+ label: label
370
+ }, menuItemProps));
371
+ }
372
+ return /*#__PURE__*/React__default["default"].createElement(MenuItem.Button, _objectSpread$1({
373
+ onClick: onClick
374
+ }, menuItemProps), label);
375
+ };
376
+
377
+ var _excluded$1 = ["isVisible", "key"];
378
+ 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; }
379
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).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; }
380
+ var Menu = neetoui.Dropdown.Menu;
381
+ var MoreDropdown = function MoreDropdown(_ref) {
382
+ var _ref$dropdownButtonPr = _ref.dropdownButtonProps,
383
+ dropdownButtonProps = _ref$dropdownButtonPr === void 0 ? {} : _ref$dropdownButtonPr,
384
+ _ref$isVertical = _ref.isVertical,
385
+ isVertical = _ref$isVertical === void 0 ? false : _ref$isVertical,
386
+ _ref$isDisabled = _ref.isDisabled,
387
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
388
+ _ref$dropdownProps = _ref.dropdownProps,
389
+ dropdownProps = _ref$dropdownProps === void 0 ? {} : _ref$dropdownProps,
390
+ menuTopChildren = _ref.menuTopChildren,
391
+ menuBottomChildren = _ref.menuBottomChildren,
392
+ _ref$menuItems = _ref.menuItems,
393
+ menuItems = _ref$menuItems === void 0 ? [] : _ref$menuItems;
394
+ var tooltipProps = ramda.mergeRight(DEFAULT_TOOLTIP_PROPS, dropdownButtonProps.tooltipProps);
395
+ var targetIcon = isVertical ? neetoIcons.MenuVertical : neetoIcons.MenuHorizontal;
396
+ var isDropdownDisabled = isDisabled || dropdownProps.disabled;
397
+ if (isDropdownDisabled && !tooltipProps.disabled) {
398
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, tooltipProps, /*#__PURE__*/React__default["default"].createElement("span", null, /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
399
+ disabled: true,
400
+ "data-cy": "more-dropdown-button",
401
+ "data-testid": "nui-dropdown-button",
402
+ icon: targetIcon,
403
+ iconPosition: "right",
404
+ size: "medium",
405
+ style: "text"
406
+ }, dropdownButtonProps))));
407
+ }
408
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Dropdown, _extends({
409
+ autoWidth: true,
410
+ className: "flex",
411
+ disabled: isDisabled,
412
+ icon: targetIcon,
413
+ buttonProps: _objectSpread({
414
+ className: "min-h-0 flex-shrink-0",
415
+ style: "text"
416
+ }, dropdownButtonProps)
417
+ }, dropdownProps), /*#__PURE__*/React__default["default"].createElement(Menu, null, menuTopChildren, menuItems.map(function (_ref2) {
418
+ var _ref2$isVisible = _ref2.isVisible,
419
+ isVisible = _ref2$isVisible === void 0 ? true : _ref2$isVisible,
420
+ key = _ref2.key,
421
+ menuItemProps = _objectWithoutProperties(_ref2, _excluded$1);
422
+ if (!isVisible) return null;
423
+ return /*#__PURE__*/React__default["default"].createElement(MoreDropdownMenuItem, _extends({
424
+ key: key
425
+ }, menuItemProps));
426
+ }), menuBottomChildren));
427
+ };
428
+
429
+ var RenameMenu = reactUtils.withT(function (_ref) {
430
+ var t = _ref.t,
431
+ handleRenameClick = _ref.handleRenameClick,
432
+ disabled = _ref.disabled,
433
+ dropdownItems = _ref.dropdownItems,
434
+ onArchiveStatusToggle = _ref.onArchiveStatusToggle,
435
+ onClone = _ref.onClone,
436
+ onDelete = _ref.onDelete,
437
+ isArchived = _ref.isArchived;
438
+ return /*#__PURE__*/React__default["default"].createElement(MoreDropdown, {
439
+ dropdownButtonProps: {
440
+ "data-testid": "neeto-molecules-menu-button"
441
+ },
442
+ dropdownProps: {
443
+ position: "bottom-start",
444
+ onClick: function onClick(event) {
445
+ return event.stopPropagation();
446
+ },
447
+ strategy: "fixed",
448
+ appendTo: function appendTo() {
449
+ return document.body;
450
+ }
451
+ },
452
+ menuItems: [{
453
+ "data-cy": "form-rename-button",
454
+ onClick: handleRenameClick,
455
+ label: t("neetoMolecules.common.actions.rename"),
456
+ isVisible: !disabled,
457
+ key: "edit-name-menu"
458
+ }, {
459
+ "data-cy": "form-clone-button",
460
+ onClick: onClone,
461
+ label: t("neetoMolecules.common.actions.clone"),
462
+ isVisible: neetoCist.isPresent(onClone),
463
+ key: "clone-entity-menu"
464
+ }, {
465
+ "data-cy": "form-archive-button",
466
+ onClick: onArchiveStatusToggle,
467
+ label: isArchived ? t("neetoMolecules.common.actions.unArchive") : t("neetoMolecules.common.actions.archive"),
468
+ isVisible: neetoCist.isPresent(onArchiveStatusToggle),
469
+ key: "archive-entity-menu"
470
+ }, {
471
+ "data-cy": "form-delete-button",
472
+ onClick: onDelete,
473
+ label: t("neetoMolecules.common.actions.delete"),
474
+ isVisible: neetoCist.isPresent(onDelete),
475
+ key: "delete-entity-menu"
476
+ }].concat(_toConsumableArray(dropdownItems))
477
+ });
478
+ });
479
+
480
+ var ViewName = function ViewName(_ref) {
481
+ var disabled = _ref.disabled,
482
+ textProps = _ref.textProps,
483
+ formatText = _ref.formatText,
484
+ dropdownItems = _ref.dropdownItems,
485
+ hideMenu = _ref.hideMenu,
486
+ handleRenameClick = _ref.handleRenameClick,
487
+ onArchiveStatusToggle = _ref.onArchiveStatusToggle,
488
+ onClone = _ref.onClone,
489
+ onDelete = _ref.onDelete,
490
+ name = _ref.name,
491
+ isArchived = _ref.isArchived;
492
+ var isDefaultMenuCallbacksPresent = neetoCist.isPresent(onArchiveStatusToggle) || neetoCist.isPresent(onDelete) || neetoCist.isPresent(onClone);
493
+ var isMenuVisible = !hideMenu && (neetoCist.isNotEmpty(dropdownItems) || !disabled || isDefaultMenuCallbacksPresent);
494
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, _extends({
495
+ component: "p",
496
+ "data-cy": "form-title",
497
+ "data-testid": "neeto-molecules-value-display",
498
+ style: "body2",
499
+ className: classnames__default["default"]("neeto-molecules-rename__text neeto-molecules-rename__display-text w-full truncate", {
500
+ "cursor-pointer": !disabled,
501
+ "pointer-events-none cursor-text": disabled
502
+ }),
503
+ onClick: handleRenameClick
504
+ }, textProps), typeof formatText === "function" ? formatText(name) : name), isMenuVisible && /*#__PURE__*/React__default["default"].createElement(RenameMenu, {
505
+ disabled: disabled,
506
+ dropdownItems: dropdownItems,
507
+ handleRenameClick: handleRenameClick,
508
+ isArchived: isArchived,
509
+ onArchiveStatusToggle: onArchiveStatusToggle,
510
+ onClone: onClone,
511
+ onDelete: onDelete
512
+ }));
513
+ };
514
+
515
+ var Rename = function Rename(_ref) {
516
+ var value = _ref.value,
517
+ onRename = _ref.onRename,
518
+ onClone = _ref.onClone,
519
+ onArchiveStatusToggle = _ref.onArchiveStatusToggle,
520
+ onDelete = _ref.onDelete,
521
+ isArchived = _ref.isArchived,
522
+ _ref$isOpen = _ref.isOpen,
523
+ isOpen = _ref$isOpen === void 0 ? false : _ref$isOpen,
524
+ _ref$isLoading = _ref.isLoading,
525
+ isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
526
+ _ref$placeholder = _ref.placeholder,
527
+ placeholder = _ref$placeholder === void 0 ? "" : _ref$placeholder,
528
+ _ref$hideMenu = _ref.hideMenu,
529
+ hideMenu = _ref$hideMenu === void 0 ? false : _ref$hideMenu,
530
+ _ref$disabled = _ref.disabled,
531
+ disabled = _ref$disabled === void 0 ? false : _ref$disabled,
532
+ _ref$dropdownItems = _ref.dropdownItems,
533
+ dropdownItems = _ref$dropdownItems === void 0 ? [] : _ref$dropdownItems,
534
+ _ref$breadcrumbs = _ref.breadcrumbs,
535
+ breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
536
+ _ref$textProps = _ref.textProps,
537
+ textProps = _ref$textProps === void 0 ? {} : _ref$textProps,
538
+ _ref$inputProps = _ref.inputProps,
539
+ inputProps = _ref$inputProps === void 0 ? {} : _ref$inputProps,
540
+ _ref$submitButtonProp = _ref.submitButtonProps,
541
+ submitButtonProps = _ref$submitButtonProp === void 0 ? {} : _ref$submitButtonProp,
542
+ _ref$cancelButtonProp = _ref.cancelButtonProps,
543
+ cancelButtonProps = _ref$cancelButtonProp === void 0 ? {} : _ref$cancelButtonProp,
544
+ _ref$className = _ref.className,
545
+ className = _ref$className === void 0 ? "" : _ref$className,
546
+ _ref$allowEmptySubmis = _ref.allowEmptySubmission,
547
+ allowEmptySubmission = _ref$allowEmptySubmis === void 0 ? false : _ref$allowEmptySubmis,
548
+ _ref$defaultName = _ref.defaultName,
549
+ defaultName = _ref$defaultName === void 0 ? "" : _ref$defaultName,
550
+ formatText = _ref.formatText;
551
+ var _useStateWithDependen = reactUtils.useStateWithDependency(value !== null && value !== void 0 ? value : ""),
552
+ _useStateWithDependen2 = _slicedToArray(_useStateWithDependen, 2),
553
+ name = _useStateWithDependen2[0],
554
+ setName = _useStateWithDependen2[1];
555
+ var _useState = React.useState(isOpen),
556
+ _useState2 = _slicedToArray(_useState, 2),
557
+ editMode = _useState2[0],
558
+ setEditMode = _useState2[1];
559
+ var _useState3 = React.useState(MIN_WIDTH),
560
+ _useState4 = _slicedToArray(_useState3, 2),
561
+ inputWidth = _useState4[0],
562
+ setInputWidth = _useState4[1];
563
+ var renameRef = React.useRef(null);
564
+ var placeholderRef = React.useRef(null);
565
+ reactUtils.useOnClickOutside(renameRef, function () {
566
+ return editMode && handleClose();
567
+ });
568
+ var handleRename = function handleRename(event, name) {
569
+ event.stopPropagation();
570
+ var newName = allowEmptySubmission && ramda.isEmpty(name) ? defaultName : name;
571
+ setName(newName);
572
+ onRename === null || onRename === void 0 ? void 0 : onRename(newName);
573
+ setEditMode(false);
574
+ };
575
+ var handleClose = function handleClose(event) {
576
+ event === null || event === void 0 ? void 0 : event.stopPropagation();
577
+ setName(value);
578
+ setEditMode(false);
579
+ };
580
+ var handleRenameClick = function handleRenameClick(event) {
581
+ event.stopPropagation();
582
+ !disabled && setEditMode(true);
583
+ };
584
+ var editNameProps = {
585
+ allowEmptySubmission: allowEmptySubmission,
586
+ cancelButtonProps: cancelButtonProps,
587
+ handleClose: handleClose,
588
+ handleRename: handleRename,
589
+ inputProps: inputProps,
590
+ inputWidth: inputWidth,
591
+ isLoading: isLoading,
592
+ name: name,
593
+ placeholder: placeholder,
594
+ setName: setName,
595
+ submitButtonProps: submitButtonProps,
596
+ editMode: editMode
597
+ };
598
+ var viewNameProps = {
599
+ disabled: disabled,
600
+ dropdownItems: dropdownItems,
601
+ formatText: formatText,
602
+ handleRenameClick: handleRenameClick,
603
+ hideMenu: hideMenu,
604
+ name: name,
605
+ isArchived: isArchived,
606
+ onArchiveStatusToggle: onArchiveStatusToggle,
607
+ onClone: onClone,
608
+ onDelete: onDelete,
609
+ textProps: textProps
610
+ };
611
+ return /*#__PURE__*/React__default["default"].createElement("div", {
612
+ ref: renameRef,
613
+ className: classnames__default["default"]("flex min-w-0 max-w-md flex-col items-start md:flex-row md:items-center", className)
614
+ }, neetoCist.isNotEmpty(breadcrumbs) && /*#__PURE__*/React__default["default"].createElement(Breadcrumbs, {
615
+ breadcrumbs: breadcrumbs,
616
+ hasTrailingSeparator: true
617
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
618
+ className: "flex items-center gap-x-2"
619
+ }, /*#__PURE__*/React__default["default"].createElement(DummySpan, {
620
+ name: name,
621
+ placeholderRef: placeholderRef,
622
+ setInputWidth: setInputWidth
623
+ }), editMode ? /*#__PURE__*/React__default["default"].createElement(Editor, editNameProps) : /*#__PURE__*/React__default["default"].createElement(ViewName, viewNameProps)));
624
+ };
625
+
626
+ var DEFAULT_HOME_BUTTON_PROPS = {
627
+ tooltip: {
628
+ content: i18next.t("neetoMolecules.navigationHeader.home"),
629
+ position: "bottom"
630
+ },
631
+ homeUrl: "/",
632
+ icon: /*#__PURE__*/React__default["default"].createElement(neetoIcons.Home, null)
633
+ };
634
+
635
+ var LeftBlock = function LeftBlock(_ref) {
636
+ var customHomeButtonProps = _ref.homeButtonProps,
637
+ homeUrl = _ref.homeUrl,
638
+ renameProps = _ref.renameProps,
639
+ children = _ref.children;
640
+ var homeButtonProps = ramda.mergeDeepRight(DEFAULT_HOME_BUTTON_PROPS, customHomeButtonProps);
641
+ return /*#__PURE__*/React__default["default"].createElement("div", {
642
+ className: "flex items-center gap-1 md:gap-2",
643
+ "data-testid": "navigation-header-left-block"
644
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Tooltip, {
645
+ content: homeButtonProps.tooltip.content,
646
+ position: homeButtonProps.tooltip.position
647
+ }, /*#__PURE__*/React__default["default"].createElement(reactRouterDom.Link, {
648
+ "data-cy": "home-button",
649
+ "data-testid": "home-button",
650
+ to: homeUrl
651
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
652
+ className: "neeto-ui-rounded hover:neeto-ui-bg-gray-200 p-1"
653
+ }, homeButtonProps.icon))), neetoCist.isPresent(renameProps) && /*#__PURE__*/React__default["default"].createElement(Rename, _extends({
654
+ dropdownItems: renameProps.dropdownItems,
655
+ value: renameProps.value
656
+ }, renameProps)), children);
657
+ };
658
+
659
+ var NavigationLinks = function NavigationLinks(_ref) {
660
+ var headerLinks = _ref.headerLinks;
661
+ return /*#__PURE__*/React__default["default"].createElement("div", {
662
+ className: "flex w-full items-center justify-center gap-2 md:gap-3 lg:gap-6",
663
+ "data-testid": "navigation-header-navigation-links"
664
+ }, headerLinks.map(function (headerLink) {
665
+ return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.NavLink, _extends({
666
+ activeClassName: "active",
667
+ className: "neeto-molecules-navigation-header__link capitalize no-underline",
668
+ "data-cy": "".concat(utils.joinHyphenCase(headerLink.key), "-tab"),
669
+ key: headerLink.key
670
+ }, headerLink), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
671
+ lineHeight: "normal",
672
+ style: "h4",
673
+ weight: "semibold"
674
+ }, headerLink.label));
675
+ }));
676
+ };
677
+
678
+ var AlertBlock = function AlertBlock(props) {
679
+ var _useTranslation = reactI18next.useTranslation(),
680
+ t = _useTranslation.t;
681
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Alert, _extends({
682
+ "data-cy": "reset-alert",
683
+ "data-testid": "reset-alert",
684
+ submitButtonLabel: t("neetoMolecules.common.actions.reset")
685
+ }, props));
686
+ };
687
+
688
+ var css$1 = ".neeto-molecules-publish-block{align-items:center;display:flex;gap:12px;justify-content:flex-end}.neeto-molecules-publish-block__action-btn{align-items:center;display:inline-flex;flex-direction:row;gap:1px;justify-content:center}.neeto-molecules-publish-block__action-btn>.neeto-ui-btn:first-child{border-bottom-right-radius:0;border-top-right-radius:0}.neeto-molecules-publish-block__action-btn>.neeto-ui-btn:last-child{border-bottom-left-radius:0;border-top-left-radius:0}";
689
+ n(css$1,{});
690
+
691
+ var _excluded = ["t"],
692
+ _excluded2 = ["t"],
693
+ _excluded3 = ["t"],
694
+ _excluded4 = ["t"];
695
+ var ViewDraftButton = reactUtils.withT(function (_ref) {
696
+ var t = _ref.t,
697
+ props = _objectWithoutProperties(_ref, _excluded);
698
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
699
+ "data-cy": "view-draft-button",
700
+ "data-testid": "view-draft-button",
701
+ icon: neetoIcons.ExternalLink,
702
+ style: "secondary",
703
+ target: "_blank",
704
+ tooltipProps: {
705
+ content: t("neetoMolecules.publishBlock.viewDraftVersion"),
706
+ position: "top"
707
+ }
708
+ }, props));
709
+ });
710
+ var ResetDraftButton = reactUtils.withT(function (_ref2) {
711
+ var t = _ref2.t,
712
+ props = _objectWithoutProperties(_ref2, _excluded2);
713
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
714
+ "data-cy": "draft-button",
715
+ "data-testid": "draft-button",
716
+ icon: neetoIcons.Undo,
717
+ style: "secondary",
718
+ tooltipProps: {
719
+ content: t("neetoMolecules.publishBlock.deleteDraftVersion"),
720
+ position: "top"
721
+ }
722
+ }, props));
723
+ });
724
+ var PublishButton = reactUtils.withT(function (_ref3) {
725
+ var t = _ref3.t,
726
+ props = _objectWithoutProperties(_ref3, _excluded3);
727
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
728
+ "data-cy": "publish-button",
729
+ "data-testid": "publish-button",
730
+ label: t("neetoMolecules.common.actions.publish")
731
+ }, props));
732
+ });
733
+ var PublishPreviewButton = reactUtils.withT(function (_ref4) {
734
+ var t = _ref4.t,
735
+ props = _objectWithoutProperties(_ref4, _excluded4);
736
+ return /*#__PURE__*/React__default["default"].createElement(neetoui.Button, _extends({
737
+ "data-cy": "publish-preview-button",
738
+ "data-testid": "publish-preview-button",
739
+ icon: neetoIcons.ExternalLink,
740
+ target: "_blank",
741
+ className: classnames__default["default"]({
742
+ "pointer-events-none": props.disabled
743
+ }, props.className),
744
+ tooltipProps: {
745
+ content: t("neetoMolecules.publishBlock.viewPublishedVersion"),
746
+ position: "top"
747
+ }
748
+ }, props));
749
+ });
750
+ var PublishBlock = function PublishBlock(_ref5) {
751
+ var renderDraftButtons = _ref5.renderDraftButtons,
752
+ renderPublishButtons = _ref5.renderPublishButtons;
753
+ var _useTranslation = reactI18next.useTranslation(),
754
+ t = _useTranslation.t;
755
+ var draftBlockButtons = renderDraftButtons({
756
+ ViewDraftButton: ViewDraftButton,
757
+ ResetDraftButton: ResetDraftButton
758
+ });
759
+ return /*#__PURE__*/React__default["default"].createElement("div", {
760
+ className: "neeto-molecules-publish-block",
761
+ "data-testid": "neeto-molecules-publish-block"
762
+ }, draftBlockButtons && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
763
+ className: "flex items-center gap-2"
764
+ }, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
765
+ className: "neeto-ui-text-gray-700",
766
+ lineHeight: "normal",
767
+ style: "body2"
768
+ }, t("neetoMolecules.common.actions.draft")), /*#__PURE__*/React__default["default"].createElement("div", {
769
+ className: "flex items-center gap-1"
770
+ }, draftBlockButtons)), /*#__PURE__*/React__default["default"].createElement("div", {
771
+ className: "neeto-ui-bg-gray-300 h-full w-px"
772
+ })), /*#__PURE__*/React__default["default"].createElement("div", {
773
+ className: "neeto-molecules-publish-block__action-btn"
774
+ }, renderPublishButtons({
775
+ PublishButton: PublishButton,
776
+ PublishPreviewButton: PublishPreviewButton
777
+ })));
778
+ };
779
+ PublishBlock.Alert = AlertBlock;
780
+
781
+ var css = ".standalone-publish-preview-button{border-radius:var(--neeto-ui-rounded)!important}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link{color:rgb(var(--neeto-ui-gray-500))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link .neeto-ui-text-h4{color:inherit}@media screen and (max-width:1024px){.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link .neeto-ui-text-h4{font-size:14px}}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.active{color:rgb(var(--neeto-ui-black))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link:hover:not(.active){color:rgb(var(--neeto-ui-gray-600))}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled{color:rgb(var(--neeto-ui-gray-300));cursor:not-allowed}.neeto-molecules-navigation-header .neeto-molecules-navigation-header__link.disabled:hover{color:rgb(var(--neeto-ui-gray-300))}";
782
+ n(css,{});
783
+
784
+ var RightBlock = function RightBlock(_ref) {
785
+ var isDraftBlockHidden = _ref.isDraftBlockHidden,
786
+ previewDraftUrl = _ref.previewDraftUrl,
787
+ isResetDraftButtonVisible = _ref.isResetDraftButtonVisible,
788
+ onResetClick = _ref.onResetClick,
789
+ isResetting = _ref.isResetting,
790
+ isPublishDisabled = _ref.isPublishDisabled,
791
+ isPublishing = _ref.isPublishing,
792
+ handlePublish = _ref.handlePublish,
793
+ isPublishPreviewDisabled = _ref.isPublishPreviewDisabled,
794
+ previewPublishedUrl = _ref.previewPublishedUrl,
795
+ isPublishButtonVisible = _ref.isPublishButtonVisible,
796
+ isResetAlertOpen = _ref.isResetAlertOpen,
797
+ setIsResetAlertOpen = _ref.setIsResetAlertOpen,
798
+ handleReset = _ref.handleReset,
799
+ publishAlertTitle = _ref.publishAlertTitle,
800
+ publishAlertDescription = _ref.publishAlertDescription;
801
+ var _useTranslation = reactI18next.useTranslation(),
802
+ t = _useTranslation.t;
803
+ var renderDraftButtons = function renderDraftButtons(_ref2) {
804
+ var ViewDraftButton = _ref2.ViewDraftButton,
805
+ ResetDraftButton = _ref2.ResetDraftButton;
806
+ return !isDraftBlockHidden && /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(ViewDraftButton, {
807
+ to: previewDraftUrl
808
+ }), isResetDraftButtonVisible && /*#__PURE__*/React__default["default"].createElement(ResetDraftButton, {
809
+ loading: isResetting,
810
+ onClick: function onClick() {
811
+ return onResetClick();
812
+ }
813
+ }));
814
+ };
815
+ var renderPublishButtons = function renderPublishButtons(_ref3) {
816
+ var PublishButton = _ref3.PublishButton,
817
+ PublishPreviewButton = _ref3.PublishPreviewButton;
818
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isPublishButtonVisible && /*#__PURE__*/React__default["default"].createElement(PublishButton, {
819
+ disabled: isPublishDisabled,
820
+ loading: isPublishing,
821
+ onClick: function onClick() {
822
+ return handlePublish();
823
+ }
824
+ }), /*#__PURE__*/React__default["default"].createElement(PublishPreviewButton, {
825
+ disabled: isPublishPreviewDisabled,
826
+ to: previewPublishedUrl,
827
+ className: classnames__default["default"]({
828
+ "standalone-publish-preview-button": !isPublishButtonVisible
829
+ })
830
+ }));
831
+ };
832
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(PublishBlock, {
833
+ renderDraftButtons: renderDraftButtons,
834
+ renderPublishButtons: renderPublishButtons
835
+ }), /*#__PURE__*/React__default["default"].createElement(PublishBlock.Alert, {
836
+ isOpen: isResetAlertOpen,
837
+ isSubmitting: isResetting,
838
+ message: publishAlertDescription || t("neetoMolecules.navigationHeader.resetDescription"),
839
+ title: publishAlertTitle || t("neetoMolecules.navigationHeader.resetTitle"),
840
+ onClose: function onClose() {
841
+ return setIsResetAlertOpen(false);
842
+ },
843
+ onSubmit: handleReset
844
+ }));
845
+ };
846
+
847
+ var NavigationHeader = function NavigationHeader(_ref) {
848
+ var leftActionBlock = _ref.leftActionBlock,
849
+ navigationLinks = _ref.navigationLinks,
850
+ rightActionBlock = _ref.rightActionBlock;
851
+ var numberOfChildren = ramda.length(ramda.filter(neetoCist.isPresent, [leftActionBlock, navigationLinks, rightActionBlock]));
852
+ return /*#__PURE__*/React__default["default"].createElement("div", {
853
+ className: "neeto-molecules-navigation-header neeto-ui-border-gray-200 neeto-ui-bg-white flex h-16 w-full flex-shrink-0 items-center overflow-x-auto border-b px-2 py-2 md:px-4 lg:px-6",
854
+ "data-testid": "navigation-header"
855
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
856
+ className: "grid w-full gap-4",
857
+ style: {
858
+ gridTemplateColumns: "repeat(".concat(numberOfChildren, ", 1fr)")
859
+ }
860
+ }, leftActionBlock, navigationLinks, rightActionBlock));
861
+ };
862
+ NavigationHeader.LeftActionBlock = LeftBlock;
863
+ NavigationHeader.NavigationLinks = NavigationLinks;
864
+ NavigationHeader.RightActionBlock = RightBlock;
865
+
866
+ module.exports = NavigationHeader;
867
+ //# sourceMappingURL=NavigationHeader.js.map