@bigbinary/neeto-molecules 5.5.0-beta1 → 5.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/BrowserSupport.js +116 -51
- package/dist/BrowserSupport.js.map +1 -1
- package/dist/{Columns-C20zru7a.js → Columns-CpCh1cnJ.js} +6 -4
- package/dist/Columns-CpCh1cnJ.js.map +1 -0
- package/dist/{ConfigureView-D-2SQf3j.js → ConfigureView-re6uU4Lp.js} +6 -4
- package/dist/ConfigureView-re6uU4Lp.js.map +1 -0
- package/dist/EmailForm.js +3 -1
- package/dist/EmailForm.js.map +1 -1
- package/dist/FinderModal.js +14 -1
- package/dist/FinderModal.js.map +1 -1
- package/dist/FloatingActionMenu.js +175 -55
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/IpRestriction.js +19 -9
- package/dist/IpRestriction.js.map +1 -1
- package/dist/ProductEmbed.js +35 -23
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/ShareViaLink.js +4 -4
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +43 -5
- package/dist/Sidebar.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +27 -18
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/BrowserSupport.js +119 -51
- package/dist/cjs/BrowserSupport.js.map +1 -1
- package/dist/cjs/{Columns-rqa7goJu.js → Columns-Gcp48xQM.js} +5 -3
- package/dist/cjs/Columns-Gcp48xQM.js.map +1 -0
- package/dist/cjs/{ConfigureView-CNWEfiae.js → ConfigureView-CAdrpELW.js} +6 -4
- package/dist/cjs/ConfigureView-CAdrpELW.js.map +1 -0
- package/dist/cjs/EmailForm.js +3 -1
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/FinderModal.js +14 -1
- package/dist/cjs/FinderModal.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +189 -69
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/IpRestriction.js +19 -9
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +34 -22
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +4 -4
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +43 -5
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +29 -20
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/mail-Di35Ay-Z.js +20 -0
- package/dist/cjs/mail-Di35Ay-Z.js.map +1 -0
- package/dist/cjs/performanceDiagnostics-CS7NTxaH.js +93 -0
- package/dist/cjs/performanceDiagnostics-CS7NTxaH.js.map +1 -0
- package/dist/cjs/{phone-number-DVlbgxBG.js → phone-number-BydWe8Mf.js} +22 -3
- package/dist/cjs/phone-number-BydWe8Mf.js.map +1 -0
- package/dist/cjs/useWhatsNewChangesCount-BVkLLk7f.js +121 -0
- package/dist/cjs/useWhatsNewChangesCount-BVkLLk7f.js.map +1 -0
- package/dist/cjs/useWhatsNewChangesCount-CyOUS5U3.js +106 -0
- package/dist/cjs/useWhatsNewChangesCount-CyOUS5U3.js.map +1 -0
- package/dist/cjs/v2/BrowserSupport.js +119 -51
- package/dist/cjs/v2/BrowserSupport.js.map +1 -1
- package/dist/cjs/v2/Builder.js +17 -13
- package/dist/cjs/v2/Builder.js.map +1 -1
- package/dist/cjs/v2/CalendarView.js +2 -2
- package/dist/cjs/v2/Columns.js +1 -1
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/v2/DndTable.js +1 -0
- package/dist/cjs/v2/DndTable.js.map +1 -1
- package/dist/cjs/v2/DynamicVariables.js +17 -8
- package/dist/cjs/v2/DynamicVariables.js.map +1 -1
- package/dist/cjs/v2/EmailForm.js +97 -10
- package/dist/cjs/v2/EmailForm.js.map +1 -1
- package/dist/cjs/v2/EmailPreview.js +1 -1
- package/dist/cjs/v2/EmailPreview.js.map +1 -1
- package/dist/cjs/v2/Engagements.js +10 -7
- package/dist/cjs/v2/Engagements.js.map +1 -1
- package/dist/cjs/v2/FinderModal.js +104 -72
- package/dist/cjs/v2/FinderModal.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +267 -110
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/IpRestriction.js +17 -7
- package/dist/cjs/v2/IpRestriction.js.map +1 -1
- package/dist/cjs/v2/MadeWith.js +5 -3
- package/dist/cjs/v2/MadeWith.js.map +1 -1
- package/dist/cjs/v2/MoreDropdown.js +5 -2
- package/dist/cjs/v2/MoreDropdown.js.map +1 -1
- package/dist/cjs/v2/OptionFields.js +1 -0
- package/dist/cjs/v2/OptionFields.js.map +1 -1
- package/dist/cjs/v2/PhoneNumber.js +1 -1
- package/dist/cjs/v2/ProductEmbed.js +25 -13
- package/dist/cjs/v2/ProductEmbed.js.map +1 -1
- package/dist/cjs/v2/SessionEnvironment.js +3 -16
- package/dist/cjs/v2/SessionEnvironment.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +95 -32
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/cjs/v2/StickyRibbonsContainer.js +29 -19
- package/dist/cjs/v2/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/v2/SubHeader.js +1 -1
- package/dist/cjs/v2/Taxonomy.js +1 -1
- package/dist/mail-CkquKByM.js +18 -0
- package/dist/mail-CkquKByM.js.map +1 -0
- package/dist/performanceDiagnostics-DJcT0dfG.js +88 -0
- package/dist/performanceDiagnostics-DJcT0dfG.js.map +1 -0
- package/dist/{phone-number-ClrmOx58.js → phone-number-n0BLV3g6.js} +24 -5
- package/dist/phone-number-n0BLV3g6.js.map +1 -0
- package/dist/useWhatsNewChangesCount-C71JkNHv.js +96 -0
- package/dist/useWhatsNewChangesCount-C71JkNHv.js.map +1 -0
- package/dist/useWhatsNewChangesCount-CQxhUCpt.js +106 -0
- package/dist/useWhatsNewChangesCount-CQxhUCpt.js.map +1 -0
- package/dist/v2/BrowserSupport.js +116 -51
- package/dist/v2/BrowserSupport.js.map +1 -1
- package/dist/v2/Builder.js +17 -13
- package/dist/v2/Builder.js.map +1 -1
- package/dist/v2/CalendarView.js +2 -2
- package/dist/v2/Columns.js +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -1
- package/dist/v2/DndTable.js +1 -0
- package/dist/v2/DndTable.js.map +1 -1
- package/dist/v2/DynamicVariables.js +18 -9
- package/dist/v2/DynamicVariables.js.map +1 -1
- package/dist/v2/EmailForm.js +100 -13
- package/dist/v2/EmailForm.js.map +1 -1
- package/dist/v2/EmailPreview.js +1 -1
- package/dist/v2/EmailPreview.js.map +1 -1
- package/dist/v2/Engagements.js +10 -7
- package/dist/v2/Engagements.js.map +1 -1
- package/dist/v2/FinderModal.js +105 -73
- package/dist/v2/FinderModal.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +238 -81
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/IpRestriction.js +17 -7
- package/dist/v2/IpRestriction.js.map +1 -1
- package/dist/v2/MadeWith.js +5 -3
- package/dist/v2/MadeWith.js.map +1 -1
- package/dist/v2/MoreDropdown.js +5 -2
- package/dist/v2/MoreDropdown.js.map +1 -1
- package/dist/v2/OptionFields.js +1 -0
- package/dist/v2/OptionFields.js.map +1 -1
- package/dist/v2/PhoneNumber.js +2 -2
- package/dist/v2/ProductEmbed.js +26 -14
- package/dist/v2/ProductEmbed.js.map +1 -1
- package/dist/v2/SessionEnvironment.js +2 -15
- package/dist/v2/SessionEnvironment.js.map +1 -1
- package/dist/v2/Sidebar.js +95 -32
- package/dist/v2/Sidebar.js.map +1 -1
- package/dist/v2/StickyRibbonsContainer.js +27 -17
- package/dist/v2/StickyRibbonsContainer.js.map +1 -1
- package/dist/v2/SubHeader.js +1 -1
- package/dist/v2/Taxonomy.js +1 -1
- package/package.json +8 -8
- package/src/translations/ar.json +19 -3
- package/src/translations/bg.json +19 -3
- package/src/translations/ca.json +19 -3
- package/src/translations/cs.json +19 -3
- package/src/translations/da.json +19 -3
- package/src/translations/de.json +19 -3
- package/src/translations/en.json +18 -2
- package/src/translations/es-MX.json +19 -3
- package/src/translations/es.json +19 -3
- package/src/translations/et.json +19 -3
- package/src/translations/fi.json +19 -3
- package/src/translations/fil.json +19 -3
- package/src/translations/fr.json +19 -3
- package/src/translations/he.json +19 -3
- package/src/translations/hi.json +19 -3
- package/src/translations/hr.json +19 -3
- package/src/translations/hu.json +19 -3
- package/src/translations/id.json +19 -3
- package/src/translations/it.json +19 -3
- package/src/translations/ja.json +19 -3
- package/src/translations/ko.json +19 -3
- package/src/translations/lv.json +995 -0
- package/src/translations/nl.json +19 -3
- package/src/translations/pl.json +19 -3
- package/src/translations/pt-BR.json +19 -3
- package/src/translations/pt.json +19 -3
- package/src/translations/ro.json +19 -3
- package/src/translations/ru.json +19 -3
- package/src/translations/sk.json +19 -3
- package/src/translations/sl.json +19 -3
- package/src/translations/sv.json +19 -3
- package/src/translations/th.json +19 -3
- package/src/translations/tr.json +19 -3
- package/src/translations/uk.json +19 -3
- package/src/translations/vi.json +19 -3
- package/src/translations/zh-CN.json +19 -3
- package/src/translations/zh-TW.json +19 -3
- package/types/BrowserSupport.d.ts +128 -39
- package/types/v2/EmailForm.d.ts +1 -0
- package/types/v2/EmailFormProvider.d.ts +3 -1
- package/dist/Columns-C20zru7a.js.map +0 -1
- package/dist/ConfigureView-D-2SQf3j.js.map +0 -1
- package/dist/cjs/Columns-rqa7goJu.js.map +0 -1
- package/dist/cjs/ConfigureView-CNWEfiae.js.map +0 -1
- package/dist/cjs/phone-number-DVlbgxBG.js.map +0 -1
- package/dist/phone-number-ClrmOx58.js.map +0 -1
|
@@ -421,6 +421,7 @@ var IpRestriction = function IpRestriction() {
|
|
|
421
421
|
isRefetching = _useFetchAllowedIpRan.isRefetching;
|
|
422
422
|
var _useUpdateIpRestricti = useUpdateIpRestriction(),
|
|
423
423
|
updateIpRestriction = _useUpdateIpRestricti.mutate,
|
|
424
|
+
updateIpRestrictionAsync = _useUpdateIpRestricti.mutateAsync,
|
|
424
425
|
isUpdating = _useUpdateIpRestricti.isPending;
|
|
425
426
|
if (isFetchingIpRestriction || isFetchingAllowedIpRanges || isRefetching) {
|
|
426
427
|
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
@@ -429,7 +430,13 @@ var IpRestriction = function IpRestriction() {
|
|
|
429
430
|
});
|
|
430
431
|
}
|
|
431
432
|
var handleSubmit = function handleSubmit(values, formikBag) {
|
|
432
|
-
if (values.ipRestriction)
|
|
433
|
+
if (values.ipRestriction) {
|
|
434
|
+
setIsAlertOpen(true);
|
|
435
|
+
return Promise.reject(new Error("pending confirmation"));
|
|
436
|
+
}
|
|
437
|
+
return handleUpdateIpRestriction(values, formikBag, {
|
|
438
|
+
mutation: updateIpRestrictionAsync
|
|
439
|
+
});
|
|
433
440
|
};
|
|
434
441
|
var handleCloseAlert = function handleCloseAlert(setSubmitting) {
|
|
435
442
|
setIsAlertOpen(false);
|
|
@@ -438,7 +445,10 @@ var IpRestriction = function IpRestriction() {
|
|
|
438
445
|
var handleUpdateIpRestriction = function handleUpdateIpRestriction(values, _ref) {
|
|
439
446
|
var setSubmitting = _ref.setSubmitting,
|
|
440
447
|
resetForm = _ref.resetForm;
|
|
441
|
-
|
|
448
|
+
var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},
|
|
449
|
+
_ref2$mutation = _ref2.mutation,
|
|
450
|
+
mutation = _ref2$mutation === void 0 ? updateIpRestriction : _ref2$mutation;
|
|
451
|
+
return mutation(buildIpRestrictionPayload(values), {
|
|
442
452
|
onSuccess: function onSuccess() {
|
|
443
453
|
setIsAlertOpen(false);
|
|
444
454
|
setSubmitting(false);
|
|
@@ -461,11 +471,11 @@ var IpRestriction = function IpRestriction() {
|
|
|
461
471
|
enableReinitialize: true,
|
|
462
472
|
onSubmit: handleSubmit
|
|
463
473
|
},
|
|
464
|
-
children: function children(
|
|
465
|
-
var values =
|
|
466
|
-
dirty =
|
|
467
|
-
resetForm =
|
|
468
|
-
setSubmitting =
|
|
474
|
+
children: function children(_ref3) {
|
|
475
|
+
var values = _ref3.values,
|
|
476
|
+
dirty = _ref3.dirty,
|
|
477
|
+
resetForm = _ref3.resetForm,
|
|
478
|
+
setSubmitting = _ref3.setSubmitting;
|
|
469
479
|
return /*#__PURE__*/jsxRuntime.jsxs(v2_CardLayout, {
|
|
470
480
|
actionBlock: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
471
481
|
className: "flex flex-wrap items-center gap-2",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IpRestriction.js","sources":["../../../src/v2/components/IpRestriction/utils.js","../../../src/v2/components/IpRestriction/constants.js","../../../src/v2/components/IpRestriction/AllowedIpRanges/AllowedIpRange.jsx","../../../src/v2/components/IpRestriction/AllowedIpRanges/index.jsx","../../../src/v2/components/IpRestriction/apis/current_ip.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useCurrentIp.js","../../../src/v2/components/IpRestriction/CurrentIp.jsx","../../../src/v2/components/IpRestriction/apis/allowed_ip_ranges.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useAllowedIpRanges.js","../../../src/v2/components/IpRestriction/apis/ip_restriction.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useIpRestrictions.js","../../../src/v2/components/IpRestriction/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { IPv4, IPv6, Validator } from \"ip-num\";\nimport { isNil, isNotNil } from \"ramda\";\nimport * as yup from \"yup\";\n\nconst isValidIPv4String = ip =>\n isNotNil(ip) && Validator.isValidIPv4String(ip)[0];\n\nconst isValidIPv6String = ip =>\n isNotNil(ip) && Validator.isValidIPv6String(ip)[0];\n\nconst isValidIpString = ip => isValidIPv4String(ip) || isValidIPv6String(ip);\n\nconst areIpAddressesInSameFormat = (ipStart, ipEnd) =>\n (isValidIPv4String(ipStart) && isValidIPv4String(ipEnd)) ||\n (isValidIPv6String(ipStart) && isValidIPv6String(ipEnd));\n\nconst isValidIPv4Range = (ipStart, ipEnd) => {\n const ipStartAddr = IPv4.fromDecimalDottedString(ipStart);\n const ipEndAddr = IPv4.fromDecimalDottedString(ipEnd);\n\n return ipStartAddr.isLessThanOrEquals(ipEndAddr);\n};\n\nconst isValidIPv6Range = (ipStart, ipEnd) => {\n const ipStartAddr = IPv6.fromString(ipStart);\n const ipEndAddr = IPv6.fromString(ipEnd);\n\n return ipStartAddr.isLessThanOrEquals(ipEndAddr);\n};\n\nconst isValidIPRange = (ipStart, ipEnd) => {\n if (isValidIPv4String(ipStart) && isValidIPv4String(ipEnd)) {\n return isValidIPv4Range(ipStart, ipEnd);\n }\n\n if (isValidIPv6String(ipStart) && isValidIPv6String(ipEnd)) {\n return isValidIPv6Range(ipStart, ipEnd);\n }\n\n return false;\n};\n\nyup.addMethod(yup.string, \"validIp\", function (errorMessage) {\n return this.test(\"valid-ip\", errorMessage, function (value) {\n if (isNil(value)) {\n return this;\n }\n\n const isValidIp = isValidIpString(value);\n\n return (\n isValidIp || this.createError({ path: this.path, message: errorMessage })\n );\n });\n});\n\nexport const getIpRestrictionValidationSchema = () =>\n yup.object().shape({\n ipStart: yup\n .string()\n .validIp(t(\"neetoMolecules.ipRestriction.validations.invalidIp\"))\n .required(t(\"neetoMolecules.ipRestriction.validations.ipStartRequired\")),\n ipEnd: yup\n .string()\n .validIp(t(\"neetoMolecules.ipRestriction.validations.invalidIp\"))\n .when(\"ipStart\", (ipStart, schema) =>\n schema.test({\n test: ipEnd => areIpAddressesInSameFormat(ipStart, ipEnd),\n message: t(\n \"neetoMolecules.ipRestriction.validations.eitherIpv4OrIpv6\"\n ),\n })\n )\n .when(\"ipStart\", (ipStart, schema) =>\n schema.test({\n test: ipEnd => isValidIPRange(ipStart, ipEnd),\n message: t(\n \"neetoMolecules.ipRestriction.validations.ipEndGreaterThanIpStart\"\n ),\n })\n )\n .required(t(\"neetoMolecules.ipRestriction.validations.ipEndRequired\")),\n // v2 Select stores the scalar option value (string), not the option object.\n addressType: yup\n .string()\n .nullable()\n .required(\n t(\"neetoMolecules.ipRestriction.validations.addressTypeRequired\")\n ),\n });\n\nexport const buildInitialValue = (isIpRestrictionEnabled, allowedIpRanges) => ({\n ipRestriction: isIpRestrictionEnabled,\n allowedIpRanges,\n});\n\nexport const buildIpRestrictionPayload = values => ({\n isIpRestrictionEnabled: values.ipRestriction,\n allowedIpRanges: values.allowedIpRanges,\n});\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { getIpRestrictionValidationSchema } from \"./utils\";\n\nexport const IP_RESTRICTIONS_ENGINE_BASE_URL = \"/neeto_ip_restrictions/api/v1\";\n\nexport const QUERY_KEYS = {\n IP_RESTRICTION: \"IP_RESTRICTION\",\n ALLOWED_IP_RANGES: \"ALLOWED_IP_RANGES\",\n CURRENT_IP: \"CURRENT_IP\",\n};\n\nexport const TRUNCATE_LENGTH = 18;\n\nexport const ADDRESS_TYPE_SELECT_OPTIONS = [\n { label: t(\"neetoMolecules.ipRestriction.ipv4\"), value: \"ipv4\" },\n { label: t(\"neetoMolecules.ipRestriction.ipv6\"), value: \"ipv6\" },\n];\n\nexport const INITIAL_VALUES = {\n ipStart: \"\",\n ipEnd: \"\",\n addressType: ADDRESS_TYPE_SELECT_OPTIONS[0].value,\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n ipRestriction: yup.boolean(),\n allowedIpRanges: yup.array().of(getIpRestrictionValidationSchema()),\n});\n\nexport const NEW_ALLOWED_IP_RANGE = {\n ipStart: \"\",\n ipEnd: \"\",\n addressType: null,\n createdAt: new Date().toISOString(),\n};\n","import { Button, Label } from \"@bigbinary/neeto-atoms\";\nimport { Input, Select } from \"@bigbinary/neeto-atoms/formik\";\nimport { Trash2 } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { ADDRESS_TYPE_SELECT_OPTIONS } from \"../constants\";\n\n// The fields render their own mobile-only labels instead of passing `label`\n// to the atoms fields: a labelled atoms field keeps its (empty) label row in\n// the flow on desktop, and the field column's gap pushes the control 8px\n// below the row top, misaligning it with the delete button.\nconst AllowedIpRange = withT(({ t, index, arrayHelpers }) => (\n <div className=\"border-border relative flex items-start gap-3 rounded-lg border p-4 pe-14 md:static md:rounded-none md:border-none md:p-0 md:pe-0\">\n <div className=\"grid flex-grow grid-cols-1 gap-3 md:grid-cols-3\">\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.ipStart\")}\n </Label>\n <Input\n aria-label={t(\"neetoMolecules.ipRestriction.ipStart\")}\n className=\"text-start\"\n data-testid=\"ip-start-text-field\"\n name={`allowedIpRanges.${index}.ipStart`}\n placeholder={t(\"neetoMolecules.ipRestriction.ipStart\")}\n />\n </div>\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.ipEnd\")}\n </Label>\n <Input\n aria-label={t(\"neetoMolecules.ipRestriction.ipEnd\")}\n className=\"text-start\"\n data-testid=\"ip-end-text-field\"\n name={`allowedIpRanges.${index}.ipEnd`}\n placeholder={t(\"neetoMolecules.ipRestriction.ipEnd\")}\n />\n </div>\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.type\")}\n </Label>\n <Select\n aria-label={t(\"neetoMolecules.ipRestriction.type\")}\n className=\"text-start\"\n data-testid=\"address-type-select-field\"\n name={`allowedIpRanges.${index}.addressType`}\n options={ADDRESS_TYPE_SELECT_OPTIONS}\n />\n </div>\n </div>\n <div className=\"absolute end-3 top-3 md:static md:flex md:min-w-14 md:flex-shrink-0 md:justify-center\">\n <Button\n data-testid=\"allowed-ip-range-delete-button\"\n icon={Trash2}\n size=\"icon\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.discard\"),\n position: \"top\",\n }}\n onClick={() => arrayHelpers.remove(index)}\n />\n </div>\n </div>\n));\n\nexport default AllowedIpRange;\n","import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { FieldArray } from \"formik\";\nimport { Plus } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport AllowedIpRange from \"./AllowedIpRange\";\n\nimport { NEW_ALLOWED_IP_RANGE } from \"../constants\";\n\nconst AllowedIpRanges = withT(({ t }) => (\n <div\n className=\"flex flex-col gap-y-5\"\n data-testid=\"allowed-ip-range-container\"\n >\n <Typography data-testid=\"allowed-ip-range-heading\" variant=\"h6\">\n {t(\"neetoMolecules.ipRestriction.allowedIpRangeTitle\")}\n </Typography>\n <div className=\"flex flex-col gap-y-3\">\n <div className=\"hidden gap-3 md:flex\">\n <div className=\"grid flex-grow grid-cols-3 gap-3\">\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.ipStart\")}*\n </Typography>\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.ipEnd\")}*\n </Typography>\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.type\")}*\n </Typography>\n </div>\n <div className=\"min-w-14 flex-shrink-0\">\n <Typography\n className=\"text-center uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.actions\")}\n </Typography>\n </div>\n </div>\n <div className=\"flex w-full flex-col gap-y-6 md:gap-y-4\">\n <FieldArray name=\"allowedIpRanges\">\n {arrayHelpers => (\n <>\n {arrayHelpers.form.values.allowedIpRanges.map(\n (allowedIpRange, index) => (\n <div className=\"w-full\" key={index}>\n <AllowedIpRange\n {...{ allowedIpRange, arrayHelpers, index }}\n key={allowedIpRange.createdAt}\n />\n </div>\n )\n )}\n <Button\n className=\"self-start md:mt-2\"\n data-testid=\"add-allowed-ip-range-button\"\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.ipRestriction.addNew\")}\n variant=\"link\"\n onClick={() => arrayHelpers.push(NEW_ALLOWED_IP_RANGE)}\n />\n </>\n )}\n </FieldArray>\n </div>\n </div>\n </div>\n));\n\nexport default memo(AllowedIpRanges);\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst show = params =>\n axios.get(`${IP_RESTRICTIONS_ENGINE_BASE_URL}/current_ip`, { params });\n\nconst currentIpApi = { show };\n\nexport default currentIpApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport currentIpApi from \"../../apis/current_ip\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { CURRENT_IP } = QUERY_KEYS;\n\nconst useShowCurrentIp = () =>\n useQuery({\n queryKey: [CURRENT_IP],\n queryFn: () => currentIpApi.show(),\n });\n\nexport { useShowCurrentIp };\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans } from \"react-i18next\";\n\nimport { useShowCurrentIp } from \"./hooks/reactQuery/useCurrentIp\";\n\nconst CurrentIp = () => {\n const { data, isLoading } = useShowCurrentIp();\n\n return (\n <div\n className=\"flex flex-wrap items-baseline gap-1\"\n data-testid=\"current-ip-container\"\n >\n <Typography>\n <Trans\n i18nKey=\"neetoMolecules.ipRestriction.currentIpMessage\"\n values={{ ip: isLoading ? \"...\" : data.ip }}\n />\n </Typography>\n </div>\n );\n};\n\nexport default memo(CurrentIp);\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst allowedIpRangesUrl = `${IP_RESTRICTIONS_ENGINE_BASE_URL}/allowed_ips`;\n\nconst fetch = () => axios.get(allowedIpRangesUrl);\n\nconst create = payload =>\n axios.post(allowedIpRangesUrl, { allowedIpRange: payload });\n\nconst destroy = id => axios.delete(`${allowedIpRangesUrl}/${id}`);\n\nconst update = ({ id, payload }) =>\n axios.patch(`${allowedIpRangesUrl}/${id}`, {\n allowedIpRange: payload,\n });\n\nconst allowedIpRangesApi = { fetch, create, destroy, update };\n\nexport default allowedIpRangesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport allowedIpRangesApi from \"../../apis/allowed_ip_ranges\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { ALLOWED_IP_RANGES } = QUERY_KEYS;\n\nconst useFetchAllowedIpRanges = options =>\n useQuery({\n queryKey: [ALLOWED_IP_RANGES],\n queryFn: () => allowedIpRangesApi.fetch(),\n ...options,\n });\n\nconst useCreateAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.create, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nconst useDestroyAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.destroy, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nconst useUpdateAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.update, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nexport {\n useFetchAllowedIpRanges,\n useCreateAllowedIpRanges,\n useDestroyAllowedIpRanges,\n useUpdateAllowedIpRanges,\n};\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst ipRestrictionUrl = `${IP_RESTRICTIONS_ENGINE_BASE_URL}/ip_restriction`;\n\nconst update = params =>\n axios.patch(ipRestrictionUrl, { ipRestriction: params });\n\nconst show = () => axios.get(ipRestrictionUrl);\n\nconst ipRestrictionApi = { update, show };\n\nexport default ipRestrictionApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport ipRestrictionApi from \"../../apis/ip_restriction\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { IP_RESTRICTION, ALLOWED_IP_RANGES } = QUERY_KEYS;\n\nconst useShowIpRestriction = () =>\n useQuery({\n queryKey: [IP_RESTRICTION],\n queryFn: () => ipRestrictionApi.show(),\n });\n\nconst useUpdateIpRestriction = () =>\n useMutationWithInvalidation(ipRestrictionApi.update, {\n keysToInvalidate: [[IP_RESTRICTION], [ALLOWED_IP_RANGES]],\n });\n\nexport { useShowIpRestriction, useUpdateIpRestriction };\n","import { memo, useState } from \"react\";\n\nimport {\n Alert,\n Button,\n Callout,\n Spinner,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport {\n Form as NeetoUIForm,\n Switch,\n Button as FormikButton,\n BlockNavigation,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport AllowedIpRanges from \"./AllowedIpRanges\";\nimport { VALIDATION_SCHEMA } from \"./constants\";\nimport CurrentIp from \"./CurrentIp\";\nimport { useFetchAllowedIpRanges } from \"./hooks/reactQuery/useAllowedIpRanges\";\nimport {\n useShowIpRestriction,\n useUpdateIpRestriction,\n} from \"./hooks/reactQuery/useIpRestrictions\";\nimport { buildInitialValue, buildIpRestrictionPayload } from \"./utils\";\n\nimport CardLayout from \"../CardLayout\";\n\nconst NoIcon = () => null;\n\nconst IpRestriction = () => {\n const { t } = useTranslation();\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n\n const {\n data: { isIpRestrictionEnabled } = {},\n isLoading: isFetchingIpRestriction,\n } = useShowIpRestriction();\n\n const {\n data: allowedIpRanges,\n isLoading: isFetchingAllowedIpRanges,\n isRefetching,\n } = useFetchAllowedIpRanges({ enabled: isIpRestrictionEnabled });\n\n const { mutate: updateIpRestriction, isPending: isUpdating } =\n useUpdateIpRestriction();\n\n if (isFetchingIpRestriction || isFetchingAllowedIpRanges || isRefetching) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const handleSubmit = (values, formikBag) => {\n if (values.ipRestriction) setIsAlertOpen(true);\n else handleUpdateIpRestriction(values, formikBag);\n };\n\n const handleCloseAlert = setSubmitting => {\n setIsAlertOpen(false);\n setSubmitting(false);\n };\n\n const handleUpdateIpRestriction = (values, { setSubmitting, resetForm }) => {\n updateIpRestriction(buildIpRestrictionPayload(values), {\n onSuccess: () => {\n setIsAlertOpen(false);\n setSubmitting(false);\n resetForm({ values });\n },\n onError: () => {\n setIsAlertOpen(false);\n setSubmitting(false);\n },\n });\n };\n\n return (\n <NeetoUIForm\n className=\"w-full\"\n formikProps={{\n initialValues: buildInitialValue(\n isIpRestrictionEnabled,\n allowedIpRanges\n ),\n validationSchema: VALIDATION_SCHEMA,\n validateOnBlur: true,\n enableReinitialize: true,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, dirty, resetForm, setSubmitting }) => (\n <CardLayout\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-2\">\n <FormikButton\n data-testid=\"ip-restriction-save-changes\"\n loading={isUpdating}\n >\n {t(\"neetoMolecules.common.actions.saveChanges\")}\n </FormikButton>\n <Button\n data-testid=\"ip-restriction-reset-btn\"\n disabled={!dirty}\n label={t(\"neetoMolecules.common.actions.reset\")}\n type=\"reset\"\n variant=\"secondary\"\n onClick={resetForm}\n />\n {dirty && (\n <Typography color=\"destructive\" variant=\"body2\">\n {t(\"neetoMolecules.ipRestriction.validations.unsavedChanges\")}\n </Typography>\n )}\n </div>\n }\n >\n <BlockNavigation />\n <div\n className={classnames(\"flex flex-col gap-y-2\", {\n \"pb-6\": values.ipRestriction,\n })}\n >\n <Switch\n className=\"flex-grow-0\"\n data-testid=\"enable-ip-restriction-switch\"\n disabled={isFetchingIpRestriction || isUpdating}\n id=\"ipRestriction\"\n label={t(\"neetoMolecules.ipRestriction.switchLabel\")}\n name=\"ipRestriction\"\n size=\"lg\"\n labelProps={{\n className: \"text-xl font-semibold leading-tight\",\n }}\n />\n <Typography\n data-testid=\"ip-restriction-description\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.ipRestriction.description\")}\n </Typography>\n </div>\n {values.ipRestriction && (\n <div className=\"border-border flex w-full flex-col gap-y-6 border-t pt-6\">\n <CurrentIp />\n <AllowedIpRanges />\n <Callout icon={NoIcon} variant=\"warning\">\n <div className=\"py-1 whitespace-pre-wrap\">\n <Trans i18nKey=\"neetoMolecules.ipRestriction.warningMessage\" />\n </div>\n </Callout>\n </div>\n )}\n <Alert\n isOpen={isAlertOpen}\n isSubmitting={isUpdating}\n title={t(\"neetoMolecules.ipRestriction.enableAlert.title\")}\n message={\n <Trans i18nKey=\"neetoMolecules.ipRestriction.enableAlert.message\" />\n }\n submitButtonLabel={t(\n \"neetoMolecules.ipRestriction.enableAlert.submitButtonLabel\"\n )}\n onClose={() => handleCloseAlert(setSubmitting)}\n onSubmit={() =>\n handleUpdateIpRestriction(values, { setSubmitting, resetForm })\n }\n />\n </CardLayout>\n )}\n </NeetoUIForm>\n );\n};\n\nexport default memo(IpRestriction);\n"],"names":["isValidIPv4String","ip","isNotNil","Validator","isValidIPv6String","isValidIpString","areIpAddressesInSameFormat","ipStart","ipEnd","isValidIPv4Range","ipStartAddr","IPv4","fromDecimalDottedString","ipEndAddr","isLessThanOrEquals","isValidIPv6Range","IPv6","fromString","isValidIPRange","yup","addMethod","string","errorMessage","test","value","isNil","isValidIp","createError","path","message","getIpRestrictionValidationSchema","object","shape","validIp","t","required","when","schema","addressType","nullable","buildInitialValue","isIpRestrictionEnabled","allowedIpRanges","ipRestriction","buildIpRestrictionPayload","values","IP_RESTRICTIONS_ENGINE_BASE_URL","QUERY_KEYS","IP_RESTRICTION","ALLOWED_IP_RANGES","CURRENT_IP","ADDRESS_TYPE_SELECT_OPTIONS","label","VALIDATION_SCHEMA","array","of","NEW_ALLOWED_IP_RANGE","createdAt","Date","toISOString","AllowedIpRange","withT","_ref","index","arrayHelpers","_jsxs","className","children","_jsx","Label","Input","name","concat","placeholder","Select","options","Button","icon","Trash2","size","variant","tooltipProps","content","position","onClick","remove","AllowedIpRanges","Typography","color","weight","FieldArray","_Fragment","form","map","allowedIpRange","_createElement","key","Plus","iconPosition","push","memo","show","params","axios","get","currentIpApi","useShowCurrentIp","useQuery","queryKey","queryFn","CurrentIp","_useShowCurrentIp","data","isLoading","Trans","i18nKey","allowedIpRangesUrl","fetch","create","payload","post","destroy","id","update","patch","allowedIpRangesApi","useFetchAllowedIpRanges","_objectSpread","ipRestrictionUrl","ipRestrictionApi","useShowIpRestriction","useUpdateIpRestriction","useMutationWithInvalidation","keysToInvalidate","NoIcon","IpRestriction","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","isAlertOpen","setIsAlertOpen","_useShowIpRestriction","_useShowIpRestriction2","_useShowIpRestriction3","isFetchingIpRestriction","_useFetchAllowedIpRan","enabled","isFetchingAllowedIpRanges","isRefetching","_useUpdateIpRestricti","updateIpRestriction","mutate","isUpdating","isPending","Spinner","handleSubmit","formikBag","handleUpdateIpRestriction","handleCloseAlert","setSubmitting","resetForm","onSuccess","onError","NeetoUIForm","formikProps","initialValues","validationSchema","validateOnBlur","enableReinitialize","onSubmit","_ref2","dirty","CardLayout","actionBlock","FormikButton","loading","disabled","type","BlockNavigation","classnames","Switch","labelProps","Callout","Alert","isOpen","isSubmitting","title","submitButtonLabel","onClose"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,EAAE,EAAA;AAAA,EAAA,OAC1BC,cAAQ,CAACD,EAAE,CAAC,IAAIE,qBAAS,CAACH,iBAAiB,CAACC,EAAE,CAAC,CAAC,CAAC,CAAC;AAAA,CAAA;AAEpD,IAAMG,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGH,EAAE,EAAA;AAAA,EAAA,OAC1BC,cAAQ,CAACD,EAAE,CAAC,IAAIE,qBAAS,CAACC,iBAAiB,CAACH,EAAE,CAAC,CAAC,CAAC,CAAC;AAAA,CAAA;AAEpD,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAGJ,EAAE,EAAA;EAAA,OAAID,iBAAiB,CAACC,EAAE,CAAC,IAAIG,iBAAiB,CAACH,EAAE,CAAC;AAAA,CAAA;AAE5E,IAAMK,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAIC,OAAO,EAAEC,KAAK,EAAA;AAAA,EAAA,OAC/CR,iBAAiB,CAACO,OAAO,CAAC,IAAIP,iBAAiB,CAACQ,KAAK,CAAC,IACtDJ,iBAAiB,CAACG,OAAO,CAAC,IAAIH,iBAAiB,CAACI,KAAK,CAAE;AAAA,CAAA;AAE1D,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIF,OAAO,EAAEC,KAAK,EAAK;AAC3C,EAAA,IAAME,WAAW,GAAGC,gBAAI,CAACC,uBAAuB,CAACL,OAAO,CAAC;AACzD,EAAA,IAAMM,SAAS,GAAGF,gBAAI,CAACC,uBAAuB,CAACJ,KAAK,CAAC;AAErD,EAAA,OAAOE,WAAW,CAACI,kBAAkB,CAACD,SAAS,CAAC;AAClD,CAAC;AAED,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIR,OAAO,EAAEC,KAAK,EAAK;AAC3C,EAAA,IAAME,WAAW,GAAGM,gBAAI,CAACC,UAAU,CAACV,OAAO,CAAC;AAC5C,EAAA,IAAMM,SAAS,GAAGG,gBAAI,CAACC,UAAU,CAACT,KAAK,CAAC;AAExC,EAAA,OAAOE,WAAW,CAACI,kBAAkB,CAACD,SAAS,CAAC;AAClD,CAAC;AAED,IAAMK,cAAc,GAAG,SAAjBA,cAAcA,CAAIX,OAAO,EAAEC,KAAK,EAAK;EACzC,IAAIR,iBAAiB,CAACO,OAAO,CAAC,IAAIP,iBAAiB,CAACQ,KAAK,CAAC,EAAE;AAC1D,IAAA,OAAOC,gBAAgB,CAACF,OAAO,EAAEC,KAAK,CAAC;AACzC,EAAA;EAEA,IAAIJ,iBAAiB,CAACG,OAAO,CAAC,IAAIH,iBAAiB,CAACI,KAAK,CAAC,EAAE;AAC1D,IAAA,OAAOO,gBAAgB,CAACR,OAAO,EAAEC,KAAK,CAAC;AACzC,EAAA;AAEA,EAAA,OAAO,KAAK;AACd,CAAC;AAEDW,cAAG,CAACC,SAAS,CAACD,cAAG,CAACE,MAAM,EAAE,SAAS,EAAE,UAAUC,YAAY,EAAE;EAC3D,OAAO,IAAI,CAACC,IAAI,CAAC,UAAU,EAAED,YAAY,EAAE,UAAUE,KAAK,EAAE;AAC1D,IAAA,IAAIC,WAAK,CAACD,KAAK,CAAC,EAAE;AAChB,MAAA,OAAO,IAAI;AACb,IAAA;AAEA,IAAA,IAAME,SAAS,GAAGrB,eAAe,CAACmB,KAAK,CAAC;AAExC,IAAA,OACEE,SAAS,IAAI,IAAI,CAACC,WAAW,CAAC;MAAEC,IAAI,EAAE,IAAI,CAACA,IAAI;AAAEC,MAAAA,OAAO,EAAEP;AAAa,KAAC,CAAC;AAE7E,EAAA,CAAC,CAAC;AACJ,CAAC,CAAC;AAEK,IAAMQ,gCAAgC,GAAG,SAAnCA,gCAAgCA,GAAA;AAAA,EAAA,OAC3CX,cAAG,CAACY,MAAM,EAAE,CAACC,KAAK,CAAC;IACjBzB,OAAO,EAAEY,cAAG,CACTE,MAAM,EAAE,CACRY,OAAO,CAACC,SAAC,CAAC,oDAAoD,CAAC,CAAC,CAChEC,QAAQ,CAACD,SAAC,CAAC,0DAA0D,CAAC,CAAC;IAC1E1B,KAAK,EAAEW,cAAG,CACPE,MAAM,EAAE,CACRY,OAAO,CAACC,SAAC,CAAC,oDAAoD,CAAC,CAAC,CAChEE,IAAI,CAAC,SAAS,EAAE,UAAC7B,OAAO,EAAE8B,MAAM,EAAA;MAAA,OAC/BA,MAAM,CAACd,IAAI,CAAC;AACVA,QAAAA,IAAI,EAAE,SAANA,IAAIA,CAAEf,KAAK,EAAA;AAAA,UAAA,OAAIF,0BAA0B,CAACC,OAAO,EAAEC,KAAK,CAAC;AAAA,QAAA,CAAA;QACzDqB,OAAO,EAAEK,SAAC,CACR,2DACF;AACF,OAAC,CAAC;IAAA,CACJ,CAAC,CACAE,IAAI,CAAC,SAAS,EAAE,UAAC7B,OAAO,EAAE8B,MAAM,EAAA;MAAA,OAC/BA,MAAM,CAACd,IAAI,CAAC;AACVA,QAAAA,IAAI,EAAE,SAANA,IAAIA,CAAEf,KAAK,EAAA;AAAA,UAAA,OAAIU,cAAc,CAACX,OAAO,EAAEC,KAAK,CAAC;AAAA,QAAA,CAAA;QAC7CqB,OAAO,EAAEK,SAAC,CACR,kEACF;AACF,OAAC,CAAC;IAAA,CACJ,CAAC,CACAC,QAAQ,CAACD,SAAC,CAAC,wDAAwD,CAAC,CAAC;AACxE;AACAI,IAAAA,WAAW,EAAEnB,cAAG,CACbE,MAAM,EAAE,CACRkB,QAAQ,EAAE,CACVJ,QAAQ,CACPD,SAAC,CAAC,8DAA8D,CAClE;AACJ,GAAC,CAAC;AAAA,CAAA;AAEG,IAAMM,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIC,sBAAsB,EAAEC,eAAe,EAAA;EAAA,OAAM;AAC7EC,IAAAA,aAAa,EAAEF,sBAAsB;AACrCC,IAAAA,eAAe,EAAfA;GACD;AAAA,CAAC;AAEK,IAAME,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAGC,MAAM,EAAA;EAAA,OAAK;IAClDJ,sBAAsB,EAAEI,MAAM,CAACF,aAAa;IAC5CD,eAAe,EAAEG,MAAM,CAACH;GACzB;AAAA,CAAC;;AC/FK,IAAMI,+BAA+B,GAAG,+BAA+B;AAEvE,IAAMC,UAAU,GAAG;AACxBC,EAAAA,cAAc,EAAE,gBAAgB;AAChCC,EAAAA,iBAAiB,EAAE,mBAAmB;AACtCC,EAAAA,UAAU,EAAE;AACd,CAAC;AAIM,IAAMC,2BAA2B,GAAG,CACzC;AAAEC,EAAAA,KAAK,EAAElB,SAAC,CAAC,mCAAmC,CAAC;AAAEV,EAAAA,KAAK,EAAE;AAAO,CAAC,EAChE;AAAE4B,EAAAA,KAAK,EAAElB,SAAC,CAAC,mCAAmC,CAAC;AAAEV,EAAAA,KAAK,EAAE;AAAO,CAAC,CACjE;CAE6B;AAC5BjB,EAEA+B,WAAW,EAAEa,2BAA2B,CAAC,CAAC,CAAC,CAAC3B;AAC9C;AAEO,IAAM6B,iBAAiB,GAAGlC,cAAG,CAACY,MAAM,EAAE,CAACC,KAAK,CAAC;AAClDW,EAAAA,aAAa,EAAExB,cAAG,CAAA,SAAA,CAAQ,EAAE;EAC5BuB,eAAe,EAAEvB,cAAG,CAACmC,KAAK,EAAE,CAACC,EAAE,CAACzB,gCAAgC,EAAE;AACpE,CAAC,CAAC;AAEK,IAAM0B,oBAAoB,GAAG;AAClCjD,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,KAAK,EAAE,EAAE;AACT8B,EAAAA,WAAW,EAAE,IAAI;AACjBmB,EAAAA,SAAS,EAAE,IAAIC,IAAI,EAAE,CAACC,WAAW;AACnC,CAAC;;ACzBD,IAAMC,cAAc,GAAGC,gBAAK,CAAC,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAG5B,CAAC,GAAA4B,IAAA,CAAD5B,CAAC;IAAE6B,KAAK,GAAAD,IAAA,CAALC,KAAK;IAAEC,YAAY,GAAAF,IAAA,CAAZE,YAAY;AAAA,EAAA,oBACpDC,eAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,mIAAmI;AAAAC,IAAAA,QAAA,gBAChJF,eAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,iDAAiD;AAAAC,MAAAA,QAAA,gBAC9DF,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,qBAAqB;QAAAC,QAAA,EAAA,cAClCC,cAAA,CAACC,gBAAK,EAAA;AAACH,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,EACzBjC,CAAC,CAAC,sCAAsC;AAAC,SACrC,CAAC,eACRkC,cAAA,CAACE,YAAK,EAAA;UACJ,YAAA,EAAYpC,CAAC,CAAC,sCAAsC,CAAE;AACtDgC,UAAAA,SAAS,EAAC,YAAY;AACtB,UAAA,aAAA,EAAY,qBAAqB;AACjCK,UAAAA,IAAI,EAAA,kBAAA,CAAAC,MAAA,CAAqBT,KAAK,EAAA,UAAA,CAAW;UACzCU,WAAW,EAAEvC,CAAC,CAAC,sCAAsC;AAAE,SACxD,CAAC;OACC,CAAC,eACN+B,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,qBAAqB;QAAAC,QAAA,EAAA,cAClCC,cAAA,CAACC,gBAAK,EAAA;AAACH,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,EACzBjC,CAAC,CAAC,oCAAoC;AAAC,SACnC,CAAC,eACRkC,cAAA,CAACE,YAAK,EAAA;UACJ,YAAA,EAAYpC,CAAC,CAAC,oCAAoC,CAAE;AACpDgC,UAAAA,SAAS,EAAC,YAAY;AACtB,UAAA,aAAA,EAAY,mBAAmB;AAC/BK,UAAAA,IAAI,EAAA,kBAAA,CAAAC,MAAA,CAAqBT,KAAK,EAAA,QAAA,CAAS;UACvCU,WAAW,EAAEvC,CAAC,CAAC,oCAAoC;AAAE,SACtD,CAAC;OACC,CAAC,eACN+B,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,qBAAqB;QAAAC,QAAA,EAAA,cAClCC,cAAA,CAACC,gBAAK,EAAA;AAACH,UAAAA,SAAS,EAAC,WAAW;UAAAC,QAAA,EACzBjC,CAAC,CAAC,mCAAmC;AAAC,SAClC,CAAC,eACRkC,cAAA,CAACM,aAAM,EAAA;UACL,YAAA,EAAYxC,CAAC,CAAC,mCAAmC,CAAE;AACnDgC,UAAAA,SAAS,EAAC,YAAY;AACtB,UAAA,aAAA,EAAY,2BAA2B;AACvCK,UAAAA,IAAI,EAAA,kBAAA,CAAAC,MAAA,CAAqBT,KAAK,EAAA,cAAA,CAAe;AAC7CY,UAAAA,OAAO,EAAExB;AAA4B,SACtC,CAAC;AAAA,OACC,CAAC;KACH,CAAC,eACNiB,cAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,uFAAuF;MAAAC,QAAA,eACpGC,cAAA,CAACQ,iBAAM,EAAA;AACL,QAAA,aAAA,EAAY,gCAAgC;AAC5CC,QAAAA,IAAI,EAAEC,aAAO;AACbC,QAAAA,IAAI,EAAC,MAAM;AACXC,QAAAA,OAAO,EAAC,OAAO;AACfC,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAEhD,CAAC,CAAC,uCAAuC,CAAC;AACnDiD,UAAAA,QAAQ,EAAE;SACV;QACFC,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,UAAA,OAAQpB,YAAY,CAACqB,MAAM,CAACtB,KAAK,CAAC;AAAA,QAAA;OAC1C;AAAC,KACC,CAAC;AAAA,GACH,CAAC;AAAA,CACP,CAAC;;ACtDF,IAAMuB,iBAAe,GAAGzB,gBAAK,CAAC,UAAAC,IAAA,EAAA;AAAA,EAAA,IAAG5B,CAAC,GAAA4B,IAAA,CAAD5B,CAAC;AAAA,EAAA,oBAChC+B,eAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,uBAAuB;AACjC,IAAA,aAAA,EAAY,4BAA4B;IAAAC,QAAA,EAAA,cAExCC,cAAA,CAACmB,qBAAU,EAAA;AAAC,MAAA,aAAA,EAAY,0BAA0B;AAACP,MAAAA,OAAO,EAAC,IAAI;MAAAb,QAAA,EAC5DjC,CAAC,CAAC,kDAAkD;KAC3C,CAAC,eACb+B,eAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,uBAAuB;AAAAC,MAAAA,QAAA,gBACpCF,eAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,sBAAsB;AAAAC,QAAAA,QAAA,gBACnCF,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,kCAAkC;UAAAC,QAAA,EAAA,cAC/CF,eAAA,CAACsB,qBAAU,EAAA;AACTrB,YAAAA,SAAS,EAAC,WAAW;AACrBsB,YAAAA,KAAK,EAAC,OAAO;AACbR,YAAAA,OAAO,EAAC,SAAS;AACjBS,YAAAA,MAAM,EAAC,MAAM;AAAAtB,YAAAA,QAAA,GAEZjC,CAAC,CAAC,sCAAsC,CAAC,EAAC,GAC7C;AAAA,WAAY,CAAC,eACb+B,eAAA,CAACsB,qBAAU,EAAA;AACTrB,YAAAA,SAAS,EAAC,WAAW;AACrBsB,YAAAA,KAAK,EAAC,OAAO;AACbR,YAAAA,OAAO,EAAC,SAAS;AACjBS,YAAAA,MAAM,EAAC,MAAM;AAAAtB,YAAAA,QAAA,GAEZjC,CAAC,CAAC,oCAAoC,CAAC,EAAC,GAC3C;AAAA,WAAY,CAAC,eACb+B,eAAA,CAACsB,qBAAU,EAAA;AACTrB,YAAAA,SAAS,EAAC,WAAW;AACrBsB,YAAAA,KAAK,EAAC,OAAO;AACbR,YAAAA,OAAO,EAAC,SAAS;AACjBS,YAAAA,MAAM,EAAC,MAAM;AAAAtB,YAAAA,QAAA,GAEZjC,CAAC,CAAC,mCAAmC,CAAC,EAAC,GAC1C;AAAA,WAAY,CAAC;SACV,CAAC,eACNkC,cAAA,CAAA,KAAA,EAAA;AAAKF,UAAAA,SAAS,EAAC,wBAAwB;UAAAC,QAAA,eACrCC,cAAA,CAACmB,qBAAU,EAAA;AACTrB,YAAAA,SAAS,EAAC,uBAAuB;AACjCsB,YAAAA,KAAK,EAAC,OAAO;AACbR,YAAAA,OAAO,EAAC,SAAS;AACjBS,YAAAA,MAAM,EAAC,MAAM;YAAAtB,QAAA,EAEZjC,CAAC,CAAC,sCAAsC;WAC/B;AAAC,SACV,CAAC;OACH,CAAC,eACNkC,cAAA,CAAA,KAAA,EAAA;AAAKF,QAAAA,SAAS,EAAC,yCAAyC;QAAAC,QAAA,eACtDC,cAAA,CAACsB,mBAAU,EAAA;AAACnB,UAAAA,IAAI,EAAC,iBAAiB;UAAAJ,QAAA,EAC/B,SAAAA,QAAAA,CAAAH,YAAY,EAAA;YAAA,oBACXC,eAAA,CAAA0B,mBAAA,EAAA;AAAAxB,cAAAA,QAAA,EAAA,CACGH,YAAY,CAAC4B,IAAI,CAAC/C,MAAM,CAACH,eAAe,CAACmD,GAAG,CAC3C,UAACC,cAAc,EAAE/B,KAAK,EAAA;AAAA,gBAAA,oBACpBK,cAAA,CAAA,KAAA,EAAA;AAAKF,kBAAAA,SAAS,EAAC,QAAQ;kBAAAC,QAAA,eACrB4B,mBAAA,CAACnC,cAAc,EAAA;AACPkC,oBAAAA,cAAc,EAAdA,cAAc;AAAE9B,oBAAAA,YAAY,EAAZA,YAAY;AAAED,oBAAAA,KAAK,EAALA,KAAK;oBACzCiC,GAAG,EAAEF,cAAc,CAACrC;mBACrB;AAAC,iBAAA,EAJyBM,KAKxB,CAAC;AAAA,cAAA,CAEV,CAAC,eACDK,cAAA,CAACQ,iBAAM,EAAA;AACLV,gBAAAA,SAAS,EAAC,oBAAoB;AAC9B,gBAAA,aAAA,EAAY,6BAA6B;AACzCW,gBAAAA,IAAI,EAAEoB,SAAK;AACXC,gBAAAA,YAAY,EAAC,MAAM;AACnB9C,gBAAAA,KAAK,EAAElB,CAAC,CAAC,qCAAqC,CAAE;AAChD8C,gBAAAA,OAAO,EAAC,MAAM;gBACdI,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,kBAAA,OAAQpB,YAAY,CAACmC,IAAI,CAAC3C,oBAAoB,CAAC;AAAA,gBAAA;AAAC,eACxD,CAAC;AAAA,aACF,CAAC;AAAA,UAAA;SAEK;AAAC,OACV,CAAC;AAAA,KACH,CAAC;AAAA,GACH,CAAC;AAAA,CACP,CAAC;AAEF,sBAAA,aAAe4C,UAAI,CAACd,iBAAe,CAAC;;ACrFpC,IAAMe,MAAI,GAAG,SAAPA,IAAIA,CAAGC,MAAM,EAAA;AAAA,EAAA,OACjBC,KAAK,CAACC,GAAG,IAAAhC,MAAA,CAAI1B,+BAA+B,EAAA,aAAA,CAAA,EAAe;AAAEwD,IAAAA,MAAM,EAANA;AAAO,GAAC,CAAC;AAAA,CAAA;AAExE,IAAMG,YAAY,GAAG;AAAEJ,EAAAA,IAAI,EAAJA;AAAK,CAAC;;ACF7B,IAAQnD,UAAU,GAAKH,UAAU,CAAzBG,UAAU;AAElB,IAAMwD,gBAAgB,GAAG,SAAnBA,gBAAgBA,GAAA;AAAA,EAAA,OACpBC,mBAAQ,CAAC;IACPC,QAAQ,EAAE,CAAC1D,UAAU,CAAC;IACtB2D,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQJ,YAAY,CAACJ,IAAI,EAAE;AAAA,IAAA;AACpC,GAAC,CAAC;AAAA,CAAA;;ACJJ,IAAMS,WAAS,GAAG,SAAZA,SAASA,GAAS;AACtB,EAAA,IAAAC,iBAAA,GAA4BL,gBAAgB,EAAE;IAAtCM,IAAI,GAAAD,iBAAA,CAAJC,IAAI;IAAEC,SAAS,GAAAF,iBAAA,CAATE,SAAS;AAEvB,EAAA,oBACE7C,cAAA,CAAA,KAAA,EAAA;AACEF,IAAAA,SAAS,EAAC,qCAAqC;AAC/C,IAAA,aAAA,EAAY,sBAAsB;IAAAC,QAAA,eAElCC,cAAA,CAACmB,qBAAU,EAAA;MAAApB,QAAA,eACTC,cAAA,CAAC8C,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,+CAA+C;AACvDtE,QAAAA,MAAM,EAAE;AAAE5C,UAAAA,EAAE,EAAEgH,SAAS,GAAG,KAAK,GAAGD,IAAI,CAAC/G;AAAG;OAC3C;KACS;AAAC,GACV,CAAC;AAEV,CAAC;AAED,gBAAA,aAAemG,UAAI,CAACU,WAAS,CAAC;;ACrB9B,IAAMM,kBAAkB,GAAA,EAAA,CAAA5C,MAAA,CAAM1B,+BAA+B,EAAA,cAAA,CAAc;AAE3E,IAAMuE,KAAK,GAAG,SAARA,KAAKA,GAAA;AAAA,EAAA,OAASd,KAAK,CAACC,GAAG,CAACY,kBAAkB,CAAC;AAAA,CAAA;AAEjD,IAAME,MAAM,GAAG,SAATA,MAAMA,CAAGC,OAAO,EAAA;AAAA,EAAA,OACpBhB,KAAK,CAACiB,IAAI,CAACJ,kBAAkB,EAAE;AAAEtB,IAAAA,cAAc,EAAEyB;AAAQ,GAAC,CAAC;AAAA,CAAA;AAE7D,IAAME,OAAO,GAAG,SAAVA,OAAOA,CAAGC,EAAE,EAAA;EAAA,OAAInB,KAAK,CAAA,QAAA,CAAO,CAAA,EAAA,CAAA/B,MAAA,CAAI4C,kBAAkB,EAAA,GAAA,CAAA,CAAA5C,MAAA,CAAIkD,EAAE,CAAE,CAAC;AAAA,CAAA;AAEjE,IAAMC,QAAM,GAAG,SAATA,MAAMA,CAAA7D,IAAA,EAAA;AAAA,EAAA,IAAM4D,EAAE,GAAA5D,IAAA,CAAF4D,EAAE;IAAEH,OAAO,GAAAzD,IAAA,CAAPyD,OAAO;EAAA,OAC3BhB,KAAK,CAACqB,KAAK,CAAA,EAAA,CAAApD,MAAA,CAAI4C,kBAAkB,EAAA,GAAA,CAAA,CAAA5C,MAAA,CAAIkD,EAAE,CAAA,EAAI;AACzC5B,IAAAA,cAAc,EAAEyB;AAClB,GAAC,CAAC;AAAA,CAAA;AAEJ,IAAMM,kBAAkB,GAAG;AAAER,EAAAA,KAAK,EAALA,KAAK;AAAEC,EAAAA,MAAM,EAANA,MAAM;AAAEG,EAAAA,OAAO,EAAPA,OAAO;AAAEE,EAAAA,MAAM,EAANA;AAAO,CAAC;;;;ACZ7D,IAAQ1E,mBAAiB,GAAKF,UAAU,CAAhCE,iBAAiB;AAEzB,IAAM6E,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAGnD,OAAO,EAAA;EAAA,OACrCgC,mBAAQ,CAAAoB,aAAA,CAAA;IACNnB,QAAQ,EAAE,CAAC3D,mBAAiB,CAAC;IAC7B4D,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQgB,kBAAkB,CAACR,KAAK,EAAE;AAAA,IAAA;GAAA,EACtC1C,OAAO,CACX,CAAC;AAAA,CAAA;;ACTJ,IAAMqD,gBAAgB,GAAA,EAAA,CAAAxD,MAAA,CAAM1B,+BAA+B,EAAA,iBAAA,CAAiB;AAE5E,IAAM6E,MAAM,GAAG,SAATA,MAAMA,CAAGrB,MAAM,EAAA;AAAA,EAAA,OACnBC,KAAK,CAACqB,KAAK,CAACI,gBAAgB,EAAE;AAAErF,IAAAA,aAAa,EAAE2D;AAAO,GAAC,CAAC;AAAA,CAAA;AAE1D,IAAMD,IAAI,GAAG,SAAPA,IAAIA,GAAA;AAAA,EAAA,OAASE,KAAK,CAACC,GAAG,CAACwB,gBAAgB,CAAC;AAAA,CAAA;AAE9C,IAAMC,gBAAgB,GAAG;AAAEN,EAAAA,MAAM,EAANA,MAAM;AAAEtB,EAAAA,IAAI,EAAJA;AAAK,CAAC;;ACLzC,IAAQrD,cAAc,GAAwBD,UAAU,CAAhDC,cAAc;EAAEC,iBAAiB,GAAKF,UAAU,CAAhCE,iBAAiB;AAEzC,IAAMiF,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAA;AAAA,EAAA,OACxBvB,mBAAQ,CAAC;IACPC,QAAQ,EAAE,CAAC5D,cAAc,CAAC;IAC1B6D,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,MAAA,OAAQoB,gBAAgB,CAAC5B,IAAI,EAAE;AAAA,IAAA;AACxC,GAAC,CAAC;AAAA,CAAA;AAEJ,IAAM8B,sBAAsB,GAAG,SAAzBA,sBAAsBA,GAAA;AAAA,EAAA,OAC1BC,2BAA2B,CAACH,gBAAgB,CAACN,MAAM,EAAE;IACnDU,gBAAgB,EAAE,CAAC,CAACrF,cAAc,CAAC,EAAE,CAACC,iBAAiB,CAAC;AAC1D,GAAC,CAAC;AAAA,CAAA;;ACaJ,IAAMqF,MAAM,GAAG,SAATA,MAAMA,GAAA;AAAA,EAAA,OAAS,IAAI;AAAA,CAAA;AAEzB,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,GAAS;AAC1B,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBvG,CAAC,GAAAsG,eAAA,CAADtG,CAAC;AACT,EAAA,IAAAwG,SAAA,GAAsCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA9CI,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,cAAc,GAAAH,UAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAAI,qBAAA,GAGId,oBAAoB,EAAE;IAAAe,sBAAA,GAAAD,qBAAA,CAFxBhC,IAAI;AAAAkC,IAAAA,sBAAA,GAAAD,sBAAA,KAAA,MAAA,GAA+B,EAAE,GAAAA,sBAAA;IAA7BxG,sBAAsB,GAAAyG,sBAAA,CAAtBzG,sBAAsB;IACnB0G,uBAAuB,GAAAH,qBAAA,CAAlC/B,SAAS;EAGX,IAAAmC,qBAAA,GAIItB,uBAAuB,CAAC;AAAEuB,MAAAA,OAAO,EAAE5G;AAAuB,KAAC,CAAC;IAHxDC,eAAe,GAAA0G,qBAAA,CAArBpC,IAAI;IACOsC,yBAAyB,GAAAF,qBAAA,CAApCnC,SAAS;IACTsC,YAAY,GAAAH,qBAAA,CAAZG,YAAY;AAGd,EAAA,IAAAC,qBAAA,GACErB,sBAAsB,EAAE;IADVsB,mBAAmB,GAAAD,qBAAA,CAA3BE,MAAM;IAAkCC,UAAU,GAAAH,qBAAA,CAArBI,SAAS;AAG9C,EAAA,IAAIT,uBAAuB,IAAIG,yBAAyB,IAAIC,YAAY,EAAE;AACxE,IAAA,oBACEnF,cAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,gDAAgD;AAAAC,MAAAA,QAAA,eAC7DC,cAAA,CAACyF,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;EAEA,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAIjH,MAAM,EAAEkH,SAAS,EAAK;AAC1C,IAAA,IAAIlH,MAAM,CAACF,aAAa,EAAEoG,cAAc,CAAC,IAAI,CAAC,CAAC,KAC1CiB,yBAAyB,CAACnH,MAAM,EAAEkH,SAAS,CAAC;EACnD,CAAC;AAED,EAAA,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGC,aAAa,EAAI;IACxCnB,cAAc,CAAC,KAAK,CAAC;IACrBmB,aAAa,CAAC,KAAK,CAAC;EACtB,CAAC;EAED,IAAMF,yBAAyB,GAAG,SAA5BA,yBAAyBA,CAAInH,MAAM,EAAAiB,IAAA,EAAmC;AAAA,IAAA,IAA/BoG,aAAa,GAAApG,IAAA,CAAboG,aAAa;MAAEC,SAAS,GAAArG,IAAA,CAATqG,SAAS;AACnEV,IAAAA,mBAAmB,CAAC7G,yBAAyB,CAACC,MAAM,CAAC,EAAE;AACrDuH,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAQ;QACfrB,cAAc,CAAC,KAAK,CAAC;QACrBmB,aAAa,CAAC,KAAK,CAAC;AACpBC,QAAAA,SAAS,CAAC;AAAEtH,UAAAA,MAAM,EAANA;AAAO,SAAC,CAAC;MACvB,CAAC;AACDwH,MAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;QACbtB,cAAc,CAAC,KAAK,CAAC;QACrBmB,aAAa,CAAC,KAAK,CAAC;AACtB,MAAA;AACF,KAAC,CAAC;EACJ,CAAC;EAED,oBACE9F,cAAA,CAACkG,WAAW,EAAA;AACVpG,IAAAA,SAAS,EAAC,QAAQ;AAClBqG,IAAAA,WAAW,EAAE;AACXC,MAAAA,aAAa,EAAEhI,iBAAiB,CAC9BC,sBAAsB,EACtBC,eACF,CAAC;AACD+H,MAAAA,gBAAgB,EAAEpH,iBAAiB;AACnCqH,MAAAA,cAAc,EAAE,IAAI;AACpBC,MAAAA,kBAAkB,EAAE,IAAI;AACxBC,MAAAA,QAAQ,EAAEd;KACV;IAAA3F,QAAA,EAED,SAAAA,QAAAA,CAAA0G,KAAA,EAAA;AAAA,MAAA,IAAGhI,MAAM,GAAAgI,KAAA,CAANhI,MAAM;QAAEiI,KAAK,GAAAD,KAAA,CAALC,KAAK;QAAEX,SAAS,GAAAU,KAAA,CAATV,SAAS;QAAED,aAAa,GAAAW,KAAA,CAAbX,aAAa;MAAA,oBACzCjG,eAAA,CAAC8G,aAAU,EAAA;AACTC,QAAAA,WAAW,eACT/G,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,mCAAmC;UAAAC,QAAA,EAAA,cAChDC,cAAA,CAAC6G,aAAY,EAAA;AACX,YAAA,aAAA,EAAY,6BAA6B;AACzCC,YAAAA,OAAO,EAAEvB,UAAW;YAAAxF,QAAA,EAEnBjC,CAAC,CAAC,2CAA2C;AAAC,WACnC,CAAC,eACfkC,cAAA,CAACQ,iBAAM,EAAA;AACL,YAAA,aAAA,EAAY,0BAA0B;YACtCuG,QAAQ,EAAE,CAACL,KAAM;AACjB1H,YAAAA,KAAK,EAAElB,CAAC,CAAC,qCAAqC,CAAE;AAChDkJ,YAAAA,IAAI,EAAC,OAAO;AACZpG,YAAAA,OAAO,EAAC,WAAW;AACnBI,YAAAA,OAAO,EAAE+E;AAAU,WACpB,CAAC,EACDW,KAAK,iBACJ1G,cAAA,CAACmB,qBAAU,EAAA;AAACC,YAAAA,KAAK,EAAC,aAAa;AAACR,YAAAA,OAAO,EAAC,OAAO;YAAAb,QAAA,EAC5CjC,CAAC,CAAC,yDAAyD;AAAC,WACnD,CACb;AAAA,SACE,CACN;AAAAiC,QAAAA,QAAA,gBAEDC,cAAA,CAACiH,sBAAe,EAAA,EAAE,CAAC,eACnBpH,eAAA,CAAA,KAAA,EAAA;AACEC,UAAAA,SAAS,EAAEoH,UAAU,CAAC,uBAAuB,EAAE;YAC7C,MAAM,EAAEzI,MAAM,CAACF;AACjB,WAAC,CAAE;UAAAwB,QAAA,EAAA,cAEHC,cAAA,CAACmH,aAAM,EAAA;AACLrH,YAAAA,SAAS,EAAC,aAAa;AACvB,YAAA,aAAA,EAAY,8BAA8B;YAC1CiH,QAAQ,EAAEhC,uBAAuB,IAAIQ,UAAW;AAChDjC,YAAAA,EAAE,EAAC,eAAe;AAClBtE,YAAAA,KAAK,EAAElB,CAAC,CAAC,0CAA0C,CAAE;AACrDqC,YAAAA,IAAI,EAAC,eAAe;AACpBQ,YAAAA,IAAI,EAAC,IAAI;AACTyG,YAAAA,UAAU,EAAE;AACVtH,cAAAA,SAAS,EAAE;AACb;AAAE,WACH,CAAC,eACFE,cAAA,CAACmB,qBAAU,EAAA;AACT,YAAA,aAAA,EAAY,4BAA4B;AACxCP,YAAAA,OAAO,EAAC,OAAO;YAAAb,QAAA,EAEdjC,CAAC,CAAC,0CAA0C;AAAC,WACpC,CAAC;AAAA,SACV,CAAC,EACLW,MAAM,CAACF,aAAa,iBACnBsB,eAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,0DAA0D;AAAAC,UAAAA,QAAA,EAAA,cACvEC,cAAA,CAAC0C,SAAS,IAAE,CAAC,eACb1C,cAAA,CAACkB,eAAe,EAAA,EAAE,CAAC,eACnBlB,cAAA,CAACqH,kBAAO,EAAA;AAAC5G,YAAAA,IAAI,EAAEyD,MAAO;AAACtD,YAAAA,OAAO,EAAC,SAAS;AAAAb,YAAAA,QAAA,eACtCC,cAAA,CAAA,KAAA,EAAA;AAAKF,cAAAA,SAAS,EAAC,0BAA0B;cAAAC,QAAA,eACvCC,cAAA,CAAC8C,kBAAK,EAAA;AAACC,gBAAAA,OAAO,EAAC;eAA+C;aAC3D;AAAC,WACC,CAAC;AAAA,SACP,CACN,eACD/C,cAAA,CAACsH,gBAAK,EAAA;AACJC,UAAAA,MAAM,EAAE7C,WAAY;AACpB8C,UAAAA,YAAY,EAAEjC,UAAW;AACzBkC,UAAAA,KAAK,EAAE3J,CAAC,CAAC,gDAAgD,CAAE;UAC3DL,OAAO,eACLuC,cAAA,CAAC8C,kBAAK,EAAA;AAACC,YAAAA,OAAO,EAAC;AAAkD,WAAE,CACpE;AACD2E,UAAAA,iBAAiB,EAAE5J,CAAC,CAClB,4DACF,CAAE;UACF6J,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQ9B,gBAAgB,CAACC,aAAa,CAAC;UAAA,CAAC;UAC/CU,QAAQ,EAAE,SAAVA,QAAQA,GAAA;YAAA,OACNZ,yBAAyB,CAACnH,MAAM,EAAE;AAAEqH,cAAAA,aAAa,EAAbA,aAAa;AAAEC,cAAAA,SAAS,EAATA;AAAU,aAAC,CAAC;AAAA,UAAA;AAChE,SACF,CAAC;AAAA,OACQ,CAAC;AAAA,IAAA;AACd,GACU,CAAC;AAElB,CAAC;AAED,YAAA,aAAe/D,UAAI,CAACmC,aAAa,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"IpRestriction.js","sources":["../../../src/v2/components/IpRestriction/utils.js","../../../src/v2/components/IpRestriction/constants.js","../../../src/v2/components/IpRestriction/AllowedIpRanges/AllowedIpRange.jsx","../../../src/v2/components/IpRestriction/AllowedIpRanges/index.jsx","../../../src/v2/components/IpRestriction/apis/current_ip.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useCurrentIp.js","../../../src/v2/components/IpRestriction/CurrentIp.jsx","../../../src/v2/components/IpRestriction/apis/allowed_ip_ranges.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useAllowedIpRanges.js","../../../src/v2/components/IpRestriction/apis/ip_restriction.js","../../../src/v2/components/IpRestriction/hooks/reactQuery/useIpRestrictions.js","../../../src/v2/components/IpRestriction/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { IPv4, IPv6, Validator } from \"ip-num\";\nimport { isNil, isNotNil } from \"ramda\";\nimport * as yup from \"yup\";\n\nconst isValidIPv4String = ip =>\n isNotNil(ip) && Validator.isValidIPv4String(ip)[0];\n\nconst isValidIPv6String = ip =>\n isNotNil(ip) && Validator.isValidIPv6String(ip)[0];\n\nconst isValidIpString = ip => isValidIPv4String(ip) || isValidIPv6String(ip);\n\nconst areIpAddressesInSameFormat = (ipStart, ipEnd) =>\n (isValidIPv4String(ipStart) && isValidIPv4String(ipEnd)) ||\n (isValidIPv6String(ipStart) && isValidIPv6String(ipEnd));\n\nconst isValidIPv4Range = (ipStart, ipEnd) => {\n const ipStartAddr = IPv4.fromDecimalDottedString(ipStart);\n const ipEndAddr = IPv4.fromDecimalDottedString(ipEnd);\n\n return ipStartAddr.isLessThanOrEquals(ipEndAddr);\n};\n\nconst isValidIPv6Range = (ipStart, ipEnd) => {\n const ipStartAddr = IPv6.fromString(ipStart);\n const ipEndAddr = IPv6.fromString(ipEnd);\n\n return ipStartAddr.isLessThanOrEquals(ipEndAddr);\n};\n\nconst isValidIPRange = (ipStart, ipEnd) => {\n if (isValidIPv4String(ipStart) && isValidIPv4String(ipEnd)) {\n return isValidIPv4Range(ipStart, ipEnd);\n }\n\n if (isValidIPv6String(ipStart) && isValidIPv6String(ipEnd)) {\n return isValidIPv6Range(ipStart, ipEnd);\n }\n\n return false;\n};\n\nyup.addMethod(yup.string, \"validIp\", function (errorMessage) {\n return this.test(\"valid-ip\", errorMessage, function (value) {\n if (isNil(value)) {\n return this;\n }\n\n const isValidIp = isValidIpString(value);\n\n return (\n isValidIp || this.createError({ path: this.path, message: errorMessage })\n );\n });\n});\n\nexport const getIpRestrictionValidationSchema = () =>\n yup.object().shape({\n ipStart: yup\n .string()\n .validIp(t(\"neetoMolecules.ipRestriction.validations.invalidIp\"))\n .required(t(\"neetoMolecules.ipRestriction.validations.ipStartRequired\")),\n ipEnd: yup\n .string()\n .validIp(t(\"neetoMolecules.ipRestriction.validations.invalidIp\"))\n .when(\"ipStart\", (ipStart, schema) =>\n schema.test({\n test: ipEnd => areIpAddressesInSameFormat(ipStart, ipEnd),\n message: t(\n \"neetoMolecules.ipRestriction.validations.eitherIpv4OrIpv6\"\n ),\n })\n )\n .when(\"ipStart\", (ipStart, schema) =>\n schema.test({\n test: ipEnd => isValidIPRange(ipStart, ipEnd),\n message: t(\n \"neetoMolecules.ipRestriction.validations.ipEndGreaterThanIpStart\"\n ),\n })\n )\n .required(t(\"neetoMolecules.ipRestriction.validations.ipEndRequired\")),\n // v2 Select stores the scalar option value (string), not the option object.\n addressType: yup\n .string()\n .nullable()\n .required(\n t(\"neetoMolecules.ipRestriction.validations.addressTypeRequired\")\n ),\n });\n\nexport const buildInitialValue = (isIpRestrictionEnabled, allowedIpRanges) => ({\n ipRestriction: isIpRestrictionEnabled,\n allowedIpRanges,\n});\n\nexport const buildIpRestrictionPayload = values => ({\n isIpRestrictionEnabled: values.ipRestriction,\n allowedIpRanges: values.allowedIpRanges,\n});\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nimport { getIpRestrictionValidationSchema } from \"./utils\";\n\nexport const IP_RESTRICTIONS_ENGINE_BASE_URL = \"/neeto_ip_restrictions/api/v1\";\n\nexport const QUERY_KEYS = {\n IP_RESTRICTION: \"IP_RESTRICTION\",\n ALLOWED_IP_RANGES: \"ALLOWED_IP_RANGES\",\n CURRENT_IP: \"CURRENT_IP\",\n};\n\nexport const TRUNCATE_LENGTH = 18;\n\nexport const ADDRESS_TYPE_SELECT_OPTIONS = [\n { label: t(\"neetoMolecules.ipRestriction.ipv4\"), value: \"ipv4\" },\n { label: t(\"neetoMolecules.ipRestriction.ipv6\"), value: \"ipv6\" },\n];\n\nexport const INITIAL_VALUES = {\n ipStart: \"\",\n ipEnd: \"\",\n addressType: ADDRESS_TYPE_SELECT_OPTIONS[0].value,\n};\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n ipRestriction: yup.boolean(),\n allowedIpRanges: yup.array().of(getIpRestrictionValidationSchema()),\n});\n\nexport const NEW_ALLOWED_IP_RANGE = {\n ipStart: \"\",\n ipEnd: \"\",\n addressType: null,\n createdAt: new Date().toISOString(),\n};\n","import { Button, Label } from \"@bigbinary/neeto-atoms\";\nimport { Input, Select } from \"@bigbinary/neeto-atoms/formik\";\nimport { Trash2 } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport { ADDRESS_TYPE_SELECT_OPTIONS } from \"../constants\";\n\n// The fields render their own mobile-only labels instead of passing `label`\n// to the atoms fields: a labelled atoms field keeps its (empty) label row in\n// the flow on desktop, and the field column's gap pushes the control 8px\n// below the row top, misaligning it with the delete button.\nconst AllowedIpRange = withT(({ t, index, arrayHelpers }) => (\n <div className=\"border-border relative flex items-start gap-3 rounded-lg border p-4 pe-14 md:static md:rounded-none md:border-none md:p-0 md:pe-0\">\n <div className=\"grid flex-grow grid-cols-1 gap-3 md:grid-cols-3\">\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.ipStart\")}\n </Label>\n <Input\n aria-label={t(\"neetoMolecules.ipRestriction.ipStart\")}\n className=\"text-start\"\n data-testid=\"ip-start-text-field\"\n name={`allowedIpRanges.${index}.ipStart`}\n placeholder={t(\"neetoMolecules.ipRestriction.ipStart\")}\n />\n </div>\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.ipEnd\")}\n </Label>\n <Input\n aria-label={t(\"neetoMolecules.ipRestriction.ipEnd\")}\n className=\"text-start\"\n data-testid=\"ip-end-text-field\"\n name={`allowedIpRanges.${index}.ipEnd`}\n placeholder={t(\"neetoMolecules.ipRestriction.ipEnd\")}\n />\n </div>\n <div className=\"flex flex-col gap-2\">\n <Label className=\"md:hidden\">\n {t(\"neetoMolecules.ipRestriction.type\")}\n </Label>\n <Select\n aria-label={t(\"neetoMolecules.ipRestriction.type\")}\n className=\"text-start\"\n data-testid=\"address-type-select-field\"\n name={`allowedIpRanges.${index}.addressType`}\n options={ADDRESS_TYPE_SELECT_OPTIONS}\n />\n </div>\n </div>\n <div className=\"absolute end-3 top-3 md:static md:flex md:min-w-14 md:flex-shrink-0 md:justify-center\">\n <Button\n data-testid=\"allowed-ip-range-delete-button\"\n icon={Trash2}\n size=\"icon\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.discard\"),\n position: \"top\",\n }}\n onClick={() => arrayHelpers.remove(index)}\n />\n </div>\n </div>\n));\n\nexport default AllowedIpRange;\n","import { memo } from \"react\";\n\nimport { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { FieldArray } from \"formik\";\nimport { Plus } from \"lucide-react\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport AllowedIpRange from \"./AllowedIpRange\";\n\nimport { NEW_ALLOWED_IP_RANGE } from \"../constants\";\n\nconst AllowedIpRanges = withT(({ t }) => (\n <div\n className=\"flex flex-col gap-y-5\"\n data-testid=\"allowed-ip-range-container\"\n >\n <Typography data-testid=\"allowed-ip-range-heading\" variant=\"h6\">\n {t(\"neetoMolecules.ipRestriction.allowedIpRangeTitle\")}\n </Typography>\n <div className=\"flex flex-col gap-y-3\">\n <div className=\"hidden gap-3 md:flex\">\n <div className=\"grid flex-grow grid-cols-3 gap-3\">\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.ipStart\")}*\n </Typography>\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.ipEnd\")}*\n </Typography>\n <Typography\n className=\"uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.type\")}*\n </Typography>\n </div>\n <div className=\"min-w-14 flex-shrink-0\">\n <Typography\n className=\"text-center uppercase\"\n color=\"muted\"\n variant=\"caption\"\n weight=\"bold\"\n >\n {t(\"neetoMolecules.ipRestriction.actions\")}\n </Typography>\n </div>\n </div>\n <div className=\"flex w-full flex-col gap-y-6 md:gap-y-4\">\n <FieldArray name=\"allowedIpRanges\">\n {arrayHelpers => (\n <>\n {arrayHelpers.form.values.allowedIpRanges.map(\n (allowedIpRange, index) => (\n <div className=\"w-full\" key={index}>\n <AllowedIpRange\n {...{ allowedIpRange, arrayHelpers, index }}\n key={allowedIpRange.createdAt}\n />\n </div>\n )\n )}\n <Button\n className=\"self-start md:mt-2\"\n data-testid=\"add-allowed-ip-range-button\"\n icon={Plus}\n iconPosition=\"left\"\n label={t(\"neetoMolecules.ipRestriction.addNew\")}\n variant=\"link\"\n onClick={() => arrayHelpers.push(NEW_ALLOWED_IP_RANGE)}\n />\n </>\n )}\n </FieldArray>\n </div>\n </div>\n </div>\n));\n\nexport default memo(AllowedIpRanges);\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst show = params =>\n axios.get(`${IP_RESTRICTIONS_ENGINE_BASE_URL}/current_ip`, { params });\n\nconst currentIpApi = { show };\n\nexport default currentIpApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport currentIpApi from \"../../apis/current_ip\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { CURRENT_IP } = QUERY_KEYS;\n\nconst useShowCurrentIp = () =>\n useQuery({\n queryKey: [CURRENT_IP],\n queryFn: () => currentIpApi.show(),\n });\n\nexport { useShowCurrentIp };\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans } from \"react-i18next\";\n\nimport { useShowCurrentIp } from \"./hooks/reactQuery/useCurrentIp\";\n\nconst CurrentIp = () => {\n const { data, isLoading } = useShowCurrentIp();\n\n return (\n <div\n className=\"flex flex-wrap items-baseline gap-1\"\n data-testid=\"current-ip-container\"\n >\n <Typography>\n <Trans\n i18nKey=\"neetoMolecules.ipRestriction.currentIpMessage\"\n values={{ ip: isLoading ? \"...\" : data.ip }}\n />\n </Typography>\n </div>\n );\n};\n\nexport default memo(CurrentIp);\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst allowedIpRangesUrl = `${IP_RESTRICTIONS_ENGINE_BASE_URL}/allowed_ips`;\n\nconst fetch = () => axios.get(allowedIpRangesUrl);\n\nconst create = payload =>\n axios.post(allowedIpRangesUrl, { allowedIpRange: payload });\n\nconst destroy = id => axios.delete(`${allowedIpRangesUrl}/${id}`);\n\nconst update = ({ id, payload }) =>\n axios.patch(`${allowedIpRangesUrl}/${id}`, {\n allowedIpRange: payload,\n });\n\nconst allowedIpRangesApi = { fetch, create, destroy, update };\n\nexport default allowedIpRangesApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport allowedIpRangesApi from \"../../apis/allowed_ip_ranges\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { ALLOWED_IP_RANGES } = QUERY_KEYS;\n\nconst useFetchAllowedIpRanges = options =>\n useQuery({\n queryKey: [ALLOWED_IP_RANGES],\n queryFn: () => allowedIpRangesApi.fetch(),\n ...options,\n });\n\nconst useCreateAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.create, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nconst useDestroyAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.destroy, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nconst useUpdateAllowedIpRanges = () =>\n useMutationWithInvalidation(allowedIpRangesApi.update, {\n keysToInvalidate: [[ALLOWED_IP_RANGES]],\n });\n\nexport {\n useFetchAllowedIpRanges,\n useCreateAllowedIpRanges,\n useDestroyAllowedIpRanges,\n useUpdateAllowedIpRanges,\n};\n","import axios from \"axios\";\n\nimport { IP_RESTRICTIONS_ENGINE_BASE_URL } from \"../constants\";\n\nconst ipRestrictionUrl = `${IP_RESTRICTIONS_ENGINE_BASE_URL}/ip_restriction`;\n\nconst update = params =>\n axios.patch(ipRestrictionUrl, { ipRestriction: params });\n\nconst show = () => axios.get(ipRestrictionUrl);\n\nconst ipRestrictionApi = { update, show };\n\nexport default ipRestrictionApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/v2/react-utils/useMutationWithInvalidation\";\n\nimport ipRestrictionApi from \"../../apis/ip_restriction\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { IP_RESTRICTION, ALLOWED_IP_RANGES } = QUERY_KEYS;\n\nconst useShowIpRestriction = () =>\n useQuery({\n queryKey: [IP_RESTRICTION],\n queryFn: () => ipRestrictionApi.show(),\n });\n\nconst useUpdateIpRestriction = () =>\n useMutationWithInvalidation(ipRestrictionApi.update, {\n keysToInvalidate: [[IP_RESTRICTION], [ALLOWED_IP_RANGES]],\n });\n\nexport { useShowIpRestriction, useUpdateIpRestriction };\n","import { memo, useState } from \"react\";\n\nimport {\n Alert,\n Button,\n Callout,\n Spinner,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport {\n Form as NeetoUIForm,\n Switch,\n Button as FormikButton,\n BlockNavigation,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport classnames from \"classnames\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport AllowedIpRanges from \"./AllowedIpRanges\";\nimport { VALIDATION_SCHEMA } from \"./constants\";\nimport CurrentIp from \"./CurrentIp\";\nimport { useFetchAllowedIpRanges } from \"./hooks/reactQuery/useAllowedIpRanges\";\nimport {\n useShowIpRestriction,\n useUpdateIpRestriction,\n} from \"./hooks/reactQuery/useIpRestrictions\";\nimport { buildInitialValue, buildIpRestrictionPayload } from \"./utils\";\n\nimport CardLayout from \"../CardLayout\";\n\nconst NoIcon = () => null;\n\nconst IpRestriction = () => {\n const { t } = useTranslation();\n const [isAlertOpen, setIsAlertOpen] = useState(false);\n\n const {\n data: { isIpRestrictionEnabled } = {},\n isLoading: isFetchingIpRestriction,\n } = useShowIpRestriction();\n\n const {\n data: allowedIpRanges,\n isLoading: isFetchingAllowedIpRanges,\n isRefetching,\n } = useFetchAllowedIpRanges({ enabled: isIpRestrictionEnabled });\n\n const {\n mutate: updateIpRestriction,\n mutateAsync: updateIpRestrictionAsync,\n isPending: isUpdating,\n } = useUpdateIpRestriction();\n\n if (isFetchingIpRestriction || isFetchingAllowedIpRanges || isRefetching) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const handleSubmit = (values, formikBag) => {\n if (values.ipRestriction) {\n setIsAlertOpen(true);\n\n return Promise.reject(new Error(\"pending confirmation\"));\n }\n\n return handleUpdateIpRestriction(values, formikBag, {\n mutation: updateIpRestrictionAsync,\n });\n };\n\n const handleCloseAlert = setSubmitting => {\n setIsAlertOpen(false);\n setSubmitting(false);\n };\n\n const handleUpdateIpRestriction = (\n values,\n { setSubmitting, resetForm },\n { mutation = updateIpRestriction } = {}\n ) =>\n mutation(buildIpRestrictionPayload(values), {\n onSuccess: () => {\n setIsAlertOpen(false);\n setSubmitting(false);\n resetForm({ values });\n },\n onError: () => {\n setIsAlertOpen(false);\n setSubmitting(false);\n },\n });\n\n return (\n <NeetoUIForm\n className=\"w-full\"\n formikProps={{\n initialValues: buildInitialValue(\n isIpRestrictionEnabled,\n allowedIpRanges\n ),\n validationSchema: VALIDATION_SCHEMA,\n validateOnBlur: true,\n enableReinitialize: true,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, dirty, resetForm, setSubmitting }) => (\n <CardLayout\n actionBlock={\n <div className=\"flex flex-wrap items-center gap-2\">\n <FormikButton\n data-testid=\"ip-restriction-save-changes\"\n loading={isUpdating}\n >\n {t(\"neetoMolecules.common.actions.saveChanges\")}\n </FormikButton>\n <Button\n data-testid=\"ip-restriction-reset-btn\"\n disabled={!dirty}\n label={t(\"neetoMolecules.common.actions.reset\")}\n type=\"reset\"\n variant=\"secondary\"\n onClick={resetForm}\n />\n {dirty && (\n <Typography color=\"destructive\" variant=\"body2\">\n {t(\"neetoMolecules.ipRestriction.validations.unsavedChanges\")}\n </Typography>\n )}\n </div>\n }\n >\n <BlockNavigation />\n <div\n className={classnames(\"flex flex-col gap-y-2\", {\n \"pb-6\": values.ipRestriction,\n })}\n >\n <Switch\n className=\"flex-grow-0\"\n data-testid=\"enable-ip-restriction-switch\"\n disabled={isFetchingIpRestriction || isUpdating}\n id=\"ipRestriction\"\n label={t(\"neetoMolecules.ipRestriction.switchLabel\")}\n name=\"ipRestriction\"\n size=\"lg\"\n labelProps={{\n className: \"text-xl font-semibold leading-tight\",\n }}\n />\n <Typography\n data-testid=\"ip-restriction-description\"\n variant=\"body2\"\n >\n {t(\"neetoMolecules.ipRestriction.description\")}\n </Typography>\n </div>\n {values.ipRestriction && (\n <div className=\"border-border flex w-full flex-col gap-y-6 border-t pt-6\">\n <CurrentIp />\n <AllowedIpRanges />\n <Callout icon={NoIcon} variant=\"warning\">\n <div className=\"py-1 whitespace-pre-wrap\">\n <Trans i18nKey=\"neetoMolecules.ipRestriction.warningMessage\" />\n </div>\n </Callout>\n </div>\n )}\n <Alert\n isOpen={isAlertOpen}\n isSubmitting={isUpdating}\n title={t(\"neetoMolecules.ipRestriction.enableAlert.title\")}\n message={\n <Trans i18nKey=\"neetoMolecules.ipRestriction.enableAlert.message\" />\n }\n submitButtonLabel={t(\n \"neetoMolecules.ipRestriction.enableAlert.submitButtonLabel\"\n )}\n onClose={() => handleCloseAlert(setSubmitting)}\n onSubmit={() =>\n handleUpdateIpRestriction(values, { setSubmitting, resetForm })\n }\n />\n </CardLayout>\n )}\n </NeetoUIForm>\n );\n};\n\nexport default memo(IpRestriction);\n"],"names":["isValidIPv4String","ip","isNotNil","Validator","isValidIPv6String","isValidIpString","areIpAddressesInSameFormat","ipStart","ipEnd","isValidIPv4Range","ipStartAddr","IPv4","fromDecimalDottedString","ipEndAddr","isLessThanOrEquals","isValidIPv6Range","IPv6","fromString","isValidIPRange","yup","addMethod","string","errorMessage","test","value","isNil","isValidIp","createError","path","message","getIpRestrictionValidationSchema","object","shape","validIp","t","required","when","schema","addressType","nullable","buildInitialValue","isIpRestrictionEnabled","allowedIpRanges","ipRestriction","buildIpRestrictionPayload","values","IP_RESTRICTIONS_ENGINE_BASE_URL","QUERY_KEYS","IP_RESTRICTION","ALLOWED_IP_RANGES","CURRENT_IP","ADDRESS_TYPE_SELECT_OPTIONS","label","VALIDATION_SCHEMA","array","of","NEW_ALLOWED_IP_RANGE","createdAt","Date","toISOString","AllowedIpRange","withT","_ref","index","arrayHelpers","_jsxs","className","children","_jsx","Label","Input","name","concat","placeholder","Select","options","Button","icon","Trash2","size","variant","tooltipProps","content","position","onClick","remove","AllowedIpRanges","Typography","color","weight","FieldArray","_Fragment","form","map","allowedIpRange","_createElement","key","Plus","iconPosition","push","memo","show","params","axios","get","currentIpApi","useShowCurrentIp","useQuery","queryKey","queryFn","CurrentIp","_useShowCurrentIp","data","isLoading","Trans","i18nKey","allowedIpRangesUrl","fetch","create","payload","post","destroy","id","update","patch","allowedIpRangesApi","useFetchAllowedIpRanges","_objectSpread","ipRestrictionUrl","ipRestrictionApi","useShowIpRestriction","useUpdateIpRestriction","useMutationWithInvalidation","keysToInvalidate","NoIcon","IpRestriction","_useTranslation","useTranslation","_useState","useState","_useState2","_slicedToArray","isAlertOpen","setIsAlertOpen","_useShowIpRestriction","_useShowIpRestriction2","_useShowIpRestriction3","isFetchingIpRestriction","_useFetchAllowedIpRan","enabled","isFetchingAllowedIpRanges","isRefetching","_useUpdateIpRestricti","updateIpRestriction","mutate","updateIpRestrictionAsync","mutateAsync","isUpdating","isPending","Spinner","handleSubmit","formikBag","Promise","reject","Error","handleUpdateIpRestriction","mutation","handleCloseAlert","setSubmitting","resetForm","_ref2","arguments","length","undefined","_ref2$mutation","onSuccess","onError","NeetoUIForm","formikProps","initialValues","validationSchema","validateOnBlur","enableReinitialize","onSubmit","_ref3","dirty","CardLayout","actionBlock","FormikButton","loading","disabled","type","BlockNavigation","classnames","Switch","labelProps","Callout","Alert","isOpen","isSubmitting","title","submitButtonLabel","onClose"],"mappings":"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"}
|
package/dist/cjs/v2/MadeWith.js
CHANGED
|
@@ -4,6 +4,7 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
|
4
4
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var neetoAtoms = require('@bigbinary/neeto-atoms');
|
|
7
|
+
var classnames = require('classnames');
|
|
7
8
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
8
9
|
var initializers = require('@bigbinary/neeto-commons-frontend/v2/initializers');
|
|
9
10
|
var Icons = require('@bigbinary/neeto-icons/logos');
|
|
@@ -31,24 +32,25 @@ function _interopNamespaceDefault(e) {
|
|
|
31
32
|
|
|
32
33
|
var Icons__namespace = /*#__PURE__*/_interopNamespaceDefault(Icons);
|
|
33
34
|
|
|
34
|
-
var _excluded = ["productName", "productIcon"];
|
|
35
|
+
var _excluded = ["productName", "productIcon", "className"];
|
|
35
36
|
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; }
|
|
36
37
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
37
38
|
var MadeWith = function MadeWith(_ref) {
|
|
38
39
|
var _globalProps$organiza;
|
|
39
40
|
var productName = _ref.productName,
|
|
40
41
|
ProductIcon = _ref.productIcon,
|
|
42
|
+
className = _ref.className,
|
|
41
43
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
42
44
|
var name = neetoCist.capitalize(productName || initializers.globalProps.appName || "Neeto");
|
|
43
45
|
var subdomain = (_globalProps$organiza = initializers.globalProps.organization) === null || _globalProps$organiza === void 0 ? void 0 : _globalProps$organiza.subdomain;
|
|
44
46
|
var utmParams = "utm_source=madewith".concat(subdomain ? "&utm_campaign=".concat(subdomain) : "");
|
|
45
47
|
var IconComponent = ProductIcon || Icons__namespace[index$1.uppercamelcase(name)];
|
|
46
48
|
return /*#__PURE__*/jsxRuntime.jsxs("a", _objectSpread(_objectSpread({
|
|
47
|
-
className: "bg-background text-foreground border-border hover:ring-border inline-flex items-center gap-1.5 rounded-md border px-2 py-1.5 text-sm font-normal no-underline transition-all duration-300 select-none hover:ring-1 hover:ring-inset motion-reduce:transition-none",
|
|
48
49
|
"data-testid": "made-with-".concat(name.toLowerCase()),
|
|
49
50
|
href: "https://www.neeto.com/".concat(name.toLowerCase(), "?").concat(utmParams),
|
|
50
51
|
rel: "noreferrer",
|
|
51
|
-
target: "_blank"
|
|
52
|
+
target: "_blank",
|
|
53
|
+
className: classnames("neeto-molecules-made-with__wrapper", "bg-background text-foreground border-border hover:ring-border inline-flex items-center gap-1.5 rounded-md border px-2 py-1.5 text-sm font-normal no-underline transition-all duration-300 select-none hover:ring-1 hover:ring-inset motion-reduce:transition-none", className)
|
|
52
54
|
}, otherProps), {}, {
|
|
53
55
|
children: [IconComponent && /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
54
56
|
"data-testid": "made-with-".concat(name.toLowerCase(), "-icon"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MadeWith.js","sources":["../../../src/v2/components/MadeWith/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport * as Icons from \"neetoicons/logos\";\nimport PropTypes from \"prop-types\";\nimport { Trans } from \"react-i18next\";\nimport uppercamelcase from \"uppercamelcase\";\n\nconst MadeWith = ({
|
|
1
|
+
{"version":3,"file":"MadeWith.js","sources":["../../../src/v2/components/MadeWith/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport * as Icons from \"neetoicons/logos\";\nimport PropTypes from \"prop-types\";\nimport { Trans } from \"react-i18next\";\nimport uppercamelcase from \"uppercamelcase\";\n\nconst MadeWith = ({\n productName,\n productIcon: ProductIcon,\n className,\n ...otherProps\n}) => {\n const name = capitalize(productName || globalProps.appName || \"Neeto\");\n const subdomain = globalProps.organization?.subdomain;\n const utmParams = `utm_source=madewith${\n subdomain ? `&utm_campaign=${subdomain}` : \"\"\n }`;\n\n const IconComponent = ProductIcon || Icons[uppercamelcase(name)];\n\n return (\n <a\n data-testid={`made-with-${name.toLowerCase()}`}\n href={`https://www.neeto.com/${name.toLowerCase()}?${utmParams}`}\n rel=\"noreferrer\"\n target=\"_blank\"\n className={classnames(\n \"neeto-molecules-made-with__wrapper\",\n \"bg-background text-foreground border-border hover:ring-border inline-flex items-center gap-1.5 rounded-md border px-2 py-1.5 text-sm font-normal no-underline transition-all duration-300 select-none hover:ring-1 hover:ring-inset motion-reduce:transition-none\",\n className\n )}\n {...otherProps}\n >\n {IconComponent && (\n <span data-testid={`made-with-${name.toLowerCase()}-icon`}>\n <IconComponent size={14} />\n </span>\n )}\n <Typography className=\"leading-snug\" variant=\"body2\">\n <Trans\n i18nKey=\"neetoMolecules.common.madeWith\"\n values={{ productName: name }}\n />\n </Typography>\n </a>\n );\n};\n\nMadeWith.propTypes = {\n /**\n * Product name to be displayed on the component (optional).\n */\n productName: PropTypes.string,\n\n /**\n * Product icon component to be displayed on the badge (optional).\n */\n productIcon: PropTypes.elementType,\n\n /**\n * Additional class names to merge onto the badge root (optional).\n */\n className: PropTypes.string,\n};\n\nexport default memo(MadeWith);\n"],"names":["MadeWith","_ref","_globalProps$organiza","productName","ProductIcon","productIcon","className","otherProps","_objectWithoutProperties","_excluded","name","capitalize","globalProps","appName","subdomain","organization","utmParams","concat","IconComponent","Icons","uppercamelcase","_jsxs","_objectSpread","toLowerCase","href","rel","target","classnames","children","_jsx","size","Typography","variant","Trans","i18nKey","values","memo"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,QAAQ,GAAG,SAAXA,QAAQA,CAAAC,IAAA,EAKR;AAAA,EAAA,IAAAC,qBAAA;AAAA,EAAA,IAJJC,WAAW,GAAAF,IAAA,CAAXE,WAAW;IACEC,WAAW,GAAAH,IAAA,CAAxBI,WAAW;IACXC,SAAS,GAAAL,IAAA,CAATK,SAAS;AACNC,IAAAA,UAAU,GAAAC,wBAAA,CAAAP,IAAA,EAAAQ,SAAA,CAAA;EAEb,IAAMC,IAAI,GAAGC,oBAAU,CAACR,WAAW,IAAIS,wBAAW,CAACC,OAAO,IAAI,OAAO,CAAC;AACtE,EAAA,IAAMC,SAAS,GAAA,CAAAZ,qBAAA,GAAGU,wBAAW,CAACG,YAAY,MAAA,IAAA,IAAAb,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,qBAAA,CAA0BY,SAAS;EACrD,IAAME,SAAS,GAAA,qBAAA,CAAAC,MAAA,CACbH,SAAS,GAAA,gBAAA,CAAAG,MAAA,CAAoBH,SAAS,CAAA,GAAK,EAAE,CAC7C;EAEF,IAAMI,aAAa,GAAGd,WAAW,IAAIe,gBAAK,CAACC,sBAAc,CAACV,IAAI,CAAC,CAAC;AAEhE,EAAA,oBACEW,eAAA,CAAA,GAAA,EAAAC,aAAA,CAAAA,aAAA,CAAA;AACE,IAAA,aAAA,EAAA,YAAA,CAAAL,MAAA,CAA0BP,IAAI,CAACa,WAAW,EAAE,CAAG;AAC/CC,IAAAA,IAAI,EAAA,wBAAA,CAAAP,MAAA,CAA2BP,IAAI,CAACa,WAAW,EAAE,EAAA,GAAA,CAAA,CAAAN,MAAA,CAAID,SAAS,CAAG;AACjES,IAAAA,GAAG,EAAC,YAAY;AAChBC,IAAAA,MAAM,EAAC,QAAQ;AACfpB,IAAAA,SAAS,EAAEqB,UAAU,CACnB,oCAAoC,EACpC,mQAAmQ,EACnQrB,SACF;AAAE,GAAA,EACEC,UAAU,CAAA,EAAA,EAAA,EAAA;IAAAqB,QAAA,EAAA,CAEbV,aAAa,iBACZW,cAAA,CAAA,MAAA,EAAA;AAAM,MAAA,aAAA,EAAA,YAAA,CAAAZ,MAAA,CAA0BP,IAAI,CAACa,WAAW,EAAE,EAAA,OAAA,CAAQ;MAAAK,QAAA,eACxDC,cAAA,CAACX,aAAa,EAAA;AAACY,QAAAA,IAAI,EAAE;OAAK;AAAC,KACvB,CACP,eACDD,cAAA,CAACE,qBAAU,EAAA;AAACzB,MAAAA,SAAS,EAAC,cAAc;AAAC0B,MAAAA,OAAO,EAAC,OAAO;MAAAJ,QAAA,eAClDC,cAAA,CAACI,kBAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,gCAAgC;AACxCC,QAAAA,MAAM,EAAE;AAAEhC,UAAAA,WAAW,EAAEO;AAAK;OAC7B;AAAC,KACQ,CAAC;AAAA,GAAA,CACZ,CAAC;AAER,CAAC;AAmBD,YAAA,aAAe0B,UAAI,CAACpC,QAAQ,CAAC;;;;"}
|
|
@@ -86,9 +86,12 @@ var MenuItem = function MenuItem(_ref) {
|
|
|
86
86
|
}, menuItemProps)));
|
|
87
87
|
}
|
|
88
88
|
return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu.MenuItem, _objectSpread$1(_objectSpread$1({
|
|
89
|
-
onClick: onClick,
|
|
90
89
|
role: "menuitem"
|
|
91
|
-
},
|
|
90
|
+
}, _objectSpread$1(_objectSpread$1({
|
|
91
|
+
onClick: onClick
|
|
92
|
+
}, typeof label === "string" && {
|
|
93
|
+
"data-testid": "".concat(neetoCist.hyphenate(label), "-menu-item")
|
|
94
|
+
}), menuItemProps)), {}, {
|
|
92
95
|
children: label
|
|
93
96
|
}));
|
|
94
97
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MoreDropdown.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.mjs","../../../src/v2/components/MoreDropdown/constants.js","../../../src/v2/components/MoreDropdown/Submenu.jsx","../../../src/v2/components/MoreDropdown/MenuItem.jsx","../../../src/v2/components/MoreDropdown/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\"circle\", { cx: \"12\", cy: \"5\", r: \"1\", key: \"gxeob9\" }],\n [\"circle\", { cx: \"12\", cy: \"19\", r: \"1\", key: \"lyex9k\" }]\n];\nconst EllipsisVertical = createLucideIcon(\"ellipsis-vertical\", __iconNode);\n\nexport { __iconNode, EllipsisVertical as default };\n//# sourceMappingURL=ellipsis-vertical.mjs.map\n","const MENU_ITEM_TYPES = { menuItem: \"menuItem\", divider: \"divider\" };\n\nconst DEFAULT_TOOLTIP_PROPS = { disabled: true, position: \"bottom\" };\n\nconst BUTTON_VARIANTS = [\n \"default\",\n \"secondary\",\n \"destructive\",\n \"destructive-soft\",\n \"outline\",\n \"ghost\",\n \"link\",\n];\n\nconst BUTTON_SIZES = [\n \"default\",\n \"xs\",\n \"sm\",\n \"lg\",\n \"icon\",\n \"icon-xs\",\n \"icon-sm\",\n \"icon-lg\",\n];\n\nconst DROPDOWN_POSITIONS = [\n \"top\",\n \"right\",\n \"bottom\",\n \"left\",\n \"top-start\",\n \"top-end\",\n \"bottom-start\",\n \"bottom-end\",\n \"left-start\",\n \"left-end\",\n \"right-start\",\n \"right-end\",\n \"auto\",\n];\n\nexport {\n MENU_ITEM_TYPES,\n DEFAULT_TOOLTIP_PROPS,\n BUTTON_VARIANTS,\n BUTTON_SIZES,\n DROPDOWN_POSITIONS,\n};\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst Submenu = withT(({ t, label, menuItems = [] }) => (\n <DropdownMenu.SubMenu\n {...{ label }}\n triggerProps={{ \"aria-haspopup\": \"menu\" }}\n contentProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.submenuAriaLabel\", {\n label,\n }),\n }}\n >\n {menuItems.map(({ isVisible = true, key, ...itemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(itemProps.label || \"menu-item\")}\n {...itemProps}\n />\n );\n })}\n </DropdownMenu.SubMenu>\n));\n\nexport default Submenu;\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\n\nimport Submenu from \"./Submenu\";\n\nconst MenuItem = ({\n onClick,\n label,\n type = \"menuItem\",\n hasSubItems = false,\n menuItems,\n dropdownProps,\n ...menuItemProps\n}) => {\n if (type === \"divider\") return <DropdownMenu.Divider role=\"separator\" />;\n\n if (hasSubItems) {\n return (\n <Submenu {...{ dropdownProps, label, menuItems, ...menuItemProps }} />\n );\n }\n\n return (\n <DropdownMenu.MenuItem {...{ onClick }} role=\"menuitem\" {...menuItemProps}>\n {label}\n </DropdownMenu.MenuItem>\n );\n};\n\nexport default MenuItem;\n","import { Button, DropdownMenu, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Ellipsis, EllipsisVertical } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n BUTTON_SIZES,\n BUTTON_VARIANTS,\n DEFAULT_TOOLTIP_PROPS,\n DROPDOWN_POSITIONS,\n MENU_ITEM_TYPES,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const { t } = useTranslation();\n\n const {\n isRounded: isRoundedButton,\n size: buttonSize = \"icon\",\n tooltipProps: customTooltipProps,\n variant = \"ghost\",\n ...buttonProps\n } = dropdownButtonProps;\n\n const tooltipProps = mergeRight(DEFAULT_TOOLTIP_PROPS, customTooltipProps);\n\n const TargetIcon = isVertical ? EllipsisVertical : Ellipsis;\n\n const { className: contentClassName, ...restDropdownProps } = dropdownProps;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n\n const triggerClassName = classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n });\n\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip\n content={tooltipProps.content}\n position={tooltipProps.position || \"bottom\"}\n >\n <span>\n <Button\n {...{ variant }}\n disabled\n className={triggerClassName}\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"more-dropdown-button\"\n icon={TargetIcon}\n size={buttonSize}\n {...buttonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <DropdownMenu\n customTarget={\n <Button\n {...{ variant }}\n aria-haspopup=\"menu\"\n aria-label={t(\"neetoMolecules.moreDropdown.buttonAriaLabel\")}\n className={triggerClassName}\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"nui-dropdown-icon\"\n disabled={isDropdownDisabled}\n icon={TargetIcon}\n size={buttonSize}\n {...buttonProps}\n />\n }\n dropdownProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.menuAriaLabel\"),\n className: contentClassName,\n }}\n {...restDropdownProps}\n >\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(menuItemProps.label || \"menu-item\")}\n {...menuItemProps}\n />\n );\n })}\n {menuBottomChildren}\n </DropdownMenu>\n );\n};\n\nMoreDropdown.propTypes = {\n /**\n * Props forwarded to the trigger Button (atom). Accepts every Button prop;\n * the listed keys are the most relevant.\n */\n dropdownButtonProps: PropTypes.shape({\n variant: PropTypes.oneOf(BUTTON_VARIANTS),\n size: PropTypes.oneOf(BUTTON_SIZES),\n label: PropTypes.string,\n isRounded: PropTypes.bool,\n disabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.node,\n position: PropTypes.oneOf(DROPDOWN_POSITIONS),\n disabled: PropTypes.bool,\n }),\n }),\n /** Render `EllipsisVertical` instead of `Ellipsis` for the trigger icon. */\n isVertical: PropTypes.bool,\n /** Disable the entire dropdown (trigger + menu). */\n isDisabled: PropTypes.bool,\n /**\n * Props forwarded to the underlying atom `DropdownMenu`.\n */\n dropdownProps: PropTypes.shape({\n position: PropTypes.oneOf(DROPDOWN_POSITIONS),\n closeOnEsc: PropTypes.bool,\n closeOnSelect: PropTypes.bool,\n closeOnOutsideClick: PropTypes.bool,\n isOpen: PropTypes.bool,\n onClose: PropTypes.func,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n }),\n /** Rendered above the dynamic `menuItems` inside the dropdown menu. */\n menuTopChildren: PropTypes.node,\n /** Rendered below the dynamic `menuItems` inside the dropdown menu. */\n menuBottomChildren: PropTypes.node,\n /**\n * Each entry accepts every `DropdownMenu.MenuItem` prop (`prefix`, `suffix`,\n * `variant`, `isDisabled`, `to`, `href`, …) plus the wrapper-only fields below.\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 hasSubItems: PropTypes.bool,\n menuItems: PropTypes.array,\n })\n ),\n};\n\nexport default MoreDropdown;\n"],"names":["createLucideIcon","DEFAULT_TOOLTIP_PROPS","disabled","position","Submenu","withT","_ref","t","label","_ref$menuItems","menuItems","_jsx","DropdownMenu","SubMenu","triggerProps","contentProps","children","map","_ref2","_ref2$isVisible","isVisible","key","itemProps","_objectWithoutProperties","_excluded","MenuItem","_objectSpread","hyphenate","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","dropdownProps","menuItemProps","Divider","role","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_useTranslation","useTranslation","isRoundedButton","isRounded","_dropdownButtonProps$","size","buttonSize","customTooltipProps","tooltipProps","_dropdownButtonProps$2","variant","buttonProps","mergeRight","TargetIcon","EllipsisVertical","Ellipsis","contentClassName","className","restDropdownProps","_excluded2","isDropdownDisabled","triggerClassName","classnames","Tooltip","content","Button","icon","_jsxs","customTarget","_excluded3"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"MoreDropdown.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.mjs","../../../src/v2/components/MoreDropdown/constants.js","../../../src/v2/components/MoreDropdown/Submenu.jsx","../../../src/v2/components/MoreDropdown/MenuItem.jsx","../../../src/v2/components/MoreDropdown/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\"circle\", { cx: \"12\", cy: \"5\", r: \"1\", key: \"gxeob9\" }],\n [\"circle\", { cx: \"12\", cy: \"19\", r: \"1\", key: \"lyex9k\" }]\n];\nconst EllipsisVertical = createLucideIcon(\"ellipsis-vertical\", __iconNode);\n\nexport { __iconNode, EllipsisVertical as default };\n//# sourceMappingURL=ellipsis-vertical.mjs.map\n","const MENU_ITEM_TYPES = { menuItem: \"menuItem\", divider: \"divider\" };\n\nconst DEFAULT_TOOLTIP_PROPS = { disabled: true, position: \"bottom\" };\n\nconst BUTTON_VARIANTS = [\n \"default\",\n \"secondary\",\n \"destructive\",\n \"destructive-soft\",\n \"outline\",\n \"ghost\",\n \"link\",\n];\n\nconst BUTTON_SIZES = [\n \"default\",\n \"xs\",\n \"sm\",\n \"lg\",\n \"icon\",\n \"icon-xs\",\n \"icon-sm\",\n \"icon-lg\",\n];\n\nconst DROPDOWN_POSITIONS = [\n \"top\",\n \"right\",\n \"bottom\",\n \"left\",\n \"top-start\",\n \"top-end\",\n \"bottom-start\",\n \"bottom-end\",\n \"left-start\",\n \"left-end\",\n \"right-start\",\n \"right-end\",\n \"auto\",\n];\n\nexport {\n MENU_ITEM_TYPES,\n DEFAULT_TOOLTIP_PROPS,\n BUTTON_VARIANTS,\n BUTTON_SIZES,\n DROPDOWN_POSITIONS,\n};\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst Submenu = withT(({ t, label, menuItems = [] }) => (\n <DropdownMenu.SubMenu\n {...{ label }}\n triggerProps={{ \"aria-haspopup\": \"menu\" }}\n contentProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.submenuAriaLabel\", {\n label,\n }),\n }}\n >\n {menuItems.map(({ isVisible = true, key, ...itemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(itemProps.label || \"menu-item\")}\n {...itemProps}\n />\n );\n })}\n </DropdownMenu.SubMenu>\n));\n\nexport default Submenu;\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\nimport { hyphenate } from \"neetocist\";\n\nimport Submenu from \"./Submenu\";\n\nconst MenuItem = ({\n onClick,\n label,\n type = \"menuItem\",\n hasSubItems = false,\n menuItems,\n dropdownProps,\n ...menuItemProps\n}) => {\n if (type === \"divider\") return <DropdownMenu.Divider role=\"separator\" />;\n\n if (hasSubItems) {\n return (\n <Submenu {...{ dropdownProps, label, menuItems, ...menuItemProps }} />\n );\n }\n\n return (\n <DropdownMenu.MenuItem\n role=\"menuitem\"\n {...{\n onClick,\n ...(typeof label === \"string\" && {\n \"data-testid\": `${hyphenate(label)}-menu-item`,\n }),\n ...menuItemProps,\n }}\n >\n {label}\n </DropdownMenu.MenuItem>\n );\n};\n\nexport default MenuItem;\n","import { Button, DropdownMenu, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Ellipsis, EllipsisVertical } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n BUTTON_SIZES,\n BUTTON_VARIANTS,\n DEFAULT_TOOLTIP_PROPS,\n DROPDOWN_POSITIONS,\n MENU_ITEM_TYPES,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const { t } = useTranslation();\n\n const {\n isRounded: isRoundedButton,\n size: buttonSize = \"icon\",\n tooltipProps: customTooltipProps,\n variant = \"ghost\",\n ...buttonProps\n } = dropdownButtonProps;\n\n const tooltipProps = mergeRight(DEFAULT_TOOLTIP_PROPS, customTooltipProps);\n\n const TargetIcon = isVertical ? EllipsisVertical : Ellipsis;\n\n const { className: contentClassName, ...restDropdownProps } = dropdownProps;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n\n const triggerClassName = classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n });\n\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip\n content={tooltipProps.content}\n position={tooltipProps.position || \"bottom\"}\n >\n <span>\n <Button\n {...{ variant }}\n disabled\n className={triggerClassName}\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"more-dropdown-button\"\n icon={TargetIcon}\n size={buttonSize}\n {...buttonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <DropdownMenu\n customTarget={\n <Button\n {...{ variant }}\n aria-haspopup=\"menu\"\n aria-label={t(\"neetoMolecules.moreDropdown.buttonAriaLabel\")}\n className={triggerClassName}\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"nui-dropdown-icon\"\n disabled={isDropdownDisabled}\n icon={TargetIcon}\n size={buttonSize}\n {...buttonProps}\n />\n }\n dropdownProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.menuAriaLabel\"),\n className: contentClassName,\n }}\n {...restDropdownProps}\n >\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(menuItemProps.label || \"menu-item\")}\n {...menuItemProps}\n />\n );\n })}\n {menuBottomChildren}\n </DropdownMenu>\n );\n};\n\nMoreDropdown.propTypes = {\n /**\n * Props forwarded to the trigger Button (atom). Accepts every Button prop;\n * the listed keys are the most relevant.\n */\n dropdownButtonProps: PropTypes.shape({\n variant: PropTypes.oneOf(BUTTON_VARIANTS),\n size: PropTypes.oneOf(BUTTON_SIZES),\n label: PropTypes.string,\n isRounded: PropTypes.bool,\n disabled: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n content: PropTypes.node,\n position: PropTypes.oneOf(DROPDOWN_POSITIONS),\n disabled: PropTypes.bool,\n }),\n }),\n /** Render `EllipsisVertical` instead of `Ellipsis` for the trigger icon. */\n isVertical: PropTypes.bool,\n /** Disable the entire dropdown (trigger + menu). */\n isDisabled: PropTypes.bool,\n /**\n * Props forwarded to the underlying atom `DropdownMenu`.\n */\n dropdownProps: PropTypes.shape({\n position: PropTypes.oneOf(DROPDOWN_POSITIONS),\n closeOnEsc: PropTypes.bool,\n closeOnSelect: PropTypes.bool,\n closeOnOutsideClick: PropTypes.bool,\n isOpen: PropTypes.bool,\n onClose: PropTypes.func,\n disabled: PropTypes.bool,\n className: PropTypes.string,\n }),\n /** Rendered above the dynamic `menuItems` inside the dropdown menu. */\n menuTopChildren: PropTypes.node,\n /** Rendered below the dynamic `menuItems` inside the dropdown menu. */\n menuBottomChildren: PropTypes.node,\n /**\n * Each entry accepts every `DropdownMenu.MenuItem` prop (`prefix`, `suffix`,\n * `variant`, `isDisabled`, `to`, `href`, …) plus the wrapper-only fields below.\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 hasSubItems: PropTypes.bool,\n menuItems: PropTypes.array,\n })\n ),\n};\n\nexport default MoreDropdown;\n"],"names":["createLucideIcon","DEFAULT_TOOLTIP_PROPS","disabled","position","Submenu","withT","_ref","t","label","_ref$menuItems","menuItems","_jsx","DropdownMenu","SubMenu","triggerProps","contentProps","children","map","_ref2","_ref2$isVisible","isVisible","key","itemProps","_objectWithoutProperties","_excluded","MenuItem","_objectSpread","hyphenate","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","dropdownProps","menuItemProps","Divider","role","concat","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_useTranslation","useTranslation","isRoundedButton","isRounded","_dropdownButtonProps$","size","buttonSize","customTooltipProps","tooltipProps","_dropdownButtonProps$2","variant","buttonProps","mergeRight","TargetIcon","EllipsisVertical","Ellipsis","contentClassName","className","restDropdownProps","_excluded2","isDropdownDisabled","triggerClassName","classnames","Tooltip","content","Button","icon","_jsxs","customTarget","_excluded3"],"mappings":"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","x_google_ignoreList":[0]}
|
|
@@ -64,6 +64,7 @@ var BulkOptionModal = function BulkOptionModal(_ref) {
|
|
|
64
64
|
};
|
|
65
65
|
return /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Dialog, {
|
|
66
66
|
isOpen: isOpen,
|
|
67
|
+
"aria-describedby": undefined,
|
|
67
68
|
onClose: handleClose,
|
|
68
69
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Dialog.Header, {
|
|
69
70
|
children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Dialog.Title, {
|