@bigbinary/neeto-molecules 1.1.7 → 1.1.9

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 (56) hide show
  1. package/README.md +1 -0
  2. package/dist/CustomDomain.cjs.js +165 -62
  3. package/dist/CustomDomain.cjs.js.map +1 -1
  4. package/dist/CustomDomain.js +167 -64
  5. package/dist/CustomDomain.js.map +1 -1
  6. package/dist/CustomDomainDashboard.cjs.js +115 -44
  7. package/dist/CustomDomainDashboard.cjs.js.map +1 -1
  8. package/dist/CustomDomainDashboard.js +118 -47
  9. package/dist/CustomDomainDashboard.js.map +1 -1
  10. package/dist/Header.cjs.js +1 -1
  11. package/dist/Header.cjs.js.map +1 -1
  12. package/dist/Header.js +2 -2
  13. package/dist/Header.js.map +1 -1
  14. package/dist/IntegrationCard.cjs.js +123 -9
  15. package/dist/IntegrationCard.cjs.js.map +1 -1
  16. package/dist/IntegrationCard.js +126 -12
  17. package/dist/IntegrationCard.js.map +1 -1
  18. package/dist/IpRestriction.cjs.js +133 -19
  19. package/dist/IpRestriction.cjs.js.map +1 -1
  20. package/dist/IpRestriction.js +135 -21
  21. package/dist/IpRestriction.js.map +1 -1
  22. package/dist/Metadata.cjs.js +272 -0
  23. package/dist/Metadata.cjs.js.map +1 -0
  24. package/dist/Metadata.js +266 -0
  25. package/dist/Metadata.js.map +1 -0
  26. package/dist/NavigationHeader.cjs.js +188 -65
  27. package/dist/NavigationHeader.cjs.js.map +1 -1
  28. package/dist/NavigationHeader.js +191 -68
  29. package/dist/NavigationHeader.js.map +1 -1
  30. package/dist/Rename.cjs.js +188 -36
  31. package/dist/Rename.cjs.js.map +1 -1
  32. package/dist/Rename.js +191 -39
  33. package/dist/Rename.js.map +1 -1
  34. package/dist/Schedule.cjs.js +125 -15
  35. package/dist/Schedule.cjs.js.map +1 -1
  36. package/dist/Schedule.js +127 -17
  37. package/dist/Schedule.js.map +1 -1
  38. package/dist/Security.cjs.js +1 -1
  39. package/dist/Security.cjs.js.map +1 -1
  40. package/dist/Security.js +2 -2
  41. package/dist/Security.js.map +1 -1
  42. package/dist/Settings.cjs.js +123 -9
  43. package/dist/Settings.cjs.js.map +1 -1
  44. package/dist/Settings.js +126 -12
  45. package/dist/Settings.js.map +1 -1
  46. package/dist/ShareViaLink.cjs.js +175 -17
  47. package/dist/ShareViaLink.cjs.js.map +1 -1
  48. package/dist/ShareViaLink.js +184 -26
  49. package/dist/ShareViaLink.js.map +1 -1
  50. package/dist/ThemeSidebar.cjs.js +134 -50
  51. package/dist/ThemeSidebar.cjs.js.map +1 -1
  52. package/dist/ThemeSidebar.js +138 -54
  53. package/dist/ThemeSidebar.js.map +1 -1
  54. package/package.json +1 -1
  55. package/src/translations/en.json +7 -0
  56. package/types/Metadata.d.ts +108 -0
@@ -1,14 +1,15 @@
1
1
  import React, { useRef, useState } from 'react';
2
2
  import { SINGULAR } from '@bigbinary/neeto-commons-frontend/constants';
3
3
  import { snakeToCamelCase, isNotEmpty, noop } from '@bigbinary/neeto-commons-frontend/pure';
4
- import { Info, Check, MenuHorizontal, CustomDomain as CustomDomain$1 } from '@bigbinary/neeto-icons';
5
- import { Alert, Tag, Dropdown, Callout, Input, Pane, Typography, Label, Button, Spinner } from '@bigbinary/neetoui';
4
+ import { MenuVertical, MenuHorizontal, Info, Check, CustomDomain as CustomDomain$1 } from '@bigbinary/neeto-icons';
5
+ import { Alert, Dropdown, Tooltip, Button, Tag, Callout, Input, Pane, Typography, Label, Spinner } from '@bigbinary/neetoui';
6
6
  import { useTranslation, Trans } from 'react-i18next';
7
7
  import { Formik, Form } from 'formik';
8
8
  import { Input as Input$1 } from '@bigbinary/neetoui/formik';
9
9
  import { joinHyphenCase } from '@bigbinary/neeto-commons-frontend/utils';
10
10
  import CopyToClipboardButton from '@bigbinary/neeto-molecules/CopyToClipboardButton';
11
11
  import { t } from 'i18next';
12
+ import { mergeRight } from 'ramda';
12
13
  import * as Yup from 'yup';
13
14
  import { useQueryClient, useMutation, useQuery } from 'react-query';
14
15
  import axios from 'axios';
@@ -98,6 +99,161 @@ var INITIAL_VALUES = {
98
99
  hostname: ""
99
100
  };
100
101
 
102
+ function _objectWithoutPropertiesLoose(source, excluded) {
103
+ if (source == null) return {};
104
+ var target = {};
105
+ var sourceKeys = Object.keys(source);
106
+ var key, i;
107
+ for (i = 0; i < sourceKeys.length; i++) {
108
+ key = sourceKeys[i];
109
+ if (excluded.indexOf(key) >= 0) continue;
110
+ target[key] = source[key];
111
+ }
112
+ return target;
113
+ }
114
+
115
+ function _objectWithoutProperties(source, excluded) {
116
+ if (source == null) return {};
117
+ var target = _objectWithoutPropertiesLoose(source, excluded);
118
+ var key, i;
119
+ if (Object.getOwnPropertySymbols) {
120
+ var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
121
+ for (i = 0; i < sourceSymbolKeys.length; i++) {
122
+ key = sourceSymbolKeys[i];
123
+ if (excluded.indexOf(key) >= 0) continue;
124
+ if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
125
+ target[key] = source[key];
126
+ }
127
+ }
128
+ return target;
129
+ }
130
+
131
+ function _typeof(obj) {
132
+ "@babel/helpers - typeof";
133
+
134
+ return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
135
+ return typeof obj;
136
+ } : function (obj) {
137
+ return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
138
+ }, _typeof(obj);
139
+ }
140
+
141
+ function _toPrimitive(input, hint) {
142
+ if (_typeof(input) !== "object" || input === null) return input;
143
+ var prim = input[Symbol.toPrimitive];
144
+ if (prim !== undefined) {
145
+ var res = prim.call(input, hint || "default");
146
+ if (_typeof(res) !== "object") return res;
147
+ throw new TypeError("@@toPrimitive must return a primitive value.");
148
+ }
149
+ return (hint === "string" ? String : Number)(input);
150
+ }
151
+
152
+ function _toPropertyKey(arg) {
153
+ var key = _toPrimitive(arg, "string");
154
+ return _typeof(key) === "symbol" ? key : String(key);
155
+ }
156
+
157
+ function _defineProperty(obj, key, value) {
158
+ key = _toPropertyKey(key);
159
+ if (key in obj) {
160
+ Object.defineProperty(obj, key, {
161
+ value: value,
162
+ enumerable: true,
163
+ configurable: true,
164
+ writable: true
165
+ });
166
+ } else {
167
+ obj[key] = value;
168
+ }
169
+ return obj;
170
+ }
171
+
172
+ function _extends() {
173
+ _extends = Object.assign ? Object.assign.bind() : function (target) {
174
+ for (var i = 1; i < arguments.length; i++) {
175
+ var source = arguments[i];
176
+ for (var key in source) {
177
+ if (Object.prototype.hasOwnProperty.call(source, key)) {
178
+ target[key] = source[key];
179
+ }
180
+ }
181
+ }
182
+ return target;
183
+ };
184
+ return _extends.apply(this, arguments);
185
+ }
186
+
187
+ var MENU_ITEM_TYPES = {
188
+ menuItem: "menuItem",
189
+ divider: "divider"
190
+ };
191
+ var DEFAULT_TOOLTIP_PROPS = {
192
+ disabled: true,
193
+ position: "bottom"
194
+ };
195
+
196
+ var _excluded = ["key", "onClick", "label", "type", "isVisible"];
197
+ function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
198
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
199
+ var Menu = Dropdown.Menu,
200
+ MenuItem = Dropdown.MenuItem,
201
+ Divider = Dropdown.Divider;
202
+ var MoreDropdown = function MoreDropdown(_ref) {
203
+ var _ref$dropdownButtonPr = _ref.dropdownButtonProps,
204
+ dropdownButtonProps = _ref$dropdownButtonPr === void 0 ? {} : _ref$dropdownButtonPr,
205
+ _ref$isVertical = _ref.isVertical,
206
+ isVertical = _ref$isVertical === void 0 ? false : _ref$isVertical,
207
+ _ref$isDisabled = _ref.isDisabled,
208
+ isDisabled = _ref$isDisabled === void 0 ? false : _ref$isDisabled,
209
+ _ref$dropdownProps = _ref.dropdownProps,
210
+ dropdownProps = _ref$dropdownProps === void 0 ? {} : _ref$dropdownProps,
211
+ menuTopChildren = _ref.menuTopChildren,
212
+ menuBottomChildren = _ref.menuBottomChildren,
213
+ _ref$menuItems = _ref.menuItems,
214
+ menuItems = _ref$menuItems === void 0 ? [] : _ref$menuItems;
215
+ var tooltipProps = mergeRight(DEFAULT_TOOLTIP_PROPS, dropdownButtonProps.tooltipProps);
216
+ var targetIcon = isVertical ? MenuVertical : MenuHorizontal;
217
+ var isDropdownDisabled = isDisabled || dropdownProps.disabled;
218
+ if (isDropdownDisabled && !tooltipProps.disabled) {
219
+ return /*#__PURE__*/React.createElement(Tooltip, tooltipProps, /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(Button, _extends({
220
+ disabled: true,
221
+ "data-testid": "nui-dropdown-button",
222
+ icon: targetIcon,
223
+ iconPosition: "right",
224
+ size: "medium",
225
+ style: "text"
226
+ }, dropdownButtonProps))));
227
+ }
228
+ return /*#__PURE__*/React.createElement(Dropdown, _extends({
229
+ autoWidth: true,
230
+ className: "flex",
231
+ disabled: isDisabled,
232
+ icon: targetIcon,
233
+ buttonProps: _objectSpread$1({
234
+ className: "min-h-0 flex-shrink-0",
235
+ style: "text"
236
+ }, dropdownButtonProps)
237
+ }, dropdownProps), /*#__PURE__*/React.createElement(Menu, null, menuTopChildren, menuItems.map(function (_ref2) {
238
+ var key = _ref2.key,
239
+ onClick = _ref2.onClick,
240
+ label = _ref2.label,
241
+ _ref2$type = _ref2.type,
242
+ type = _ref2$type === void 0 ? MENU_ITEM_TYPES.menuItem : _ref2$type,
243
+ _ref2$isVisible = _ref2.isVisible,
244
+ isVisible = _ref2$isVisible === void 0 ? true : _ref2$isVisible,
245
+ menuItemProps = _objectWithoutProperties(_ref2, _excluded);
246
+ if (!isVisible) return null;
247
+ return type === MENU_ITEM_TYPES.menuItem ? /*#__PURE__*/React.createElement(MenuItem.Button, _extends({
248
+ key: key
249
+ }, _objectSpread$1({
250
+ onClick: onClick
251
+ }, menuItemProps)), label) : /*#__PURE__*/React.createElement(Divider, {
252
+ key: key
253
+ });
254
+ }), menuBottomChildren));
255
+ };
256
+
101
257
  var classnames$1 = {exports: {}};
102
258
 
103
259
  /*!
@@ -191,8 +347,6 @@ var TagBlock = function TagBlock(_ref) {
191
347
  };
192
348
  var TagBlock$1 = /*#__PURE__*/React.memo(TagBlock);
193
349
 
194
- Dropdown.Menu;
195
- Dropdown.MenuItem;
196
350
  var recordData = function recordData(customDomain) {
197
351
  var status = customDomain.status,
198
352
  hostname = customDomain.hostname,
@@ -288,47 +442,6 @@ var getCustomDomainValidationSchema = function getCustomDomainValidationSchema()
288
442
  });
289
443
  };
290
444
 
291
- function _typeof(obj) {
292
- "@babel/helpers - typeof";
293
-
294
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
295
- return typeof obj;
296
- } : function (obj) {
297
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
298
- }, _typeof(obj);
299
- }
300
-
301
- function _toPrimitive(input, hint) {
302
- if (_typeof(input) !== "object" || input === null) return input;
303
- var prim = input[Symbol.toPrimitive];
304
- if (prim !== undefined) {
305
- var res = prim.call(input, hint || "default");
306
- if (_typeof(res) !== "object") return res;
307
- throw new TypeError("@@toPrimitive must return a primitive value.");
308
- }
309
- return (hint === "string" ? String : Number)(input);
310
- }
311
-
312
- function _toPropertyKey(arg) {
313
- var key = _toPrimitive(arg, "string");
314
- return _typeof(key) === "symbol" ? key : String(key);
315
- }
316
-
317
- function _defineProperty(obj, key, value) {
318
- key = _toPropertyKey(key);
319
- if (key in obj) {
320
- Object.defineProperty(obj, key, {
321
- value: value,
322
- enumerable: true,
323
- configurable: true,
324
- writable: true
325
- });
326
- } else {
327
- obj[key] = value;
328
- }
329
- return obj;
330
- }
331
-
332
445
  var getUrlwithId = function getUrlwithId(url, id) {
333
446
  return id ? "".concat(url, "/").concat(id) : url;
334
447
  };
@@ -546,8 +659,6 @@ var Manage = function Manage(_ref) {
546
659
  var CustomDomain = function CustomDomain(_ref) {
547
660
  var url = _ref.url,
548
661
  iconOnly = _ref.iconOnly;
549
- var Menu = Dropdown.Menu,
550
- MenuItem = Dropdown.MenuItem;
551
662
  var _useState = useState(false),
552
663
  _useState2 = _slicedToArray(_useState, 2),
553
664
  isPaneOpen = _useState2[0],
@@ -589,24 +700,16 @@ var CustomDomain = function CustomDomain(_ref) {
589
700
  }, /*#__PURE__*/React.createElement(Tag, {
590
701
  label: customDomain === null || customDomain === void 0 ? void 0 : customDomain.hostname,
591
702
  style: customDomain.status === "active" ? "success" : "warning"
592
- }), /*#__PURE__*/React.createElement(Dropdown, {
593
- autoWidth: true,
594
- buttonProps: {
595
- "data-testid": "nui-dropdown-icon"
703
+ }), /*#__PURE__*/React.createElement(MoreDropdown, {
704
+ dropdownProps: {
705
+ autoWidth: true
596
706
  },
597
- buttonStyle: "text",
598
- icon: MenuHorizontal
599
- }, /*#__PURE__*/React.createElement(Menu, null, actions.map(function (_ref2) {
600
- var key = _ref2.key,
601
- label = _ref2.label,
602
- onClick = _ref2.onClick,
603
- style = _ref2.style;
604
- return /*#__PURE__*/React.createElement(MenuItem.Button, {
605
- key: key,
606
- onClick: onClick,
607
- style: style
608
- }, label);
609
- })))) : /*#__PURE__*/React.createElement(Button, {
707
+ menuItems: actions,
708
+ dropdownButtonProps: {
709
+ "data-testid": "nui-dropdown-icon",
710
+ strategy: "fixed"
711
+ }
712
+ })) : /*#__PURE__*/React.createElement(Button, {
610
713
  icon: iconOnly && CustomDomain$1,
611
714
  style: "text",
612
715
  label: iconOnly ? "" : t("neetoMolecules.common.actions.add", {
@@ -1 +1 @@
1
- {"version":3,"file":"CustomDomain.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/CustomDomainDashboard/DeleteAlert.jsx","../src/components/CustomDomainDashboard/Manage/constants.js","../node_modules/classnames/index.js","../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../src/components/CustomDomainDashboard/utils.jsx","../src/components/CustomDomainDashboard/Manage/Record.jsx","../src/components/CustomDomainDashboard/Manage/StatusInfo.jsx","../src/components/CustomDomainDashboard/Manage/utils.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../src/components/CustomDomainDashboard/api.js","../src/components/CustomDomainDashboard/constants.js","../src/components/CustomDomainDashboard/useCustomDomainApi.js","../src/components/CustomDomainDashboard/Manage/index.jsx","../src/components/CustomDomain/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport { Alert } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nconst DeleteAlert = ({ onClose, onSubmit, isOpen, isSubmitting, hostname }) => {\n const { t } = useTranslation();\n\n return (\n <Alert\n cancelButtonLabel={t(\"neetoMolecules.common.actions.cancel\")}\n isOpen={isOpen}\n isSubmitting={isSubmitting}\n submitButtonLabel={t(\"neetoMolecules.common.actions.delete\")}\n title={t(\"neetoMolecules.customDomain.delete\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.alertMessage\"\n values={{ hostname }}\n />\n }\n onClose={onClose}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","export const HOSTNAME_REGEX =\n /^(?!-)[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+/;\n\nexport const INITIAL_VALUES = { hostname: \"\" };\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocommons/pure\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n indicatorStyle=\"danger\"\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"secondary\"\n />\n ) : (\n <>\n <Tag\n indicatorStyle={isDomainValidated ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n indicatorStyle={status === \"active\" ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default React.memo(TagBlock);\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n {\n id: \"actions\",\n width: \"10%\",\n render: (_, customDomain) => (\n <div onClick={e => e.stopPropagation()}>\n <Dropdown\n autoWidth\n icon={MenuHorizontal}\n position=\"bottom-end\"\n strategy=\"fixed\"\n buttonProps={{\n style: \"text\",\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n >\n <Menu>\n <MenuItem.Button onClick={() => enableManagePane(customDomain)}>\n {t(\"neetoMolecules.common.actions.edit\")}\n </MenuItem.Button>\n <MenuItem.Button onClick={() => enableDeleteAlert(customDomain)}>\n {t(\"neetoMolecules.common.actions.delete\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n ),\n },\n];\n\nexport const recordData = customDomain => {\n const { status, hostname, dnsTarget, cnameValidationParams } = customDomain;\n\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n\n const recordName = isDomainValidated ? hostname : cnameValidationParams?.name;\n\n const recordValue = isDomainValidated\n ? dnsTarget\n : cnameValidationParams?.value;\n\n const recordType = isDomainValidated\n ? t(\"neetoMolecules.customDomain.cname\")\n : t(\"neetoMolecules.customDomain.domainValidationCname\");\n\n const recordDescription = isDomainValidated\n ? t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n })\n : t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n proxyMessage: t(\"neetoMolecules.customDomain.validation.proxyMessage\"),\n });\n\n const recordNameLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.name\"),\n });\n\n const recordValueLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.value\"),\n });\n\n return {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n };\n};\n","import React from \"react\";\n\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Info } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Input, Callout } from \"neetoui\";\n\nimport { recordData } from \"../utils\";\n\nconst Record = ({ customDomain }) => {\n const {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n } = recordData(customDomain);\n\n return (\n <div className=\"mt-6 grid gap-4\">\n {customDomain.status !== \"active\" && (\n <Callout icon={Info} style=\"info\">\n {recordDescription}\n </Callout>\n )}\n <Input\n disabled\n data-cy={joinHyphenCase(recordNameLabel)}\n label={recordNameLabel}\n value={recordName}\n suffix={\n <CopyToClipboardButton size=\"small\" style=\"text\" value={recordName} />\n }\n />\n <Input\n disabled\n data-cy={joinHyphenCase(recordValueLabel)}\n label={recordValueLabel}\n value={recordValue}\n suffix={\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={recordValue}\n />\n }\n />\n </div>\n );\n};\n\nexport default React.memo(Record);\n","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\n\nconst StatusInfo = () => {\n const helpUrl = `https://help.${globalProps.appName.toLowerCase()}.com/articles/custom-domains`;\n\n return (\n <div className=\"space-y-6\">\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 neeto-ui-text-gray-700 space-y-3 p-4\">\n <Trans\n i18nKey=\"neetoMolecules.customDomain.messageBlock.dnsStatus\"\n components={{\n a: (\n <a\n className=\"neeto-ui-btn--style-link\"\n href={helpUrl}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default React.memo(StatusInfo);\n","import { t } from \"i18next\";\nimport * as Yup from \"yup\";\n\nimport { HOSTNAME_REGEX } from \"./constants\";\n\nexport const getCustomDomainValidationSchema = () =>\n Yup.object().shape({\n hostname: Yup.string()\n .required(t(\"neetoMolecules.customDomain.formikValidation.required\"))\n .matches(\n HOSTNAME_REGEX,\n t(\"neetoMolecules.customDomain.formikValidation.valid\")\n ),\n });\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import axios from \"axios\";\n\nconst getUrlwithId = (url, id) => (id ? `${url}/${id}` : url);\n\nconst fetchCustomDomains = ({ url, params }) => axios.get(url, { params });\n\nconst updateCustomDomain = (url, id) => axios.patch(getUrlwithId(url, id));\n\nconst createCustomDomain = (url, payload) => axios.post(url, payload);\nconst deleteCustomDomain = (url, id) => axios.delete(getUrlwithId(url, id));\n\nconst validateDomain = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_domain`);\n\nconst validateCname = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_cname`);\n\nconst customDomainApi = {\n createCustomDomain,\n deleteCustomDomain,\n validateDomain,\n fetchCustomDomains,\n validateCname,\n updateCustomDomain,\n};\n\nexport default customDomainApi;\n","export const DEFAULT_STALE_TIME = 60 * 60 * 1000;\n\nexport const DOMAIN_QUERY_KEY = \"custom-domain\";\n","import { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nimport customDomainApi from \"./api\";\nimport { DEFAULT_STALE_TIME, DOMAIN_QUERY_KEY } from \"./constants\";\n\nconst useCreateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(\n payload => customDomainApi.createCustomDomain(url, payload),\n {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n }\n );\n};\n\nconst useDeleteCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.deleteCustomDomain(url, id), {\n ...options,\n onSuccess: result => {\n options.onSuccess?.(result);\n queryClient.invalidateQueries(DOMAIN_QUERY_KEY);\n },\n });\n};\n\nconst useFetchCustomDomains = params =>\n useQuery(\n [DOMAIN_QUERY_KEY, { ...params }],\n () => customDomainApi.fetchCustomDomains(params),\n { staleTime: DEFAULT_STALE_TIME }\n );\n\nconst useValidateDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useValidateCname = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateCname(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useUpdateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.updateCustomDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nexport {\n useCreateCustomDomain,\n useDeleteCustomDomain,\n useValidateDomain,\n useFetchCustomDomains,\n useValidateCname,\n useUpdateCustomDomain,\n};\n","import React, { useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isNotEmpty } from \"neetocommons/pure\";\nimport { Check } from \"neetoicons\";\nimport { Label, Pane, Typography, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Record from \"./Record\";\nimport StatusInfo from \"./StatusInfo\";\nimport TagBlock from \"./TagBlock\";\nimport { getCustomDomainValidationSchema } from \"./utils\";\n\nimport {\n useCreateCustomDomain,\n useValidateDomain,\n useValidateCname,\n useUpdateCustomDomain,\n} from \"../useCustomDomainApi\";\n\nconst Manage = ({\n isOpen,\n onClose,\n customDomain,\n setCustomDomain,\n url,\n hasOne,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const customDomainId = hasOne ? null : customDomain?.id;\n\n const { mutate: createCustomDomain, isLoading: isCreating } =\n useCreateCustomDomain(url);\n\n const { mutate: validateDomain, isLoading: isValidating } =\n useValidateDomain(url);\n\n const { mutate: validateCname, isLoading: isCnameValidating } =\n useValidateCname(url);\n\n const { mutate: updateCustomDomain, isLoading: isUpdating } =\n useUpdateCustomDomain(url);\n\n const handleSubmit = values =>\n createCustomDomain(values, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateDomain = () =>\n validateDomain(customDomainId, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateCname = () => {\n validateCname(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n const handleUpdateCname = () => {\n updateCustomDomain(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Formik\n enableReinitialize\n initialValues={customDomain || INITIAL_VALUES}\n validationSchema={getCustomDomainValidationSchema()}\n onSubmit={handleSubmit}\n >\n {({ dirty }) => (\n <Form>\n <Pane.Header>\n <Typography\n data-cy=\"add-custom-domain-pane-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.edit\")\n : t(\"neetoMolecules.customDomain.addNew\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {isNotEmpty(customDomain) && (\n <TagBlock\n stacked\n {...{ handleValidateCname }}\n isCnameRecordsAdded={customDomain.addedCnameAt}\n status={customDomain.status}\n />\n )}\n <div className=\"space-y-2\">\n <Label htmlFor=\"hostname\">\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.customDomain\", SINGULAR)\n : t(\"neetoMolecules.customDomain.label\")}\n </Label>\n <div className=\"flex items-start gap-2\">\n <Input\n data-cy=\"custom-domain-input-field\"\n disabled={isNotEmpty(customDomain)}\n name=\"hostname\"\n placeholder={t(\"neetoMolecules.customDomain.placeholder\")}\n ref={initialFocusRef}\n />\n {!isNotEmpty(customDomain) && (\n <Button\n data-cy=\"submit-custom-domain-button\"\n data-testid=\"submit-custom-domain-button\"\n disabled={!dirty || isCreating}\n icon={Check}\n loading={isCreating}\n style=\"primary\"\n type=\"submit\"\n />\n )}\n </div>\n </div>\n {isNotEmpty(customDomain) && (\n <>\n <Record {...{ customDomain }} />\n {customDomain.status === \"pending_domain_validation\" && (\n <Button\n data-cy=\"validate-domain-button\"\n disabled={isValidating}\n loading={isValidating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.domain\"\n )}\n onClick={handleValidateDomain}\n />\n )}\n {customDomain.status === \"pending_cname_validation\" && (\n <Button\n data-cy=\"validate-cname-record-button\"\n loading={isCnameValidating || isUpdating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.cnameAdded\"\n )}\n onClick={handleUpdateCname}\n />\n )}\n <StatusInfo />\n </>\n )}\n </div>\n </Pane.Body>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default Manage;\n","import React, { useState } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isNotEmpty, noop } from \"neetocommons/pure\";\nimport {\n MenuHorizontal,\n CustomDomain as NeetoUICustomDomainIcon,\n} from \"neetoicons\";\nimport { Button, Tag, Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DeleteAlert from \"components/CustomDomainDashboard/DeleteAlert\";\nimport ManageDomain from \"components/CustomDomainDashboard/Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"components/CustomDomainDashboard/useCustomDomainApi\";\n\nconst CustomDomain = ({ url, iconOnly }) => {\n const { Menu, MenuItem } = Dropdown;\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n\n const { data: customDomain, isLoading } = useFetchCustomDomains({ url });\n\n const { mutate: deleteCustomDomain, isLoading: isDeleting } =\n useDeleteCustomDomain(url, { onSettled: () => setIsAlertOpen(false) });\n\n const actions = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => setIsPaneOpen(true),\n },\n {\n key: \"delete\",\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => setIsAlertOpen(true),\n },\n ];\n\n if (isLoading) return <Spinner />;\n\n return (\n <div>\n {isNotEmpty(customDomain) ? (\n <div className=\"flex flex-row items-center\">\n <Tag\n label={customDomain?.hostname}\n style={customDomain.status === \"active\" ? \"success\" : \"warning\"}\n />\n <Dropdown\n autoWidth\n buttonProps={{ \"data-testid\": \"nui-dropdown-icon\" }}\n buttonStyle=\"text\"\n icon={MenuHorizontal}\n >\n <Menu>\n {actions.map(({ key, label, onClick, style }) => (\n <MenuItem.Button key={key} {...{ onClick, style }}>\n {label}\n </MenuItem.Button>\n ))}\n </Menu>\n </Dropdown>\n </div>\n ) : (\n <Button\n icon={iconOnly && NeetoUICustomDomainIcon}\n style=\"text\"\n label={\n iconOnly\n ? \"\"\n : t(\"neetoMolecules.common.actions.add\", {\n entity: t(\n \"neetoMolecules.customDomain.customDomain\",\n SINGULAR\n ).toLowerCase(),\n })\n }\n tooltipProps={\n iconOnly && {\n content: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n }\n }\n onClick={() => setIsPaneOpen(true)}\n />\n )}\n <ManageDomain\n hasOne\n {...{ customDomain, url }}\n isOpen={isPaneOpen}\n setCustomDomain={noop}\n onClose={() => setIsPaneOpen(false)}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() => deleteCustomDomain()}\n />\n </div>\n );\n};\n\nCustomDomain.propTypes = {\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Pass this prop if you need a icon button without label.\n */\n iconOnly: PropTypes.bool,\n};\n\nexport default CustomDomain;\n"],"names":["arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","DeleteAlert","_ref","onClose","onSubmit","isOpen","isSubmitting","hostname","_useTranslation","useTranslation","t","React","createElement","Alert","cancelButtonLabel","submitButtonLabel","title","message","Trans","i18nKey","values","HOSTNAME_REGEX","INITIAL_VALUES","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","className","classnames","Tag","indicatorStyle","label","concat","style","Fragment","memo","Dropdown","Menu","MenuItem","recordData","customDomain","dnsTarget","cnameValidationParams","recordName","name","recordValue","value","recordType","recordDescription","record","proxyMessage","recordNameLabel","type","recordValueLabel","Record","_recordData","Callout","icon","Info","Input","disabled","joinHyphenCase","suffix","CopyToClipboardButton","size","StatusInfo","helpUrl","globalProps","appName","toLowerCase","components","a","href","rel","target","getCustomDomainValidationSchema","Yup","object","shape","string","required","matches","toPrimitive","toPropertyKey","getUrlwithId","url","id","fetchCustomDomains","params","axios","get","updateCustomDomain","patch","createCustomDomain","payload","post","deleteCustomDomain","validateDomain","validateCname","customDomainApi","DEFAULT_STALE_TIME","DOMAIN_QUERY_KEY","useCreateCustomDomain","options","arguments","length","undefined","queryClient","useQueryClient","useMutation","_objectSpread","onSuccess","invalidateQueries","useDeleteCustomDomain","result","_options$onSuccess","call","useFetchCustomDomains","useQuery","staleTime","useValidateDomain","useValidateCname","useUpdateCustomDomain","Manage","setCustomDomain","hasOne","initialFocusRef","useRef","customDomainId","_useCreateCustomDomai","mutate","isCreating","isLoading","_useValidateDomain","isValidating","_useValidateCname","isCnameValidating","_useUpdateCustomDomai","isUpdating","handleSubmit","handleValidateDomain","handleValidateCname","data","handleUpdateCname","Pane","Formik","enableReinitialize","initialValues","validationSchema","_ref2","dirty","Form","Header","Typography","weight","isNotEmpty","Body","isCnameRecordsAdded","addedCnameAt","Label","htmlFor","SINGULAR","placeholder","ref","Button","Check","loading","onClick","CustomDomain","iconOnly","_useState","useState","_useState2","_slicedToArray","isPaneOpen","setIsPaneOpen","_useState3","_useState4","isAlertOpen","setIsAlertOpen","_useFetchCustomDomain","_useDeleteCustomDomai","onSettled","isDeleting","actions","key","Spinner","autoWidth","buttonProps","buttonStyle","MenuHorizontal","map","NeetoUICustomDomainIcon","entity","tooltipProps","content","ManageDomain","noop"],"mappings":"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"}
1
+ {"version":3,"file":"CustomDomain.js","sources":["../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../src/components/CustomDomainDashboard/DeleteAlert.jsx","../src/components/CustomDomainDashboard/Manage/constants.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/extends.js","../src/components/MoreDropdown/constants.js","../src/components/MoreDropdown/index.jsx","../node_modules/classnames/index.js","../src/components/CustomDomainDashboard/Manage/TagBlock.jsx","../src/components/CustomDomainDashboard/utils.jsx","../src/components/CustomDomainDashboard/Manage/Record.jsx","../src/components/CustomDomainDashboard/Manage/StatusInfo.jsx","../src/components/CustomDomainDashboard/Manage/utils.js","../src/components/CustomDomainDashboard/api.js","../src/components/CustomDomainDashboard/constants.js","../src/components/CustomDomainDashboard/useCustomDomainApi.js","../src/components/CustomDomainDashboard/Manage/index.jsx","../src/components/CustomDomain/index.jsx"],"sourcesContent":["export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","import React from \"react\";\n\nimport { Alert } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nconst DeleteAlert = ({ onClose, onSubmit, isOpen, isSubmitting, hostname }) => {\n const { t } = useTranslation();\n\n return (\n <Alert\n cancelButtonLabel={t(\"neetoMolecules.common.actions.cancel\")}\n isOpen={isOpen}\n isSubmitting={isSubmitting}\n submitButtonLabel={t(\"neetoMolecules.common.actions.delete\")}\n title={t(\"neetoMolecules.customDomain.delete\")}\n message={\n <Trans\n i18nKey=\"neetoMolecules.customDomain.alertMessage\"\n values={{ hostname }}\n />\n }\n onClose={onClose}\n onSubmit={onSubmit}\n />\n );\n};\n\nexport default DeleteAlert;\n","export const HOSTNAME_REGEX =\n /^(?!-)[a-zA-Z0-9][a-zA-Z0-9-]{1,61}[a-zA-Z0-9](?:\\.[a-zA-Z]{2,})+/;\n\nexport const INITIAL_VALUES = { hostname: \"\" };\n","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","export const BUTTON_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n danger: \"danger\",\n danger_text: \"danger-text\",\n text: \"text\",\n link: \"link\",\n};\n\nexport const SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nexport const STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nexport const MENU_ITEM_TYPES = { menuItem: \"menuItem\", divider: \"divider\" };\n\nexport const DEFAULT_TOOLTIP_PROPS = {\n disabled: true,\n position: \"bottom\",\n};\n","import React from \"react\";\n\nimport { MenuHorizontal, MenuVertical } from \"neetoicons\";\nimport { Button, Dropdown, Tooltip } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\n\nimport {\n BUTTON_STYLES,\n DEFAULT_TOOLTIP_PROPS,\n MENU_ITEM_TYPES,\n SIZES,\n STRATEGY,\n} from \"./constants\";\n\nconst { Menu, MenuItem, Divider } = Dropdown;\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const tooltipProps = mergeRight(\n DEFAULT_TOOLTIP_PROPS,\n dropdownButtonProps.tooltipProps\n );\n\n const targetIcon = isVertical ? MenuVertical : MenuHorizontal;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip {...tooltipProps}>\n <span>\n <Button\n disabled\n data-testid=\"nui-dropdown-button\"\n icon={targetIcon}\n iconPosition=\"right\"\n size=\"medium\"\n style=\"text\"\n {...dropdownButtonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <Dropdown\n autoWidth\n className=\"flex\"\n disabled={isDisabled}\n icon={targetIcon}\n buttonProps={{\n className: \"min-h-0 flex-shrink-0\",\n style: \"text\",\n ...dropdownButtonProps,\n }}\n {...dropdownProps}\n >\n <Menu>\n {menuTopChildren}\n {menuItems.map(\n ({\n key,\n onClick,\n label,\n type = MENU_ITEM_TYPES.menuItem,\n isVisible = true,\n ...menuItemProps\n }) => {\n if (!isVisible) return null;\n\n return type === MENU_ITEM_TYPES.menuItem ? (\n <MenuItem.Button key={key} {...{ onClick, ...menuItemProps }}>\n {label}\n </MenuItem.Button>\n ) : (\n <Divider key={key} />\n );\n }\n )}\n {menuBottomChildren}\n </Menu>\n </Dropdown>\n );\n};\n\nMoreDropdown.propTypes = {\n /*\n * This props will be passed to the target button of the dropdown.\n */\n dropdownButtonProps: PropTypes.shape({\n style: PropTypes.oneOf(Object.values(BUTTON_STYLES)),\n size: PropTypes.oneOf(Object.values(SIZES)),\n iconSize: PropTypes.number,\n disabled: PropTypes.bool,\n }),\n /*\n * Whether to show a MenuVertical icon. By default the icon will be MenuHorizontal.\n */\n isVertical: PropTypes.bool,\n /*\n * Whether the dropdown is disabled or not.\n */\n isDisabled: PropTypes.bool,\n /*\n * This props will be passed to the dropdown.\n */\n dropdownProps: PropTypes.shape({\n strategy: PropTypes.oneOf(Object.values(STRATEGY)),\n }),\n /*\n * This children will be rendered on top of the dropdown menu.\n */\n menuTopChildren: PropTypes.node,\n /*\n * This children will be rendered on bottom of the dropdown menu.\n */\n menuBottomChildren: PropTypes.node,\n /*\n * Menu items inside the dropdown. Each item needs to have a `label`, `onClick` and `key`.\n */\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n key: PropTypes.string,\n type: PropTypes.oneOf(Object.values(MENU_ITEM_TYPES)),\n isVisible: PropTypes.bool,\n })\n ),\n};\n\nexport default MoreDropdown;\n","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { snakeToCamelCase } from \"neetocommons/pure\";\nimport { Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst TagBlock = ({ status, stacked = false }) => {\n const { t } = useTranslation();\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n const camelCasedStatus = snakeToCamelCase(status || \"\");\n\n return (\n <div\n className={classnames(\"flex gap-2\", {\n \"flex-col items-start\": stacked,\n })}\n >\n {status === \"failed\" ? (\n <Tag\n indicatorStyle=\"danger\"\n label={t(`neetoMolecules.customDomain.status.${camelCasedStatus}`)}\n style=\"secondary\"\n />\n ) : (\n <>\n <Tag\n indicatorStyle={isDomainValidated ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.domain.${camelCasedStatus}`\n )}\n />\n {isDomainValidated && (\n <div\n className={classnames(\"flex items-center justify-between gap-2\", {\n \"w-full\": stacked,\n })}\n >\n <Tag\n indicatorStyle={status === \"active\" ? \"success\" : \"warning\"}\n style=\"secondary\"\n label={t(\n `neetoMolecules.customDomain.status.cname.${camelCasedStatus}`\n )}\n />\n </div>\n )}\n </>\n )}\n </div>\n );\n};\n\nexport default React.memo(TagBlock);\n","import React from \"react\";\n\nimport { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Typography } from \"neetoui\";\n\nimport MoreDropdown from \"components/MoreDropdown\";\n\nimport TagBlock from \"./Manage/TagBlock\";\n\nexport const renderColumnData = (enableManagePane, enableDeleteAlert) => [\n {\n title: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n dataIndex: \"hostname\",\n key: \"hostname\",\n width: \"60%\",\n render: (hostName, customDomain) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Typography style=\"body2\">{hostName}</Typography>\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": `nui-dropdown-icon-${customDomain.id}`,\n }}\n dropdownProps={{\n position: \"bottom-end\",\n strategy: \"fixed\",\n autoWidth: true,\n }}\n menuItems={[\n {\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => enableManagePane(customDomain),\n key: \"edit-custom-domain-button\",\n },\n {\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => enableDeleteAlert(customDomain),\n key: \"delete-custom-domain\",\n },\n ]}\n />\n </div>\n ),\n },\n {\n title: t(\"neetoMolecules.common.status\"),\n dataIndex: \"status\",\n key: \"status\",\n render: status => <TagBlock {...{ status }} />,\n width: \"40%\",\n },\n];\n\nexport const recordData = customDomain => {\n const { status, hostname, dnsTarget, cnameValidationParams } = customDomain;\n\n const isDomainValidated =\n status === \"active\" || status === \"pending_cname_validation\";\n\n const recordName = isDomainValidated ? hostname : cnameValidationParams?.name;\n\n const recordValue = isDomainValidated\n ? dnsTarget\n : cnameValidationParams?.value;\n\n const recordType = isDomainValidated\n ? t(\"neetoMolecules.customDomain.cname\")\n : t(\"neetoMolecules.customDomain.domainValidationCname\");\n\n const recordDescription = isDomainValidated\n ? t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n })\n : t(\"neetoMolecules.customDomain.validation.desc\", {\n record: recordType,\n proxyMessage: t(\"neetoMolecules.customDomain.validation.proxyMessage\"),\n });\n\n const recordNameLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.name\"),\n });\n\n const recordValueLabel = t(\"neetoMolecules.customDomain.validation.record\", {\n record: recordType,\n type: t(\"neetoMolecules.common.value\"),\n });\n\n return {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n };\n};\n","import React from \"react\";\n\nimport { joinHyphenCase } from \"neetocommons/utils\";\nimport { Info } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Input, Callout } from \"neetoui\";\n\nimport { recordData } from \"../utils\";\n\nconst Record = ({ customDomain }) => {\n const {\n recordName,\n recordValue,\n recordDescription,\n recordNameLabel,\n recordValueLabel,\n } = recordData(customDomain);\n\n return (\n <div className=\"mt-6 grid gap-4\">\n {customDomain.status !== \"active\" && (\n <Callout icon={Info} style=\"info\">\n {recordDescription}\n </Callout>\n )}\n <Input\n disabled\n data-cy={joinHyphenCase(recordNameLabel)}\n label={recordNameLabel}\n value={recordName}\n suffix={\n <CopyToClipboardButton size=\"small\" style=\"text\" value={recordName} />\n }\n />\n <Input\n disabled\n data-cy={joinHyphenCase(recordValueLabel)}\n label={recordValueLabel}\n value={recordValue}\n suffix={\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={recordValue}\n />\n }\n />\n </div>\n );\n};\n\nexport default React.memo(Record);\n","import React from \"react\";\n\nimport { Trans } from \"react-i18next\";\n\nconst StatusInfo = () => {\n const helpUrl = `https://help.${globalProps.appName.toLowerCase()}.com/articles/custom-domains`;\n\n return (\n <div className=\"space-y-6\">\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-100 neeto-ui-text-gray-700 space-y-3 p-4\">\n <Trans\n i18nKey=\"neetoMolecules.customDomain.messageBlock.dnsStatus\"\n components={{\n a: (\n <a\n className=\"neeto-ui-btn--style-link\"\n href={helpUrl}\n rel=\"noreferrer\"\n target=\"_blank\"\n />\n ),\n }}\n />\n </div>\n </div>\n );\n};\n\nexport default React.memo(StatusInfo);\n","import { t } from \"i18next\";\nimport * as Yup from \"yup\";\n\nimport { HOSTNAME_REGEX } from \"./constants\";\n\nexport const getCustomDomainValidationSchema = () =>\n Yup.object().shape({\n hostname: Yup.string()\n .required(t(\"neetoMolecules.customDomain.formikValidation.required\"))\n .matches(\n HOSTNAME_REGEX,\n t(\"neetoMolecules.customDomain.formikValidation.valid\")\n ),\n });\n","import axios from \"axios\";\n\nconst getUrlwithId = (url, id) => (id ? `${url}/${id}` : url);\n\nconst fetchCustomDomains = ({ url, params }) => axios.get(url, { params });\n\nconst updateCustomDomain = (url, id) => axios.patch(getUrlwithId(url, id));\n\nconst createCustomDomain = (url, payload) => axios.post(url, payload);\nconst deleteCustomDomain = (url, id) => axios.delete(getUrlwithId(url, id));\n\nconst validateDomain = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_domain`);\n\nconst validateCname = (url, id) =>\n axios.patch(`${getUrlwithId(url, id)}/validate_cname`);\n\nconst customDomainApi = {\n createCustomDomain,\n deleteCustomDomain,\n validateDomain,\n fetchCustomDomains,\n validateCname,\n updateCustomDomain,\n};\n\nexport default customDomainApi;\n","export const DEFAULT_STALE_TIME = 60 * 60 * 1000;\n\nexport const DOMAIN_QUERY_KEY = \"custom-domain\";\n","import { useMutation, useQuery, useQueryClient } from \"react-query\";\n\nimport customDomainApi from \"./api\";\nimport { DEFAULT_STALE_TIME, DOMAIN_QUERY_KEY } from \"./constants\";\n\nconst useCreateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(\n payload => customDomainApi.createCustomDomain(url, payload),\n {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n }\n );\n};\n\nconst useDeleteCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.deleteCustomDomain(url, id), {\n ...options,\n onSuccess: result => {\n options.onSuccess?.(result);\n queryClient.invalidateQueries(DOMAIN_QUERY_KEY);\n },\n });\n};\n\nconst useFetchCustomDomains = params =>\n useQuery(\n [DOMAIN_QUERY_KEY, { ...params }],\n () => customDomainApi.fetchCustomDomains(params),\n { staleTime: DEFAULT_STALE_TIME }\n );\n\nconst useValidateDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useValidateCname = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.validateCname(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nconst useUpdateCustomDomain = (url, options = {}) => {\n const queryClient = useQueryClient();\n\n return useMutation(id => customDomainApi.updateCustomDomain(url, id), {\n ...options,\n onSuccess: () => queryClient.invalidateQueries(DOMAIN_QUERY_KEY),\n });\n};\n\nexport {\n useCreateCustomDomain,\n useDeleteCustomDomain,\n useValidateDomain,\n useFetchCustomDomains,\n useValidateCname,\n useUpdateCustomDomain,\n};\n","import React, { useRef } from \"react\";\n\nimport { Form, Formik } from \"formik\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isNotEmpty } from \"neetocommons/pure\";\nimport { Check } from \"neetoicons\";\nimport { Label, Pane, Typography, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { INITIAL_VALUES } from \"./constants\";\nimport Record from \"./Record\";\nimport StatusInfo from \"./StatusInfo\";\nimport TagBlock from \"./TagBlock\";\nimport { getCustomDomainValidationSchema } from \"./utils\";\n\nimport {\n useCreateCustomDomain,\n useValidateDomain,\n useValidateCname,\n useUpdateCustomDomain,\n} from \"../useCustomDomainApi\";\n\nconst Manage = ({\n isOpen,\n onClose,\n customDomain,\n setCustomDomain,\n url,\n hasOne,\n}) => {\n const { t } = useTranslation();\n const initialFocusRef = useRef(null);\n\n const customDomainId = hasOne ? null : customDomain?.id;\n\n const { mutate: createCustomDomain, isLoading: isCreating } =\n useCreateCustomDomain(url);\n\n const { mutate: validateDomain, isLoading: isValidating } =\n useValidateDomain(url);\n\n const { mutate: validateCname, isLoading: isCnameValidating } =\n useValidateCname(url);\n\n const { mutate: updateCustomDomain, isLoading: isUpdating } =\n useUpdateCustomDomain(url);\n\n const handleSubmit = values =>\n createCustomDomain(values, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateDomain = () =>\n validateDomain(customDomainId, {\n onSuccess: values => setCustomDomain(values),\n });\n\n const handleValidateCname = () => {\n validateCname(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n const handleUpdateCname = () => {\n updateCustomDomain(customDomainId, {\n onSuccess: data => setCustomDomain(data),\n });\n };\n\n return (\n <Pane {...{ initialFocusRef, isOpen, onClose }}>\n <Formik\n enableReinitialize\n initialValues={customDomain || INITIAL_VALUES}\n validationSchema={getCustomDomainValidationSchema()}\n onSubmit={handleSubmit}\n >\n {({ dirty }) => (\n <Form>\n <Pane.Header>\n <Typography\n data-cy=\"add-custom-domain-pane-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.edit\")\n : t(\"neetoMolecules.customDomain.addNew\")}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n <div className=\"w-full space-y-6\">\n {isNotEmpty(customDomain) && (\n <TagBlock\n stacked\n {...{ handleValidateCname }}\n isCnameRecordsAdded={customDomain.addedCnameAt}\n status={customDomain.status}\n />\n )}\n <div className=\"space-y-2\">\n <Label htmlFor=\"hostname\">\n {isNotEmpty(customDomain)\n ? t(\"neetoMolecules.customDomain.customDomain\", SINGULAR)\n : t(\"neetoMolecules.customDomain.label\")}\n </Label>\n <div className=\"flex items-start gap-2\">\n <Input\n data-cy=\"custom-domain-input-field\"\n disabled={isNotEmpty(customDomain)}\n name=\"hostname\"\n placeholder={t(\"neetoMolecules.customDomain.placeholder\")}\n ref={initialFocusRef}\n />\n {!isNotEmpty(customDomain) && (\n <Button\n data-cy=\"submit-custom-domain-button\"\n data-testid=\"submit-custom-domain-button\"\n disabled={!dirty || isCreating}\n icon={Check}\n loading={isCreating}\n style=\"primary\"\n type=\"submit\"\n />\n )}\n </div>\n </div>\n {isNotEmpty(customDomain) && (\n <>\n <Record {...{ customDomain }} />\n {customDomain.status === \"pending_domain_validation\" && (\n <Button\n data-cy=\"validate-domain-button\"\n disabled={isValidating}\n loading={isValidating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.domain\"\n )}\n onClick={handleValidateDomain}\n />\n )}\n {customDomain.status === \"pending_cname_validation\" && (\n <Button\n data-cy=\"validate-cname-record-button\"\n loading={isCnameValidating || isUpdating}\n label={t(\n \"neetoMolecules.customDomain.validation.buttonLabel.cnameAdded\"\n )}\n onClick={handleUpdateCname}\n />\n )}\n <StatusInfo />\n </>\n )}\n </div>\n </Pane.Body>\n </Form>\n )}\n </Formik>\n </Pane>\n );\n};\n\nexport default Manage;\n","import React, { useState } from \"react\";\n\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { isNotEmpty, noop } from \"neetocommons/pure\";\nimport { CustomDomain as NeetoUICustomDomainIcon } from \"neetoicons\";\nimport { Button, Tag, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DeleteAlert from \"components/CustomDomainDashboard/DeleteAlert\";\nimport ManageDomain from \"components/CustomDomainDashboard/Manage\";\nimport {\n useFetchCustomDomains,\n useDeleteCustomDomain,\n} from \"components/CustomDomainDashboard/useCustomDomainApi\";\nimport MoreDropdown from \"components/MoreDropdown\";\n\nconst CustomDomain = ({ url, iconOnly }) => {\n const [isPaneOpen, setIsPaneOpen] = useState(false);\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n const { t } = useTranslation();\n\n const { data: customDomain, isLoading } = useFetchCustomDomains({ url });\n\n const { mutate: deleteCustomDomain, isLoading: isDeleting } =\n useDeleteCustomDomain(url, { onSettled: () => setIsAlertOpen(false) });\n\n const actions = [\n {\n key: \"edit\",\n label: t(\"neetoMolecules.common.actions.edit\"),\n onClick: () => setIsPaneOpen(true),\n },\n {\n key: \"delete\",\n label: t(\"neetoMolecules.common.actions.delete\"),\n onClick: () => setIsAlertOpen(true),\n },\n ];\n\n if (isLoading) return <Spinner />;\n\n return (\n <div>\n {isNotEmpty(customDomain) ? (\n <div className=\"flex flex-row items-center\">\n <Tag\n label={customDomain?.hostname}\n style={customDomain.status === \"active\" ? \"success\" : \"warning\"}\n />\n <MoreDropdown\n dropdownProps={{ autoWidth: true }}\n menuItems={actions}\n dropdownButtonProps={{\n \"data-testid\": \"nui-dropdown-icon\",\n strategy: \"fixed\",\n }}\n />\n </div>\n ) : (\n <Button\n icon={iconOnly && NeetoUICustomDomainIcon}\n style=\"text\"\n label={\n iconOnly\n ? \"\"\n : t(\"neetoMolecules.common.actions.add\", {\n entity: t(\n \"neetoMolecules.customDomain.customDomain\",\n SINGULAR\n ).toLowerCase(),\n })\n }\n tooltipProps={\n iconOnly && {\n content: t(\"neetoMolecules.customDomain.customDomain\", SINGULAR),\n }\n }\n onClick={() => setIsPaneOpen(true)}\n />\n )}\n <ManageDomain\n hasOne\n {...{ customDomain, url }}\n isOpen={isPaneOpen}\n setCustomDomain={noop}\n onClose={() => setIsPaneOpen(false)}\n />\n <DeleteAlert\n hostname={customDomain?.hostname}\n isOpen={isAlertOpen}\n isSubmitting={isDeleting}\n onClose={() => setIsAlertOpen(false)}\n onSubmit={() => deleteCustomDomain()}\n />\n </div>\n );\n};\n\nCustomDomain.propTypes = {\n /**\n * API path to manage custom domain records.\n */\n url: PropTypes.string,\n /**\n * Pass this prop if you need a icon button without label.\n */\n iconOnly: PropTypes.bool,\n};\n\nexport default CustomDomain;\n"],"names":["arrayLikeToArray","arrayWithHoles","iterableToArrayLimit","unsupportedIterableToArray","nonIterableRest","DeleteAlert","_ref","onClose","onSubmit","isOpen","isSubmitting","hostname","_useTranslation","useTranslation","t","React","createElement","Alert","cancelButtonLabel","submitButtonLabel","title","message","Trans","i18nKey","values","HOSTNAME_REGEX","INITIAL_VALUES","objectWithoutPropertiesLoose","toPrimitive","toPropertyKey","MENU_ITEM_TYPES","menuItem","divider","DEFAULT_TOOLTIP_PROPS","disabled","position","Menu","Dropdown","MenuItem","Divider","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","dropdownProps","menuTopChildren","menuBottomChildren","_ref$menuItems","menuItems","tooltipProps","mergeRight","targetIcon","MenuVertical","MenuHorizontal","isDropdownDisabled","Tooltip","Button","_extends","icon","iconPosition","size","style","autoWidth","className","buttonProps","_objectSpread","map","_ref2","key","onClick","label","_ref2$type","type","_ref2$isVisible","isVisible","menuItemProps","_objectWithoutProperties","_excluded","TagBlock","status","_ref$stacked","stacked","isDomainValidated","camelCasedStatus","snakeToCamelCase","classnames","Tag","indicatorStyle","concat","Fragment","memo","recordData","customDomain","dnsTarget","cnameValidationParams","recordName","name","recordValue","value","recordType","recordDescription","record","proxyMessage","recordNameLabel","recordValueLabel","Record","_recordData","Callout","Info","Input","joinHyphenCase","suffix","CopyToClipboardButton","StatusInfo","helpUrl","globalProps","appName","toLowerCase","components","a","href","rel","target","getCustomDomainValidationSchema","Yup","object","shape","string","required","matches","getUrlwithId","url","id","fetchCustomDomains","params","axios","get","updateCustomDomain","patch","createCustomDomain","payload","post","deleteCustomDomain","validateDomain","validateCname","customDomainApi","DEFAULT_STALE_TIME","DOMAIN_QUERY_KEY","useCreateCustomDomain","options","arguments","length","undefined","queryClient","useQueryClient","useMutation","onSuccess","invalidateQueries","useDeleteCustomDomain","result","_options$onSuccess","call","useFetchCustomDomains","useQuery","staleTime","useValidateDomain","useValidateCname","useUpdateCustomDomain","Manage","setCustomDomain","hasOne","initialFocusRef","useRef","customDomainId","_useCreateCustomDomai","mutate","isCreating","isLoading","_useValidateDomain","isValidating","_useValidateCname","isCnameValidating","_useUpdateCustomDomai","isUpdating","handleSubmit","handleValidateDomain","handleValidateCname","data","handleUpdateCname","Pane","Formik","enableReinitialize","initialValues","validationSchema","dirty","Form","Header","Typography","weight","isNotEmpty","Body","isCnameRecordsAdded","addedCnameAt","Label","htmlFor","SINGULAR","placeholder","ref","Check","loading","CustomDomain","iconOnly","_useState","useState","_useState2","_slicedToArray","isPaneOpen","setIsPaneOpen","_useState3","_useState4","isAlertOpen","setIsAlertOpen","_useFetchCustomDomain","_useDeleteCustomDomai","onSettled","isDeleting","actions","Spinner","strategy","NeetoUICustomDomainIcon","entity","content","ManageDomain","noop"],"mappings":"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"}