@comet/brevo-admin 4.0.0-canary-20250710093502 → 9.0.0-canary-20260121085838

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/lib/blocks/NewsletterImageBlock.d.ts +2 -2
  2. package/lib/blocks/NewsletterImageBlock.d.ts.map +1 -1
  3. package/lib/blocks/NewsletterImageBlock.js +2 -5
  4. package/lib/blocks.generated.d.ts +204 -0
  5. package/lib/blocks.generated.d.ts.map +1 -0
  6. package/lib/blocks.generated.js +5 -0
  7. package/lib/brevoConfiguration/BrevoConfigForm.d.ts +4 -4
  8. package/lib/brevoConfiguration/BrevoConfigForm.d.ts.map +1 -1
  9. package/lib/brevoConfiguration/BrevoConfigForm.gql.generated.d.ts +4 -4
  10. package/lib/brevoConfiguration/BrevoConfigForm.gql.generated.d.ts.map +1 -1
  11. package/lib/brevoConfiguration/BrevoConfigForm.gql.js +2 -2
  12. package/lib/brevoConfiguration/BrevoConfigForm.js +56 -62
  13. package/lib/brevoConfiguration/BrevoConfigPage.d.ts +0 -1
  14. package/lib/brevoConfiguration/BrevoConfigPage.d.ts.map +1 -1
  15. package/lib/brevoConfiguration/BrevoConfigPage.js +0 -4
  16. package/lib/brevoContacts/BrevoContactsGrid.d.ts +6 -6
  17. package/lib/brevoContacts/BrevoContactsGrid.d.ts.map +1 -1
  18. package/lib/brevoContacts/BrevoContactsGrid.generated.d.ts +5 -5
  19. package/lib/brevoContacts/BrevoContactsGrid.generated.d.ts.map +1 -1
  20. package/lib/brevoContacts/BrevoContactsGrid.js +39 -51
  21. package/lib/brevoContacts/BrevoContactsPage.d.ts +5 -5
  22. package/lib/brevoContacts/BrevoContactsPage.d.ts.map +1 -1
  23. package/lib/brevoContacts/BrevoContactsPage.js +0 -4
  24. package/lib/brevoContacts/form/BrevoContactForm.d.ts +6 -6
  25. package/lib/brevoContacts/form/BrevoContactForm.d.ts.map +1 -1
  26. package/lib/brevoContacts/form/BrevoContactForm.gql.d.ts +1 -1
  27. package/lib/brevoContacts/form/BrevoContactForm.gql.d.ts.map +1 -1
  28. package/lib/brevoContacts/form/BrevoContactForm.gql.generated.d.ts +3 -3
  29. package/lib/brevoContacts/form/BrevoContactForm.gql.generated.d.ts.map +1 -1
  30. package/lib/brevoContacts/form/BrevoContactForm.js +62 -67
  31. package/lib/brevoTestContacts/BrevoTestContactsGrid.d.ts +6 -6
  32. package/lib/brevoTestContacts/BrevoTestContactsGrid.d.ts.map +1 -1
  33. package/lib/brevoTestContacts/BrevoTestContactsGrid.generated.d.ts +4 -4
  34. package/lib/brevoTestContacts/BrevoTestContactsGrid.generated.d.ts.map +1 -1
  35. package/lib/brevoTestContacts/BrevoTestContactsGrid.js +31 -40
  36. package/lib/brevoTestContacts/BrevoTestContactsPage.d.ts +5 -5
  37. package/lib/brevoTestContacts/BrevoTestContactsPage.d.ts.map +1 -1
  38. package/lib/brevoTestContacts/BrevoTestContactsPage.js +0 -4
  39. package/lib/brevoTestContacts/form/BrevoTestContactForm.d.ts +6 -6
  40. package/lib/brevoTestContacts/form/BrevoTestContactForm.d.ts.map +1 -1
  41. package/lib/brevoTestContacts/form/BrevoTestContactForm.gql.d.ts +1 -1
  42. package/lib/brevoTestContacts/form/BrevoTestContactForm.gql.d.ts.map +1 -1
  43. package/lib/brevoTestContacts/form/BrevoTestContactForm.gql.generated.d.ts +3 -3
  44. package/lib/brevoTestContacts/form/BrevoTestContactForm.gql.generated.d.ts.map +1 -1
  45. package/lib/brevoTestContacts/form/BrevoTestContactForm.js +50 -55
  46. package/lib/common/BrevoConfigProvider.d.ts +4 -4
  47. package/lib/common/BrevoConfigProvider.d.ts.map +1 -1
  48. package/lib/common/BrevoConfigProvider.js +3 -4
  49. package/lib/common/contactImport/useContactImportFromCsv.d.ts +10 -5
  50. package/lib/common/contactImport/useContactImportFromCsv.d.ts.map +1 -1
  51. package/lib/common/contactImport/useContactImportFromCsv.gql.generated.d.ts +3 -3
  52. package/lib/common/contactImport/useContactImportFromCsv.gql.generated.d.ts.map +1 -1
  53. package/lib/common/contactImport/useContactImportFromCsv.js +74 -76
  54. package/lib/configVerification/ConfigVerification.d.ts +4 -4
  55. package/lib/configVerification/ConfigVerification.d.ts.map +1 -1
  56. package/lib/configVerification/ConfigVerification.js +0 -4
  57. package/lib/emailCampaigns/EmailCampaignsGrid.d.ts +4 -5
  58. package/lib/emailCampaigns/EmailCampaignsGrid.d.ts.map +1 -1
  59. package/lib/emailCampaigns/EmailCampaignsGrid.generated.d.ts +14 -14
  60. package/lib/emailCampaigns/EmailCampaignsGrid.generated.d.ts.map +1 -1
  61. package/lib/emailCampaigns/EmailCampaignsGrid.js +45 -53
  62. package/lib/emailCampaigns/EmailCampaignsPage.d.ts +1 -2
  63. package/lib/emailCampaigns/EmailCampaignsPage.d.ts.map +1 -1
  64. package/lib/emailCampaigns/EmailCampaignsPage.js +0 -4
  65. package/lib/emailCampaigns/SendingStateColumn.d.ts +2 -3
  66. package/lib/emailCampaigns/SendingStateColumn.d.ts.map +1 -1
  67. package/lib/emailCampaigns/SendingStateColumn.js +5 -11
  68. package/lib/emailCampaigns/form/ConfigFields.d.ts +1 -2
  69. package/lib/emailCampaigns/form/ConfigFields.d.ts.map +1 -1
  70. package/lib/emailCampaigns/form/ConfigFields.js +0 -4
  71. package/lib/emailCampaigns/form/EmailCampaignForm.d.ts +3 -5
  72. package/lib/emailCampaigns/form/EmailCampaignForm.d.ts.map +1 -1
  73. package/lib/emailCampaigns/form/EmailCampaignForm.gql.generated.d.ts +21 -21
  74. package/lib/emailCampaigns/form/EmailCampaignForm.gql.generated.d.ts.map +1 -1
  75. package/lib/emailCampaigns/form/EmailCampaignForm.gql.js +5 -5
  76. package/lib/emailCampaigns/form/EmailCampaignForm.js +92 -106
  77. package/lib/emailCampaigns/form/SendEmailCampaignNowDialog.d.ts +1 -2
  78. package/lib/emailCampaigns/form/SendEmailCampaignNowDialog.d.ts.map +1 -1
  79. package/lib/emailCampaigns/form/SendEmailCampaignNowDialog.js +1 -3
  80. package/lib/emailCampaigns/form/SendManagerFields.d.ts +3 -4
  81. package/lib/emailCampaigns/form/SendManagerFields.d.ts.map +1 -1
  82. package/lib/emailCampaigns/form/SendManagerFields.gql.generated.d.ts +5 -5
  83. package/lib/emailCampaigns/form/SendManagerFields.gql.generated.d.ts.map +1 -1
  84. package/lib/emailCampaigns/form/SendManagerFields.gql.js +3 -3
  85. package/lib/emailCampaigns/form/SendManagerFields.js +27 -40
  86. package/lib/emailCampaigns/form/SendManagerWrapper.d.ts +4 -4
  87. package/lib/emailCampaigns/form/SendManagerWrapper.d.ts.map +1 -1
  88. package/lib/emailCampaigns/form/SendManagerWrapper.js +0 -4
  89. package/lib/emailCampaigns/form/TestEmailCampaignForm.d.ts +2 -3
  90. package/lib/emailCampaigns/form/TestEmailCampaignForm.d.ts.map +1 -1
  91. package/lib/emailCampaigns/form/TestEmailCampaignForm.generated.d.ts +3 -3
  92. package/lib/emailCampaigns/form/TestEmailCampaignForm.generated.d.ts.map +1 -1
  93. package/lib/emailCampaigns/form/TestEmailCampaignForm.gql.generated.d.ts +2 -2
  94. package/lib/emailCampaigns/form/TestEmailCampaignForm.gql.generated.d.ts.map +1 -1
  95. package/lib/emailCampaigns/form/TestEmailCampaignForm.gql.js +1 -1
  96. package/lib/emailCampaigns/form/TestEmailCampaignForm.js +19 -33
  97. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.d.ts +2 -2
  98. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.d.ts.map +1 -1
  99. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.gql.generated.d.ts +2 -2
  100. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.gql.generated.d.ts.map +1 -1
  101. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.gql.js +1 -1
  102. package/lib/emailCampaigns/statistics/EmailCampaignStatistics.js +43 -40
  103. package/lib/emailCampaigns/statistics/PercentageCard.d.ts +3 -3
  104. package/lib/emailCampaigns/statistics/PercentageCard.d.ts.map +1 -1
  105. package/lib/emailCampaigns/statistics/PercentageCard.js +6 -15
  106. package/lib/emailCampaigns/view/EmailCampaignView.d.ts +2 -3
  107. package/lib/emailCampaigns/view/EmailCampaignView.d.ts.map +1 -1
  108. package/lib/emailCampaigns/view/EmailCampaignView.gql.generated.d.ts +3 -3
  109. package/lib/emailCampaigns/view/EmailCampaignView.gql.generated.d.ts.map +1 -1
  110. package/lib/emailCampaigns/view/EmailCampaignView.gql.js +1 -1
  111. package/lib/emailCampaigns/view/EmailCampaignView.js +3 -6
  112. package/lib/graphql.generated.d.ts +332 -261
  113. package/lib/graphql.generated.d.ts.map +1 -1
  114. package/lib/index.d.ts +3 -3
  115. package/lib/index.d.ts.map +1 -1
  116. package/lib/index.js +0 -20
  117. package/lib/targetGroups/TargetGroupDialog.d.ts +4 -4
  118. package/lib/targetGroups/TargetGroupDialog.d.ts.map +1 -1
  119. package/lib/targetGroups/TargetGroupDialog.gql.generated.d.ts +2 -2
  120. package/lib/targetGroups/TargetGroupDialog.gql.generated.d.ts.map +1 -1
  121. package/lib/targetGroups/TargetGroupDialog.gql.js +1 -1
  122. package/lib/targetGroups/TargetGroupDialog.js +11 -13
  123. package/lib/targetGroups/TargetGroupForm.d.ts +6 -6
  124. package/lib/targetGroups/TargetGroupForm.d.ts.map +1 -1
  125. package/lib/targetGroups/TargetGroupForm.gql.d.ts +1 -1
  126. package/lib/targetGroups/TargetGroupForm.gql.d.ts.map +1 -1
  127. package/lib/targetGroups/TargetGroupForm.gql.generated.d.ts +12 -12
  128. package/lib/targetGroups/TargetGroupForm.gql.generated.d.ts.map +1 -1
  129. package/lib/targetGroups/TargetGroupForm.gql.js +4 -4
  130. package/lib/targetGroups/TargetGroupForm.js +39 -44
  131. package/lib/targetGroups/TargetGroupsGrid.d.ts +5 -5
  132. package/lib/targetGroups/TargetGroupsGrid.d.ts.map +1 -1
  133. package/lib/targetGroups/TargetGroupsGrid.generated.d.ts +13 -13
  134. package/lib/targetGroups/TargetGroupsGrid.generated.d.ts.map +1 -1
  135. package/lib/targetGroups/TargetGroupsGrid.js +52 -62
  136. package/lib/targetGroups/TargetGroupsPage.d.ts +5 -5
  137. package/lib/targetGroups/TargetGroupsPage.d.ts.map +1 -1
  138. package/lib/targetGroups/TargetGroupsPage.js +0 -4
  139. package/lib/targetGroups/addContacts/AddContactsGridSelect.d.ts +4 -4
  140. package/lib/targetGroups/addContacts/AddContactsGridSelect.d.ts.map +1 -1
  141. package/lib/targetGroups/addContacts/AddContactsGridSelect.gql.generated.d.ts +9 -9
  142. package/lib/targetGroups/addContacts/AddContactsGridSelect.gql.generated.d.ts.map +1 -1
  143. package/lib/targetGroups/addContacts/AddContactsGridSelect.js +43 -52
  144. package/lib/targetGroups/allAssignedContacts/AllAssignedContactsGrid.d.ts +4 -4
  145. package/lib/targetGroups/allAssignedContacts/AllAssignedContactsGrid.d.ts.map +1 -1
  146. package/lib/targetGroups/allAssignedContacts/AllAssignedContactsGrid.gql.generated.d.ts +4 -4
  147. package/lib/targetGroups/allAssignedContacts/AllAssignedContactsGrid.gql.generated.d.ts.map +1 -1
  148. package/lib/targetGroups/allAssignedContacts/AllAssignedContactsGrid.js +9 -14
  149. package/package.json +71 -72
  150. package/lib/temp/CrudMoreActionsMenu.d.ts +0 -23
  151. package/lib/temp/CrudMoreActionsMenu.d.ts.map +0 -1
  152. package/lib/temp/CrudMoreActionsMenu.js +0 -208
@@ -9,20 +9,17 @@ var _client = require("@apollo/client");
9
9
  var _admin = require("@comet/admin");
10
10
  var _adminIcons = require("@comet/admin-icons");
11
11
  var _material = require("@mui/material");
12
- var _Button = _interopRequireDefault(require("@mui/material/Button"));
12
+ var _styles = require("@mui/material/styles");
13
13
  var _fileSaver = _interopRequireDefault(require("file-saver"));
14
- var React = _interopRequireWildcard(require("react"));
14
+ var _react = require("react");
15
15
  var _reactDropzone = require("react-dropzone");
16
16
  var _reactIntl = require("react-intl");
17
17
  var _BrevoConfigProvider = require("../BrevoConfigProvider");
18
18
  var _useContactImportFromCsv = require("./useContactImportFromCsv.gql");
19
19
  var _jsxRuntime = require("react/jsx-runtime");
20
- var _templateObject;
21
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
22
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
23
20
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { "default": e }; }
24
- function _taggedTemplateLiteral(e, t) { return t || (t = e.slice(0)), Object.freeze(Object.defineProperties(e, { raw: { value: Object.freeze(t) } })); }
25
- function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator["return"] && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, "catch": function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
21
+ function _regenerator() { /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var e, t, r = "function" == typeof Symbol ? Symbol : {}, n = r.iterator || "@@iterator", o = r.toStringTag || "@@toStringTag"; function i(r, n, o, i) { var c = n && n.prototype instanceof Generator ? n : Generator, u = Object.create(c.prototype); return _regeneratorDefine2(u, "_invoke", function (r, n, o) { var i, c, u, f = 0, p = o || [], y = !1, G = { p: 0, n: 0, v: e, a: d, f: d.bind(e, 4), d: function d(t, r) { return i = t, c = 0, u = e, G.n = r, a; } }; function d(r, n) { for (c = r, u = n, t = 0; !y && f && !o && t < p.length; t++) { var o, i = p[t], d = G.p, l = i[2]; r > 3 ? (o = l === n) && (u = i[(c = i[4]) ? 5 : (c = 3, 3)], i[4] = i[5] = e) : i[0] <= d && ((o = r < 2 && d < i[1]) ? (c = 0, G.v = n, G.n = i[1]) : d < l && (o = r < 3 || i[0] > n || n > l) && (i[4] = r, i[5] = n, G.n = l, c = 0)); } if (o || r > 1) return a; throw y = !0, n; } return function (o, p, l) { if (f > 1) throw TypeError("Generator is already running"); for (y && 1 === p && d(p, l), c = p, u = l; (t = c < 2 ? e : u) || !y;) { i || (c ? c < 3 ? (c > 1 && (G.n = -1), d(c, u)) : G.n = u : G.v = u); try { if (f = 2, i) { if (c || (o = "next"), t = i[o]) { if (!(t = t.call(i, u))) throw TypeError("iterator result is not an object"); if (!t.done) return t; u = t.value, c < 2 && (c = 0); } else 1 === c && (t = i["return"]) && t.call(i), c < 2 && (u = TypeError("The iterator does not provide a '" + o + "' method"), c = 1); i = e; } else if ((t = (y = G.n < 0) ? u : r.call(n, G)) !== a) break; } catch (t) { i = e, c = 1, u = t; } finally { f = 1; } } return { value: t, done: y }; }; }(r, o, i), !0), u; } var a = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} t = Object.getPrototypeOf; var c = [][n] ? t(t([][n]())) : (_regeneratorDefine2(t = {}, n, function () { return this; }), t), u = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(c); function f(e) { return Object.setPrototypeOf ? Object.setPrototypeOf(e, GeneratorFunctionPrototype) : (e.__proto__ = GeneratorFunctionPrototype, _regeneratorDefine2(e, o, "GeneratorFunction")), e.prototype = Object.create(u), e; } return GeneratorFunction.prototype = GeneratorFunctionPrototype, _regeneratorDefine2(u, "constructor", GeneratorFunctionPrototype), _regeneratorDefine2(GeneratorFunctionPrototype, "constructor", GeneratorFunction), GeneratorFunction.displayName = "GeneratorFunction", _regeneratorDefine2(GeneratorFunctionPrototype, o, "GeneratorFunction"), _regeneratorDefine2(u), _regeneratorDefine2(u, o, "Generator"), _regeneratorDefine2(u, n, function () { return this; }), _regeneratorDefine2(u, "toString", function () { return "[object Generator]"; }), (_regenerator = function _regenerator() { return { w: i, m: f }; })(); }
22
+ function _regeneratorDefine2(e, r, n, t) { var i = Object.defineProperty; try { i({}, "", {}); } catch (e) { i = 0; } _regeneratorDefine2 = function _regeneratorDefine(e, r, n, t) { function o(r, n) { _regeneratorDefine2(e, r, function (e) { return this._invoke(r, n, e); }); } r ? i ? i(e, r, { value: n, enumerable: !t, configurable: !t, writable: !t }) : e[r] = n : (o("next", 0), o("throw", 1), o("return", 2)); }, _regeneratorDefine2(e, r, n, t); }
26
23
  function _createForOfIteratorHelper(r, e) { var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (!t) { if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) { t && (r = t); var _n = 0, F = function F() {}; return { s: F, n: function n() { return _n >= r.length ? { done: !0 } : { done: !1, value: r[_n++] }; }, e: function e(r) { throw r; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var o, a = !0, u = !1; return { s: function s() { t = t.call(r); }, n: function n() { var r = t.next(); return a = r.done, r; }, e: function e(r) { u = !0, o = r; }, f: function f() { try { a || null == t["return"] || t["return"](); } finally { if (u) throw o; } } }; }
27
24
  function asyncGeneratorStep(n, t, e, r, o, a, c) { try { var i = n[a](c), u = i.value; } catch (n) { return void e(n); } i.done ? t(u) : Promise.resolve(u).then(r, o); }
28
25
  function _asyncToGenerator(n) { return function () { var t = this, e = arguments; return new Promise(function (r, o) { var a = n.apply(t, e); function _next(n) { asyncGeneratorStep(a, r, o, _next, _throw, "next", n); } function _throw(n) { asyncGeneratorStep(a, r, o, _next, _throw, "throw", n); } _next(void 0); }); }; }
@@ -41,18 +38,18 @@ var useContactImportFromCsv = exports.useContactImportFromCsv = function useCont
41
38
  var scope = _ref.scope,
42
39
  targetGroupId = _ref.targetGroupId,
43
40
  refetchQueries = _ref.refetchQueries;
44
- var fileInputRef = React.useRef(null);
45
- var _React$useState = React.useState(false),
46
- _React$useState2 = _slicedToArray(_React$useState, 2),
47
- open = _React$useState2[0],
48
- setOpen = _React$useState2[1];
49
- var _React$useState3 = React.useState(true),
50
- _React$useState4 = _slicedToArray(_React$useState3, 2),
51
- sendDoubleOptIn = _React$useState4[0],
52
- setSendDoubleOptIn = _React$useState4[1];
41
+ var fileInputRef = (0, _react.useRef)(null);
42
+ var _useState = (0, _react.useState)(false),
43
+ _useState2 = _slicedToArray(_useState, 2),
44
+ open = _useState2[0],
45
+ setOpen = _useState2[1];
46
+ var _useState3 = (0, _react.useState)(true),
47
+ _useState4 = _slicedToArray(_useState3, 2),
48
+ sendDoubleOptIn = _useState4[0],
49
+ setSendDoubleOptIn = _useState4[1];
53
50
  var _useBrevoConfig = (0, _BrevoConfigProvider.useBrevoConfig)(),
54
51
  allowAddingContactsWithoutDoi = _useBrevoConfig.allowAddingContactsWithoutDoi;
55
- var moreActionsMenuItem = React.useMemo(function () {
52
+ var moreActionsMenuItem = (0, _react.useMemo)(function () {
56
53
  return {
57
54
  type: "action",
58
55
  label: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
@@ -68,7 +65,7 @@ var useContactImportFromCsv = exports.useContactImportFromCsv = function useCont
68
65
  var handleClose = function handleClose() {
69
66
  return setOpen(false);
70
67
  };
71
- var dialog = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Dialog, {
68
+ var dialog = /*#__PURE__*/(0, _jsxRuntime.jsxs)(_admin.Dialog, {
72
69
  open: open,
73
70
  onClose: handleClose,
74
71
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_material.DialogTitle, {
@@ -120,11 +117,11 @@ var useContactImportFromCsv = exports.useContactImportFromCsv = function useCont
120
117
  }
121
118
  })
122
119
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.DialogActions, {
123
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
120
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_admin.Button, {
124
121
  onClick: handleClose,
125
122
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, _objectSpread({}, _admin.messages.cancel))
126
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
127
- variant: "contained",
123
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_admin.Button, {
124
+ variant: "primary",
128
125
  onClick: function onClick() {
129
126
  var _fileInputRef$current2;
130
127
  return (_fileInputRef$current2 = fileInputRef.current) === null || _fileInputRef$current2 === void 0 ? void 0 : _fileInputRef$current2.click();
@@ -136,7 +133,7 @@ var useContactImportFromCsv = exports.useContactImportFromCsv = function useCont
136
133
  })]
137
134
  })]
138
135
  });
139
- var component = React.useMemo(function () {
136
+ var component = (0, _react.useMemo)(function () {
140
137
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(ContactImportComponent, {
141
138
  scope: scope,
142
139
  targetGroupId: targetGroupId,
@@ -156,14 +153,14 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
156
153
  sendDoubleOptIn = _ref3.sendDoubleOptIn,
157
154
  refetchQueries = _ref3.refetchQueries;
158
155
  var apolloClient = (0, _client.useApolloClient)();
159
- var _React$useState5 = React.useState(false),
160
- _React$useState6 = _slicedToArray(_React$useState5, 2),
161
- importingCsv = _React$useState6[0],
162
- setImportingCsv = _React$useState6[1];
163
- var _React$useState7 = React.useState(null),
164
- _React$useState8 = _slicedToArray(_React$useState7, 2),
165
- importInformation = _React$useState8[0],
166
- setImportInformation = _React$useState8[1];
156
+ var _useState5 = (0, _react.useState)(false),
157
+ _useState6 = _slicedToArray(_useState5, 2),
158
+ importingCsv = _useState6[0],
159
+ setImportingCsv = _useState6[1];
160
+ var _useState7 = (0, _react.useState)(null),
161
+ _useState8 = _slicedToArray(_useState7, 2),
162
+ importInformation = _useState8[0],
163
+ setImportInformation = _useState8[1];
167
164
  var dialogOpen = importingCsv || !!importInformation;
168
165
  var errorDialog = (0, _admin.useErrorDialog)();
169
166
  var config = (0, _BrevoConfigProvider.useBrevoConfig)();
@@ -173,34 +170,34 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
173
170
  return _upload.apply(this, arguments);
174
171
  }
175
172
  function _upload() {
176
- _upload = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee2(file, scope, listIds) {
173
+ _upload = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2(file, scope, listIds) {
177
174
  var formData, response, fileUploadId, _yield$client$mutate, data;
178
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
179
- while (1) switch (_context2.prev = _context2.next) {
175
+ return _regenerator().w(function (_context2) {
176
+ while (1) switch (_context2.n) {
180
177
  case 0:
181
178
  formData = new FormData();
182
179
  formData.append("file", file);
183
- _context2.next = 4;
180
+ _context2.n = 1;
184
181
  return fetch("".concat(config.apiUrl, "/file-uploads/upload"), {
185
182
  method: "POST",
186
183
  body: formData
187
184
  });
188
- case 4:
189
- response = _context2.sent;
185
+ case 1:
186
+ response = _context2.v;
190
187
  if (response.ok) {
191
- _context2.next = 7;
188
+ _context2.n = 2;
192
189
  break;
193
190
  }
194
191
  throw new Error(intl.formatMessage({
195
192
  id: "cometBrevoModule.useContactImport.error.fileUpload",
196
193
  defaultMessage: "Could not upload file"
197
194
  }));
198
- case 7:
199
- _context2.next = 9;
195
+ case 2:
196
+ _context2.n = 3;
200
197
  return response.json();
201
- case 9:
202
- fileUploadId = _context2.sent.id;
203
- _context2.next = 12;
198
+ case 3:
199
+ fileUploadId = _context2.v.id;
200
+ _context2.n = 4;
204
201
  return client.mutate({
205
202
  mutation: _useContactImportFromCsv.startBrevoContactImportMutation,
206
203
  variables: {
@@ -210,22 +207,19 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
210
207
  targetGroupIds: listIds
211
208
  }
212
209
  });
213
- case 12:
214
- _yield$client$mutate = _context2.sent;
210
+ case 4:
211
+ _yield$client$mutate = _context2.v;
215
212
  data = _yield$client$mutate.data;
216
213
  if (data) {
217
- _context2.next = 16;
214
+ _context2.n = 5;
218
215
  break;
219
216
  }
220
217
  throw new Error(intl.formatMessage({
221
218
  id: "cometBrevoModule.useContactImport.error.defaultMessage",
222
219
  defaultMessage: "An error occured during the import. Please try again in a while or contact your administrator if the error persists."
223
220
  }));
224
- case 16:
225
- return _context2.abrupt("return", data.startBrevoContactImport);
226
- case 17:
227
- case "end":
228
- return _context2.stop();
221
+ case 5:
222
+ return _context2.a(2, data.startBrevoContactImport);
229
223
  }
230
224
  }, _callee2);
231
225
  }));
@@ -317,23 +311,23 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
317
311
  },
318
312
  multiple: false,
319
313
  onDrop: function () {
320
- var _onDrop = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee(acceptedFiles) {
321
- var file, data, userMessage;
322
- return _regeneratorRuntime().wrap(function _callee$(_context) {
323
- while (1) switch (_context.prev = _context.next) {
314
+ var _onDrop = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(acceptedFiles) {
315
+ var file, data, userMessage, _t;
316
+ return _regenerator().w(function (_context) {
317
+ while (1) switch (_context.p = _context.n) {
324
318
  case 0:
325
319
  setImportingCsv(true);
326
- _context.prev = 1;
320
+ _context.p = 1;
327
321
  file = acceptedFiles[0];
328
- _context.next = 5;
322
+ _context.n = 2;
329
323
  return upload(file, scope, targetGroupId ? [targetGroupId] : []);
330
- case 5:
331
- data = _context.sent;
324
+ case 2:
325
+ data = _context.v;
332
326
  apolloClient.refetchQueries({
333
327
  include: refetchQueries
334
328
  });
335
329
  if (!data) {
336
- _context.next = 12;
330
+ _context.n = 3;
337
331
  break;
338
332
  }
339
333
  setImportingCsv(false);
@@ -346,16 +340,16 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
346
340
  } else {
347
341
  setImportInformation(data);
348
342
  }
349
- _context.next = 13;
343
+ _context.n = 4;
350
344
  break;
351
- case 12:
345
+ case 3:
352
346
  throw new Error(JSON.stringify(data));
353
- case 13:
354
- _context.next = 20;
347
+ case 4:
348
+ _context.n = 6;
355
349
  break;
356
- case 15:
357
- _context.prev = 15;
358
- _context.t0 = _context["catch"](1);
350
+ case 5:
351
+ _context.p = 5;
352
+ _t = _context.v;
359
353
  setImportingCsv(false);
360
354
  userMessage = /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
361
355
  id: "cometBrevoModule.useContactImport.error.defaultMessage",
@@ -364,13 +358,12 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
364
358
  errorDialog === null || errorDialog === void 0 || errorDialog.showError({
365
359
  title: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, _objectSpread({}, _admin.messages.error)),
366
360
  userMessage: userMessage,
367
- error: String(_context.t0)
361
+ error: String(_t)
368
362
  });
369
- case 20:
370
- case "end":
371
- return _context.stop();
363
+ case 6:
364
+ return _context.a(2);
372
365
  }
373
- }, _callee, null, [[1, 15]]);
366
+ }, _callee, null, [[1, 5]]);
374
367
  }));
375
368
  function onDrop(_x4) {
376
369
  return _onDrop.apply(this, arguments);
@@ -385,7 +378,7 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
385
378
  hidden: true
386
379
  }, getInputProps()), {}, {
387
380
  ref: fileInputRef
388
- })), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.Dialog, {
381
+ })), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_admin.Dialog, {
389
382
  open: dialogOpen,
390
383
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_material.DialogTitle, {
391
384
  children: [importingCsv && /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, {
@@ -457,18 +450,23 @@ var ContactImportComponent = function ContactImportComponent(_ref3) {
457
450
  })]
458
451
  })]
459
452
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.DialogActions, {
460
- children: importInformation && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Button["default"], {
453
+ children: importInformation && /*#__PURE__*/(0, _jsxRuntime.jsx)(_admin.Button, {
461
454
  onClick: function onClick() {
462
455
  return setImportInformation(null);
463
456
  },
464
- variant: "contained",
457
+ variant: "primary",
465
458
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactIntl.FormattedMessage, _objectSpread({}, _admin.messages.ok))
466
459
  })
467
460
  })]
468
461
  })]
469
462
  });
470
463
  };
471
- var CsvDownloadLink = (0, _material.styled)("span")(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n color: ", ";\n text-decoration: underline;\n cursor: pointer;\n"])), function (_ref4) {
464
+ var CsvDownloadLink = /*#__PURE__*/(0, _styles.styled)("span", process.env.NODE_ENV === "production" ? {
465
+ target: "e157iusb0"
466
+ } : {
467
+ target: "e157iusb0",
468
+ label: "CsvDownloadLink"
469
+ })("color:", function (_ref4) {
472
470
  var theme = _ref4.theme;
473
471
  return theme.palette.info.main;
474
- });
472
+ }, ";text-decoration:underline;cursor:pointer;" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21tb24vY29udGFjdEltcG9ydC91c2VDb250YWN0SW1wb3J0RnJvbUNzdi50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNlhzQyIsImZpbGUiOiIuLi8uLi8uLi9zcmMvY29tbW9uL2NvbnRhY3RJbXBvcnQvdXNlQ29udGFjdEltcG9ydEZyb21Dc3YudHN4Iiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdXNlQXBvbGxvQ2xpZW50IH0gZnJvbSBcIkBhcG9sbG8vY2xpZW50XCI7XG5pbXBvcnQgeyB0eXBlIFJlZmV0Y2hRdWVyaWVzSW5jbHVkZSB9IGZyb20gXCJAYXBvbGxvL2NsaWVudC9jb3JlL3R5cGVzXCI7XG5pbXBvcnQgeyBBbGVydCwgQnV0dG9uLCBDaGVja2JveEZpZWxkLCBEaWFsb2csIEZpbmFsRm9ybSwgTG9hZGluZywgbWVzc2FnZXMsIHVzZUVycm9yRGlhbG9nIH0gZnJvbSBcIkBjb21ldC9hZG1pblwiO1xuaW1wb3J0IHsgVXBsb2FkIH0gZnJvbSBcIkBjb21ldC9hZG1pbi1pY29uc1wiO1xuaW1wb3J0IHsgQm94LCBEaWFsb2dBY3Rpb25zLCBEaWFsb2dDb250ZW50LCBEaWFsb2dUaXRsZSwgdHlwZSBNZW51SXRlbSB9IGZyb20gXCJAbXVpL21hdGVyaWFsXCI7XG5pbXBvcnQgeyBzdHlsZWQgfSBmcm9tIFwiQG11aS9tYXRlcmlhbC9zdHlsZXNcIjtcbmltcG9ydCBzYXZlQXMgZnJvbSBcImZpbGUtc2F2ZXJcIjtcbmltcG9ydCB7IHR5cGUgQ29tcG9uZW50UHJvcHMsIHR5cGUgUmVhY3ROb2RlLCB0eXBlIFJlZk9iamVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgdXNlRHJvcHpvbmUgfSBmcm9tIFwicmVhY3QtZHJvcHpvbmVcIjtcbmltcG9ydCB7IEZvcm1hdHRlZE1lc3NhZ2UsIHVzZUludGwgfSBmcm9tIFwicmVhY3QtaW50bFwiO1xuXG5pbXBvcnQgeyB0eXBlIEdRTENzdkltcG9ydEluZm9ybWF0aW9uLCB0eXBlIEdRTEVtYWlsQ2FtcGFpZ25Db250ZW50U2NvcGVJbnB1dCB9IGZyb20gXCIuLi8uLi9ncmFwaHFsLmdlbmVyYXRlZFwiO1xuaW1wb3J0IHsgdXNlQnJldm9Db25maWcgfSBmcm9tIFwiLi4vQnJldm9Db25maWdQcm92aWRlclwiO1xuaW1wb3J0IHsgc3RhcnRCcmV2b0NvbnRhY3RJbXBvcnRNdXRhdGlvbiB9IGZyb20gXCIuL3VzZUNvbnRhY3RJbXBvcnRGcm9tQ3N2LmdxbFwiO1xuaW1wb3J0IHsgdHlwZSBHUUxTdGFydEJyZXZvQ29udGFjdEltcG9ydE11dGF0aW9uLCB0eXBlIEdRTFN0YXJ0QnJldm9Db250YWN0SW1wb3J0TXV0YXRpb25WYXJpYWJsZXMgfSBmcm9tIFwiLi91c2VDb250YWN0SW1wb3J0RnJvbUNzdi5ncWwuZ2VuZXJhdGVkXCI7XG5cbmludGVyZmFjZSBVc2VDb250YWN0SW1wb3J0UHJvcHMge1xuICAgIHNjb3BlOiBHUUxFbWFpbENhbXBhaWduQ29udGVudFNjb3BlSW5wdXQ7XG4gICAgc2VuZERvdWJsZU9wdEluOiBib29sZWFuO1xuICAgIHRhcmdldEdyb3VwSWQ/OiBzdHJpbmc7XG4gICAgcmVmZXRjaFF1ZXJpZXM/OiBSZWZldGNoUXVlcmllc0luY2x1ZGU7XG59XG5cbnR5cGUgQ29udGFjdEltcG9ydEZyb21Dc3ZGb3JtID0ge1xuICAgIHNlbmREb3VibGVPcHRJbjogYm9vbGVhbjtcbn07XG5cbmludGVyZmFjZSBBY3Rpb25JdGVtIGV4dGVuZHMgQ29tcG9uZW50UHJvcHM8dHlwZW9mIE1lbnVJdGVtPiB7XG4gICAgdHlwZTogXCJhY3Rpb25cIjtcbiAgICBsYWJlbDogUmVhY3ROb2RlO1xuICAgIHN0YXJ0QWRvcm5tZW50PzogUmVhY3ROb2RlO1xufVxuXG5leHBvcnQgY29uc3QgdXNlQ29udGFjdEltcG9ydEZyb21Dc3YgPSAoeyBzY29wZSwgdGFyZ2V0R3JvdXBJZCwgcmVmZXRjaFF1ZXJpZXMgfTogVXNlQ29udGFjdEltcG9ydFByb3BzKTogW0FjdGlvbkl0ZW0sIFJlYWN0Tm9kZV0gPT4ge1xuICAgIGNvbnN0IGZpbGVJbnB1dFJlZiA9IHVzZVJlZjxIVE1MSW5wdXRFbGVtZW50PihudWxsKTtcbiAgICBjb25zdCBbb3Blbiwgc2V0T3Blbl0gPSB1c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3NlbmREb3VibGVPcHRJbiwgc2V0U2VuZERvdWJsZU9wdEluXSA9IHVzZVN0YXRlKHRydWUpO1xuICAgIGNvbnN0IHsgYWxsb3dBZGRpbmdDb250YWN0c1dpdGhvdXREb2kgfSA9IHVzZUJyZXZvQ29uZmlnKCk7XG5cbiAgICBjb25zdCBtb3JlQWN0aW9uc01lbnVJdGVtOiBBY3Rpb25JdGVtID0gdXNlTWVtbyhcbiAgICAgICAgKCkgPT4gKHtcbiAgICAgICAgICAgIHR5cGU6IFwiYWN0aW9uXCIsXG4gICAgICAgICAgICBsYWJlbDogKFxuICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXRCcmV2b01vZHVsZS50YXJnZXRHcm91cC5hc3NpZ25lZENvbnRhY3RzLmFjdGlvbnMuaW1wb3J0RnJvbUNzdlwiXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiSW1wb3J0IGNvbnRhY3RzIGZyb20gQ1NWXCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHN0YXJ0QWRvcm5tZW50OiA8VXBsb2FkIC8+LFxuICAgICAgICAgICAgb25DbGljazogKCkgPT4gc2V0T3Blbih0cnVlKSxcbiAgICAgICAgfSksXG4gICAgICAgIFtdLFxuICAgICk7XG5cbiAgICBjb25zdCBoYW5kbGVDbG9zZSA9ICgpID0+IHNldE9wZW4oZmFsc2UpO1xuXG4gICAgY29uc3QgZGlhbG9nID0gKFxuICAgICAgICA8RGlhbG9nIG9wZW49e29wZW59IG9uQ2xvc2U9e2hhbmRsZUNsb3NlfT5cbiAgICAgICAgICAgIDxEaWFsb2dUaXRsZT5cbiAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0QnJldm9Nb2R1bGUuY29udGFjdEltcG9ydC50aXRsZVwiIGRlZmF1bHRNZXNzYWdlPVwiSW1wb3J0aW5nIGNvbnRhY3RzIGZyb20gQ1NWXCIgLz5cbiAgICAgICAgICAgIDwvRGlhbG9nVGl0bGU+XG4gICAgICAgICAgICA8RGlhbG9nQ29udGVudD5cbiAgICAgICAgICAgICAgICA8RmluYWxGb3JtPENvbnRhY3RJbXBvcnRGcm9tQ3N2Rm9ybT5cbiAgICAgICAgICAgICAgICAgICAgb25TdWJtaXQ9eyh2YWx1ZXMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpbGVJbnB1dFJlZi5jdXJyZW50Py5jbGljaygpO1xuICAgICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgICAgICBtb2RlPVwiYWRkXCJcbiAgICAgICAgICAgICAgICAgICAgaW5pdGlhbFZhbHVlcz17eyBzZW5kRG91YmxlT3B0SW46IHRydWUgfX1cbiAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgIHsoeyB2YWx1ZXMgfSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0U2VuZERvdWJsZU9wdEluKHZhbHVlcy5zZW5kRG91YmxlT3B0SW4pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt2YWx1ZXMuc2VuZERvdWJsZU9wdEluID8gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFsZXJ0IHNldmVyaXR5PVwid2FybmluZ1wiIHN4PXt7IG1hcmdpbkJvdHRvbTogNSB9fT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0QnJldm9Nb2R1bGUuY29udGFjdEltcG9ydC5jb250YWN0QWRkQWxlcnRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIlRoZSBjb250YWN0IHdpbGwgZ2V0IGEgZG91YmxlIG9wdC1pbiBlbWFpbCB0byBjb25maXJtIHRoZSBzdWJzY3JpcHRpb24uIEFmdGVyIHRoZSBjb250YWN0J3MgY29uZmlybWF0aW9uLCB0aGUgY29udGFjdCB3aWxsIGJlIGFkZGVkIHRvIHRoZSBjb3JyZXNwb25kaW5nIHRhcmdldCBncm91cHMgaW4gdGhpcyBzY29wZSBkZXBlbmRpbmcgb24gdGhlIGNvbnRhY3QncyBhdHRyaWJ1dGVzLiBCZWZvcmUgdGhlIGNvbmZpcm1hdGlvbiB0aGUgY29udGFjdCB3aWxsIG5vdCBiZSBzaG93biBvbiB0aGUgY29udGFjdHMgcGFnZS5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FsZXJ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFsZXJ0IHNldmVyaXR5PVwiZXJyb3JcIiBzeD17eyBtYXJnaW5Cb3R0b206IDUgfX0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldEJyZXZvTW9kdWxlLmNvbnRhY3RJbXBvcnQuY29udGFjdE5vT3B0SW5BbGVydFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlPVwiTm8gRG91YmxlIE9wdC1JbiBlbWFpbCB3aWxsIGJlIHNlbnQuIFBsZWFzZSBlbnN1cmUgcmVjaXBpZW50cyBoYXZlIGdpdmVuIHRoZWlyIGNvbnNlbnQgYmVmb3JlIHByb2NlZWRpbmcuXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BbGVydD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAge2FsbG93QWRkaW5nQ29udGFjdHNXaXRob3V0RG9pICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDaGVja2JveEZpZWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbmFtZT1cInNlbmREb3VibGVPcHRJblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWw9e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldEJyZXZvTW9kdWxlLmNvbnRhY3RJbXBvcnQuc2VuZERvdWJsZU9wdEluTWFpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIlNlbmQgZG91YmxlIG9wdC1pbiBlbWFpbFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZ1bGxXaWR0aFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgPC9GaW5hbEZvcm0+XG4gICAgICAgICAgICA8L0RpYWxvZ0NvbnRlbnQ+XG4gICAgICAgICAgICA8RGlhbG9nQWN0aW9ucz5cbiAgICAgICAgICAgICAgICA8QnV0dG9uIG9uQ2xpY2s9e2hhbmRsZUNsb3NlfT5cbiAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2Ugey4uLm1lc3NhZ2VzLmNhbmNlbH0gLz5cbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJwcmltYXJ5XCIgb25DbGljaz17KCkgPT4gZmlsZUlucHV0UmVmLmN1cnJlbnQ/LmNsaWNrKCl9PlxuICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0QnJldm9Nb2R1bGUuY29udGFjdEltcG9ydC5pbXBvcnRDb250YWN0c1wiIGRlZmF1bHRNZXNzYWdlPVwiSW1wb3J0IENvbnRhY3RzXCIgLz5cbiAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgIDwvRGlhbG9nQWN0aW9ucz5cbiAgICAgICAgPC9EaWFsb2c+XG4gICAgKTtcblxuICAgIGNvbnN0IGNvbXBvbmVudCA9IHVzZU1lbW8oXG4gICAgICAgICgpID0+IChcbiAgICAgICAgICAgIDxDb250YWN0SW1wb3J0Q29tcG9uZW50XG4gICAgICAgICAgICAgICAgc2NvcGU9e3Njb3BlfVxuICAgICAgICAgICAgICAgIHRhcmdldEdyb3VwSWQ9e3RhcmdldEdyb3VwSWR9XG4gICAgICAgICAgICAgICAgZmlsZUlucHV0UmVmPXtmaWxlSW5wdXRSZWZ9XG4gICAgICAgICAgICAgICAgc2VuZERvdWJsZU9wdEluPXtzZW5kRG91YmxlT3B0SW59XG4gICAgICAgICAgICAgICAgcmVmZXRjaFF1ZXJpZXM9e3JlZmV0Y2hRdWVyaWVzfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgKSxcbiAgICAgICAgW3JlZmV0Y2hRdWVyaWVzLCBzY29wZSwgdGFyZ2V0R3JvdXBJZCwgc2VuZERvdWJsZU9wdEluXSxcbiAgICApO1xuXG4gICAgcmV0dXJuIFtcbiAgICAgICAgbW9yZUFjdGlvbnNNZW51SXRlbSxcbiAgICAgICAgPD5cbiAgICAgICAgICAgIHtkaWFsb2d9XG4gICAgICAgICAgICB7Y29tcG9uZW50fVxuICAgICAgICA8Lz4sXG4gICAgXTtcbn07XG5cbmludGVyZmFjZSBVc2VDb250YWN0Q29tcG9uZW50UHJvcHMgZXh0ZW5kcyBVc2VDb250YWN0SW1wb3J0UHJvcHMge1xuICAgIGZpbGVJbnB1dFJlZjogUmVmT2JqZWN0PEhUTUxJbnB1dEVsZW1lbnQ+O1xufVxuXG5jb25zdCBDb250YWN0SW1wb3J0Q29tcG9uZW50ID0gKHsgc2NvcGUsIHRhcmdldEdyb3VwSWQsIGZpbGVJbnB1dFJlZiwgc2VuZERvdWJsZU9wdEluLCByZWZldGNoUXVlcmllcyB9OiBVc2VDb250YWN0Q29tcG9uZW50UHJvcHMpID0+IHtcbiAgICBjb25zdCBhcG9sbG9DbGllbnQgPSB1c2VBcG9sbG9DbGllbnQoKTtcbiAgICBjb25zdCBbaW1wb3J0aW5nQ3N2LCBzZXRJbXBvcnRpbmdDc3ZdID0gdXNlU3RhdGUoZmFsc2UpO1xuICAgIGNvbnN0IFtpbXBvcnRJbmZvcm1hdGlvbiwgc2V0SW1wb3J0SW5mb3JtYXRpb25dID0gdXNlU3RhdGU8R1FMQ3N2SW1wb3J0SW5mb3JtYXRpb24gfCBudWxsPihudWxsKTtcbiAgICBjb25zdCBkaWFsb2dPcGVuID0gaW1wb3J0aW5nQ3N2IHx8ICEhaW1wb3J0SW5mb3JtYXRpb247XG4gICAgY29uc3QgZXJyb3JEaWFsb2cgPSB1c2VFcnJvckRpYWxvZygpO1xuICAgIGNvbnN0IGNvbmZpZyA9IHVzZUJyZXZvQ29uZmlnKCk7XG4gICAgY29uc3QgaW50bCA9IHVzZUludGwoKTtcbiAgICBjb25zdCBjbGllbnQgPSB1c2VBcG9sbG9DbGllbnQoKTtcblxuICAgIGFzeW5jIGZ1bmN0aW9uIHVwbG9hZChmaWxlOiBGaWxlLCBzY29wZTogR1FMRW1haWxDYW1wYWlnbkNvbnRlbnRTY29wZUlucHV0LCBsaXN0SWRzPzogc3RyaW5nW10pOiBQcm9taXNlPEdRTENzdkltcG9ydEluZm9ybWF0aW9uPiB7XG4gICAgICAgIGNvbnN0IGZvcm1EYXRhID0gbmV3IEZvcm1EYXRhKCk7XG4gICAgICAgIGZvcm1EYXRhLmFwcGVuZChcImZpbGVcIiwgZmlsZSk7XG5cbiAgICAgICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChgJHtjb25maWcuYXBpVXJsfS9maWxlLXVwbG9hZHMvdXBsb2FkYCwge1xuICAgICAgICAgICAgbWV0aG9kOiBcIlBPU1RcIixcbiAgICAgICAgICAgIGJvZHk6IGZvcm1EYXRhLFxuICAgICAgICB9KTtcblxuICAgICAgICBpZiAoIXJlc3BvbnNlLm9rKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgaW50bC5mb3JtYXRNZXNzYWdlKHsgaWQ6IFwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmVycm9yLmZpbGVVcGxvYWRcIiwgZGVmYXVsdE1lc3NhZ2U6IFwiQ291bGQgbm90IHVwbG9hZCBmaWxlXCIgfSksXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZmlsZVVwbG9hZElkID0gKGF3YWl0IHJlc3BvbnNlLmpzb24oKSkuaWQ7XG5cbiAgICAgICAgY29uc3QgeyBkYXRhIH0gPSBhd2FpdCBjbGllbnQubXV0YXRlPEdRTFN0YXJ0QnJldm9Db250YWN0SW1wb3J0TXV0YXRpb24sIEdRTFN0YXJ0QnJldm9Db250YWN0SW1wb3J0TXV0YXRpb25WYXJpYWJsZXM+KHtcbiAgICAgICAgICAgIG11dGF0aW9uOiBzdGFydEJyZXZvQ29udGFjdEltcG9ydE11dGF0aW9uLFxuICAgICAgICAgICAgdmFyaWFibGVzOiB7XG4gICAgICAgICAgICAgICAgZmlsZUlkOiBmaWxlVXBsb2FkSWQsXG4gICAgICAgICAgICAgICAgc2NvcGUsXG4gICAgICAgICAgICAgICAgc2VuZERvdWJsZU9wdEluLFxuICAgICAgICAgICAgICAgIHRhcmdldEdyb3VwSWRzOiBsaXN0SWRzLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgaWYgKCFkYXRhKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgICAgICAgICAgaW50bC5mb3JtYXRNZXNzYWdlKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6IFwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmVycm9yLmRlZmF1bHRNZXNzYWdlXCIsXG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHRNZXNzYWdlOlxuICAgICAgICAgICAgICAgICAgICAgICAgXCJBbiBlcnJvciBvY2N1cmVkIGR1cmluZyB0aGUgaW1wb3J0LiBQbGVhc2UgdHJ5IGFnYWluIGluIGEgd2hpbGUgb3IgY29udGFjdCB5b3VyIGFkbWluaXN0cmF0b3IgaWYgdGhlIGVycm9yIHBlcnNpc3RzLlwiLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZGF0YS5zdGFydEJyZXZvQ29udGFjdEltcG9ydDtcbiAgICB9XG5cbiAgICBjb25zdCBzYXZlRXJyb3JGaWxlID0gKCkgPT4ge1xuICAgICAgICBjb25zdCBmYWlsZWRDb2x1bW5zID0gaW1wb3J0SW5mb3JtYXRpb24/LmZhaWxlZENvbHVtbnM7XG4gICAgICAgIGlmICghZmFpbGVkQ29sdW1ucyB8fCBmYWlsZWRDb2x1bW5zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGludGwuZm9ybWF0TWVzc2FnZSh7IGlkOiBcImV4cG9ydFwiLCBkZWZhdWx0TWVzc2FnZTogXCJObyBmYWlsZWQgY29sdW1ucyB0byBzYXZlXCIgfSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGVycm9yRGF0YSA9IFwiXCI7XG5cbiAgICAgICAgLy8gQWRkIGhlYWRlcnMgdG8gdGhlIGZpbGUgd2l0aG91dCB0cmFpbGluZyBzZW1pY29sb25cbiAgICAgICAgY29uc3QgaGVhZGVycyA9IE9iamVjdC5rZXlzKGZhaWxlZENvbHVtbnNbMF0pO1xuICAgICAgICBjb25zdCBoZWFkZXJTdHIgPSBoZWFkZXJzLmpvaW4oXCI7XCIpO1xuICAgICAgICBlcnJvckRhdGEgPSBgJHtoZWFkZXJTdHIucmVwbGFjZSgvOyskLywgXCJcIil9XFxuYDsgLy8gUmVtb3ZlIHRyYWlsaW5nIHNlbWljb2xvbiBmcm9tIHRoZSBoZWFkZXJcblxuICAgICAgICAvLyBBZGQgZWFjaCByb3cgb2YgZmFpbGVkIGNvbHVtbnMgZGF0YVxuICAgICAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiBmYWlsZWRDb2x1bW5zKSB7XG4gICAgICAgICAgICAvLyBVc2UgT2JqZWN0LnZhbHVlcyB0byBnZXQgdGhlIHZhbHVlcyBvZiBlYWNoIGNvbHVtblxuICAgICAgICAgICAgY29uc3Qgcm93ID0gT2JqZWN0LnZhbHVlcyhjb2x1bW4pOyAvLyBObyBuZWVkIHRvIGNoZWNrIGZvciB1bmRlZmluZWQvbnVsbFxuXG4gICAgICAgICAgICAvLyBKb2luIHJvdyB2YWx1ZXMgYW5kIHJlbW92ZSB0aGUgdHJhaWxpbmcgc2VtaWNvbG9uIGlmIG5vdCBuZWVkZWRcbiAgICAgICAgICAgIGNvbnN0IHJvd1N0ciA9IHJvdy5qb2luKFwiO1wiKTtcbiAgICAgICAgICAgIGVycm9yRGF0YSArPSBgJHtyb3dTdHIucmVwbGFjZSgvOyskLywgXCJcIil9XFxuYDtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENyZWF0ZSBhbmQgZG93bmxvYWQgdGhlIGZpbGVcbiAgICAgICAgY29uc3QgZmlsZSA9IG5ldyBCbG9iKFtlcnJvckRhdGFdLCB7IHR5cGU6IFwidGV4dC9jc3Y7Y2hhcnNldD11dGYtOFwiIH0pO1xuICAgICAgICBzYXZlQXMoZmlsZSwgYGVycm9yLWxvZy0ke25ldyBEYXRlKCkudG9JU09TdHJpbmcoKX0uY3N2YCk7XG4gICAgfTtcblxuICAgIGNvbnN0IHNhdmVCbGFja2xpc3RlZENvbnRhY3RzRmlsZSA9ICgpID0+IHtcbiAgICAgICAgY29uc3QgYmxhY2tsaXN0ZWRDb250YWN0c0NvbHVtbnMgPSBpbXBvcnRJbmZvcm1hdGlvbj8uYmxhY2tsaXN0ZWRDb2x1bW5zO1xuICAgICAgICBpZiAoIWJsYWNrbGlzdGVkQ29udGFjdHNDb2x1bW5zIHx8IGJsYWNrbGlzdGVkQ29udGFjdHNDb2x1bW5zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKGludGwuZm9ybWF0TWVzc2FnZSh7IGlkOiBcImV4cG9ydFwiLCBkZWZhdWx0TWVzc2FnZTogXCJObyBmYWlsZWQgY29sdW1ucyB0byBzYXZlXCIgfSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGJsYWNrbGlzdGVkQ29udGFjdHNEYXRhID0gXCJcIjtcblxuICAgICAgICAvLyBBZGQgaGVhZGVycyB0byB0aGUgZmlsZSB3aXRob3V0IHRyYWlsaW5nIHNlbWljb2xvblxuICAgICAgICBjb25zdCBoZWFkZXJzID0gT2JqZWN0LmtleXMoYmxhY2tsaXN0ZWRDb250YWN0c0NvbHVtbnNbMF0pO1xuICAgICAgICBjb25zdCBoZWFkZXJTdHIgPSBoZWFkZXJzLmpvaW4oXCI7XCIpO1xuICAgICAgICBibGFja2xpc3RlZENvbnRhY3RzRGF0YSA9IGAke2hlYWRlclN0ci5yZXBsYWNlKC87KyQvLCBcIlwiKX1cXG5gOyAvLyBSZW1vdmUgdHJhaWxpbmcgc2VtaWNvbG9uIGZyb20gdGhlIGhlYWRlclxuXG4gICAgICAgIC8vIEFkZCBlYWNoIHJvdyBvZiBmYWlsZWQgY29sdW1ucyBkYXRhXG4gICAgICAgIGZvciAoY29uc3QgY29sdW1uIG9mIGJsYWNrbGlzdGVkQ29udGFjdHNDb2x1bW5zKSB7XG4gICAgICAgICAgICAvLyBVc2UgT2JqZWN0LnZhbHVlcyB0byBnZXQgdGhlIHZhbHVlcyBvZiBlYWNoIGNvbHVtblxuICAgICAgICAgICAgY29uc3Qgcm93ID0gT2JqZWN0LnZhbHVlcyhjb2x1bW4pOyAvLyBObyBuZWVkIHRvIGNoZWNrIGZvciB1bmRlZmluZWQvbnVsbFxuXG4gICAgICAgICAgICAvLyBKb2luIHJvdyB2YWx1ZXMgYW5kIHJlbW92ZSB0aGUgdHJhaWxpbmcgc2VtaWNvbG9uIGlmIG5vdCBuZWVkZWRcbiAgICAgICAgICAgIGNvbnN0IHJvd1N0ciA9IHJvdy5qb2luKFwiO1wiKTtcbiAgICAgICAgICAgIGJsYWNrbGlzdGVkQ29udGFjdHNEYXRhICs9IGAke3Jvd1N0ci5yZXBsYWNlKC87KyQvLCBcIlwiKX1cXG5gO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQ3JlYXRlIGFuZCBkb3dubG9hZCB0aGUgZmlsZVxuICAgICAgICBjb25zdCBmaWxlID0gbmV3IEJsb2IoW2JsYWNrbGlzdGVkQ29udGFjdHNEYXRhXSwgeyB0eXBlOiBcInRleHQvY3N2O2NoYXJzZXQ9dXRmLThcIiB9KTtcbiAgICAgICAgc2F2ZUFzKGZpbGUsIGBibGFja2xpc3RlZC1jb250YWN0LWxvZy0ke25ldyBEYXRlKCkudG9JU09TdHJpbmcoKX0uY3N2YCk7XG4gICAgfTtcblxuICAgIGNvbnN0IHsgZ2V0SW5wdXRQcm9wcyB9ID0gdXNlRHJvcHpvbmUoe1xuICAgICAgICBhY2NlcHQ6IHsgXCJ0ZXh0L2NzdlwiOiBbXSB9LFxuICAgICAgICBtdWx0aXBsZTogZmFsc2UsXG4gICAgICAgIG9uRHJvcDogYXN5bmMgKGFjY2VwdGVkRmlsZXM6IEZpbGVbXSkgPT4ge1xuICAgICAgICAgICAgc2V0SW1wb3J0aW5nQ3N2KHRydWUpO1xuXG4gICAgICAgICAgICB0cnkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGZpbGUgPSBhY2NlcHRlZEZpbGVzWzBdO1xuICAgICAgICAgICAgICAgIGNvbnN0IGRhdGEgPSBhd2FpdCB1cGxvYWQoZmlsZSwgc2NvcGUsIHRhcmdldEdyb3VwSWQgPyBbdGFyZ2V0R3JvdXBJZF0gOiBbXSk7XG4gICAgICAgICAgICAgICAgYXBvbGxvQ2xpZW50LnJlZmV0Y2hRdWVyaWVzKHsgaW5jbHVkZTogcmVmZXRjaFF1ZXJpZXMgfSk7XG5cbiAgICAgICAgICAgICAgICBpZiAoZGF0YSkge1xuICAgICAgICAgICAgICAgICAgICBzZXRJbXBvcnRpbmdDc3YoZmFsc2UpO1xuXG4gICAgICAgICAgICAgICAgICAgIGlmIChkYXRhLmVycm9yTWVzc2FnZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JEaWFsb2c/LnNob3dFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGl0bGU6IDxGb3JtYXR0ZWRNZXNzYWdlIHsuLi5tZXNzYWdlcy5lcnJvcn0gLz4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdXNlck1lc3NhZ2U6IGRhdGEuZXJyb3JNZXNzYWdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yOiBkYXRhLmVycm9yTWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgc2V0SW1wb3J0SW5mb3JtYXRpb24oZGF0YSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoSlNPTi5zdHJpbmdpZnkoZGF0YSkpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICBzZXRJbXBvcnRpbmdDc3YoZmFsc2UpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgdXNlck1lc3NhZ2UgPSAoXG4gICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICBpZD1cImNvbWV0QnJldm9Nb2R1bGUudXNlQ29udGFjdEltcG9ydC5lcnJvci5kZWZhdWx0TWVzc2FnZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cIkFuIGVycm9yIG9jY3VyZWQgZHVyaW5nIHRoZSBpbXBvcnQuIFBsZWFzZSB0cnkgYWdhaW4gaW4gYSB3aGlsZSBvciBjb250YWN0IHlvdXIgYWRtaW5pc3RyYXRvciBpZiB0aGUgZXJyb3IgcGVyc2lzdHMuXCJcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICApO1xuXG4gICAgICAgICAgICAgICAgZXJyb3JEaWFsb2c/LnNob3dFcnJvcih7XG4gICAgICAgICAgICAgICAgICAgIHRpdGxlOiA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMuZXJyb3J9IC8+LFxuICAgICAgICAgICAgICAgICAgICB1c2VyTWVzc2FnZSxcbiAgICAgICAgICAgICAgICAgICAgZXJyb3I6IFN0cmluZyhlKSxcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSxcbiAgICB9KTtcblxuICAgIHJldHVybiAoXG4gICAgICAgIDw+XG4gICAgICAgICAgICA8aW5wdXQgdHlwZT1cImZpbGVcIiBoaWRkZW4gey4uLmdldElucHV0UHJvcHMoKX0gcmVmPXtmaWxlSW5wdXRSZWZ9IC8+XG4gICAgICAgICAgICA8RGlhbG9nIG9wZW49e2RpYWxvZ09wZW59PlxuICAgICAgICAgICAgICAgIDxEaWFsb2dUaXRsZT5cbiAgICAgICAgICAgICAgICAgICAge2ltcG9ydGluZ0NzdiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0QnJldm9Nb2R1bGUudXNlQ29udGFjdEltcG9ydC5pbXBvcnRpbmcudGl0bGVcIiBkZWZhdWx0TWVzc2FnZT1cIkltcG9ydGluZyBjb250YWN0cyBmcm9tIENTVi4uLlwiIC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgICAgIHtpbXBvcnRJbmZvcm1hdGlvbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSBpZD1cImNvbWV0QnJldm9Nb2R1bGUudXNlQ29udGFjdEltcG9ydC5pbXBvcnRTdWNjZXNzZnVsLnRpdGxlXCIgZGVmYXVsdE1lc3NhZ2U9XCJJbXBvcnQgc3VjY2Vzc2Z1bFwiIC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9EaWFsb2dUaXRsZT5cbiAgICAgICAgICAgICAgICA8RGlhbG9nQ29udGVudD5cbiAgICAgICAgICAgICAgICAgICAge2ltcG9ydGluZ0NzdiAmJiA8TG9hZGluZyAvPn1cbiAgICAgICAgICAgICAgICAgICAge2ltcG9ydEluZm9ybWF0aW9uICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAge2ltcG9ydEluZm9ybWF0aW9uLmNyZWF0ZWQgPiAwICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEZvcm1hdHRlZE1lc3NhZ2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmltcG9ydFN1Y2Nlc3NmdWwuY29udGFjdHNJbXBvcnRlZFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cInthbW91bnR9IGNvbnRhY3QocykgaGF2ZSBiZWVuIGNyZWF0ZWQgc3VjY2Vzc2Z1bGx5LlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9e3sgYW1vdW50OiBpbXBvcnRJbmZvcm1hdGlvbi5jcmVhdGVkIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1wb3J0SW5mb3JtYXRpb24udXBkYXRlZCA+IDAgJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ9XCJjb21ldEJyZXZvTW9kdWxlLnVzZUNvbnRhY3RJbXBvcnQuaW1wb3J0U3VjY2Vzc2Z1bC5jb250YWN0c1VwZGF0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJ7YW1vdW50fSBjb250YWN0KHMpIGhhdmUgYmVlbiB1cGRhdGVkLlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZXM9e3sgYW1vdW50OiBpbXBvcnRJbmZvcm1hdGlvbi51cGRhdGVkIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHtpbXBvcnRJbmZvcm1hdGlvbi5mYWlsZWQgPiAwICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtdD17Mn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWxlcnQgc2V2ZXJpdHk9XCJlcnJvclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmVycm9yLmNvbnRhY3RzQ291bGROb3RCZUltcG9ydGVkXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJ7YW1vdW50fSBjb250YWN0KHMpIGNvdWxkIG5vdCBiZSBpbXBvcnRlZC4gPGxpbms+RG93bmxvYWQgdGhpcyBmaWxlPC9saW5rPiB0byBnZXQgdGhlIGZhaWxpbmcgcm93KHMpLlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiBpbXBvcnRJbmZvcm1hdGlvbi5mYWlsZWQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5rOiAoY2h1bmtzOiBSZWFjdE5vZGUpID0+IDxDc3ZEb3dubG9hZExpbmsgb25DbGljaz17c2F2ZUVycm9yRmlsZX0+e2NodW5rc308L0NzdkRvd25sb2FkTGluaz4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQWxlcnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvQm94PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICl9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7aW1wb3J0SW5mb3JtYXRpb24uYmxhY2tsaXN0ZWQgPiAwICYmIChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEJveCBtdD17Mn0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8QWxlcnQgc2V2ZXJpdHk9XCJlcnJvclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmVycm9yLmNvbnRhY3RzQXJlQmxhY2tsaXN0ZWRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZWZhdWx0TWVzc2FnZT1cInthbW91bnR9IGNvbnRhY3RzIGNvdWxkIG5vdCBiZSBpbXBvcnRlZCBhcyB0aGV5IGFyZSBibGFja2xpc3RlZC4gIDxsaW5rPkRvd25sb2FkIHRoaXMgZmlsZTwvbGluaz4gdG8gZ2V0IHRoZSBibGFja2xpc3RlZCBjb250YWN0KHMpLlwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlcz17e1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYW1vdW50OiBpbXBvcnRJbmZvcm1hdGlvbi5ibGFja2xpc3RlZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbms6IChjaHVua3M6IFJlYWN0Tm9kZSkgPT4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxDc3ZEb3dubG9hZExpbmsgb25DbGljaz17c2F2ZUJsYWNrbGlzdGVkQ29udGFjdHNGaWxlfT57Y2h1bmtzfTwvQ3N2RG93bmxvYWRMaW5rPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9BbGVydD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9Cb3g+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKX1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsoaW1wb3J0SW5mb3JtYXRpb24uY3JlYXRlZCA+IDAgfHwgaW1wb3J0SW5mb3JtYXRpb24udXBkYXRlZCA+IDApICYmIHNlbmREb3VibGVPcHRJbiAmJiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxCb3ggbXQ9ezJ9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPEFsZXJ0IHNldmVyaXR5PVwid2FybmluZ1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxGb3JtYXR0ZWRNZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkPVwiY29tZXRCcmV2b01vZHVsZS51c2VDb250YWN0SW1wb3J0LmltcG9ydFN1Y2Nlc3NmdWwuZG9pTm90aWNlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVmYXVsdE1lc3NhZ2U9XCJDb250YWN0cyB3aG8gaGF2ZSBub3QgeWV0IGNvbmZpcm1lZCB0aGVpciBzdWJzY3JpcHRpb24gd2lsbCByZWNlaXZlIGEgZG91YmxlIG9wdC1pbiBlbWFpbCB0byBjb21wbGV0ZSB0aGUgcHJvY2Vzcy4gVGhlc2UgY29udGFjdHMgd2lsbCBub3QgYXBwZWFyIGluIHRoaXMgbGlzdCB1bnRpbCB0aGV5IGNvbmZpcm0gdGhlaXIgc3Vic2NyaXB0aW9uLiBPbmNlIGNvbmZpcm1lZCwgdGhleSB3aWxsIGF1dG9tYXRpY2FsbHkgYmUgYWRkZWQgdG8gdGhlIGFwcHJvcHJpYXRlIHRhcmdldCBncm91cChzKS5cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0FsZXJ0PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L0JveD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApfVxuICAgICAgICAgICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgICAgICAgICl9XG4gICAgICAgICAgICAgICAgPC9EaWFsb2dDb250ZW50PlxuICAgICAgICAgICAgICAgIDxEaWFsb2dBY3Rpb25zPlxuICAgICAgICAgICAgICAgICAgICB7aW1wb3J0SW5mb3JtYXRpb24gJiYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgPEJ1dHRvbiBvbkNsaWNrPXsoKSA9PiBzZXRJbXBvcnRJbmZvcm1hdGlvbihudWxsKX0gdmFyaWFudD1cInByaW1hcnlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8Rm9ybWF0dGVkTWVzc2FnZSB7Li4ubWVzc2FnZXMub2t9IC8+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgKX1cbiAgICAgICAgICAgICAgICA8L0RpYWxvZ0FjdGlvbnM+XG4gICAgICAgICAgICA8L0RpYWxvZz5cbiAgICAgICAgPC8+XG4gICAgKTtcbn07XG5cbmNvbnN0IENzdkRvd25sb2FkTGluayA9IHN0eWxlZChcInNwYW5cIilgXG4gICAgY29sb3I6ICR7KHsgdGhlbWUgfSkgPT4gdGhlbWUucGFsZXR0ZS5pbmZvLm1haW59O1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbmA7XG4iXX0= */"));
@@ -1,8 +1,8 @@
1
- import { ContentScopeInterface } from "@comet/cms-admin";
2
- import * as React from "react";
1
+ import { type ContentScope } from "@comet/cms-admin";
2
+ import { type PropsWithChildren } from "react";
3
3
  interface ConfigCheckProps {
4
- scope: ContentScopeInterface;
4
+ scope: ContentScope;
5
5
  }
6
- export declare function ConfigVerification({ scope, children }: React.PropsWithChildren<ConfigCheckProps>): JSX.Element;
6
+ export declare function ConfigVerification({ scope, children }: PropsWithChildren<ConfigCheckProps>): JSX.Element;
7
7
  export {};
8
8
  //# sourceMappingURL=ConfigVerification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ConfigVerification.d.ts","sourceRoot":"","sources":["../../src/configVerification/ConfigVerification.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAM/B,UAAU,gBAAgB;IACtB,KAAK,EAAE,qBAAqB,CAAC;CAChC;AAED,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,GAAG,CAAC,OAAO,CA0B9G"}
1
+ {"version":3,"file":"ConfigVerification.d.ts","sourceRoot":"","sources":["../../src/configVerification/ConfigVerification.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAM/C,UAAU,gBAAgB;IACtB,KAAK,EAAE,YAAY,CAAC;CACvB;AAED,wBAAgB,kBAAkB,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,iBAAiB,CAAC,gBAAgB,CAAC,GAAG,GAAG,CAAC,OAAO,CA0BxG"}
@@ -1,18 +1,14 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
6
  exports.ConfigVerification = ConfigVerification;
8
7
  var _client = require("@apollo/client");
9
8
  var _admin = require("@comet/admin");
10
- var React = _interopRequireWildcard(require("react"));
11
9
  var _reactIntl = require("react-intl");
12
10
  var _ConfigVerification = require("./ConfigVerification.gql");
13
11
  var _jsxRuntime = require("react/jsx-runtime");
14
- function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
15
- function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
16
12
  function ConfigVerification(_ref) {
17
13
  var _data$brevoConfig;
18
14
  var scope = _ref.scope,
@@ -1,8 +1,7 @@
1
- import { BlockInterface } from "@comet/blocks-admin";
2
- import { ContentScopeInterface } from "@comet/cms-admin";
3
- import * as React from "react";
1
+ import { type BlockInterface, type ContentScope } from "@comet/cms-admin";
2
+ import { type ReactElement } from "react";
4
3
  export declare function EmailCampaignsGrid({ scope, EmailCampaignContentBlock, }: {
5
- scope: ContentScopeInterface;
4
+ scope: ContentScope;
6
5
  EmailCampaignContentBlock: BlockInterface;
7
- }): React.ReactElement;
6
+ }): ReactElement;
8
7
  //# sourceMappingURL=EmailCampaignsGrid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"EmailCampaignsGrid.d.ts","sourceRoot":"","sources":["../../src/emailCampaigns/EmailCampaignsGrid.tsx"],"names":[],"mappings":"AAmBA,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAIzD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqF/B,wBAAgB,kBAAkB,CAAC,EAC/B,KAAK,EACL,yBAAyB,GAC5B,EAAE;IACC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,yBAAyB,EAAE,cAAc,CAAC;CAC7C,GAAG,KAAK,CAAC,YAAY,CAuJrB"}
1
+ {"version":3,"file":"EmailCampaignsGrid.d.ts","sourceRoot":"","sources":["../../src/emailCampaigns/EmailCampaignsGrid.tsx"],"names":[],"mappings":"AAoBA,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAI1E,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,OAAO,CAAC;AAqF1C,wBAAgB,kBAAkB,CAAC,EAC/B,KAAK,EACL,yBAAyB,GAC5B,EAAE;IACC,KAAK,EAAE,YAAY,CAAC;IACpB,yBAAyB,EAAE,cAAc,CAAC;CAC7C,GAAG,YAAY,CAuJf"}
@@ -12,7 +12,7 @@ export declare const namedOperations: {
12
12
  };
13
13
  };
14
14
  export type GQLEmailCampaignsListFragment = {
15
- __typename?: 'EmailCampaign';
15
+ __typename?: 'BrevoEmailCampaign';
16
16
  id: string;
17
17
  updatedAt: any;
18
18
  createdAt: any;
@@ -22,27 +22,27 @@ export type GQLEmailCampaignsListFragment = {
22
22
  scheduledAt: any | null;
23
23
  brevoId: number | null;
24
24
  content: any;
25
- targetGroups: Array<{
26
- __typename?: 'TargetGroup';
25
+ brevoTargetGroups: Array<{
26
+ __typename?: 'BrevoTargetGroup';
27
27
  id: string;
28
28
  title: string;
29
29
  }>;
30
30
  };
31
31
  export type GQLEmailCampaignsGridQueryVariables = Types.Exact<{
32
- offset?: Types.InputMaybe<Types.Scalars['Int']>;
33
- limit?: Types.InputMaybe<Types.Scalars['Int']>;
32
+ offset?: Types.InputMaybe<Types.Scalars['Int']['input']>;
33
+ limit?: Types.InputMaybe<Types.Scalars['Int']['input']>;
34
34
  sort?: Types.InputMaybe<Array<Types.GQLEmailCampaignSort> | Types.GQLEmailCampaignSort>;
35
- search?: Types.InputMaybe<Types.Scalars['String']>;
35
+ search?: Types.InputMaybe<Types.Scalars['String']['input']>;
36
36
  filter?: Types.InputMaybe<Types.GQLEmailCampaignFilter>;
37
37
  scope: Types.GQLEmailCampaignContentScopeInput;
38
38
  }>;
39
39
  export type GQLEmailCampaignsGridQuery = {
40
40
  __typename?: 'Query';
41
- emailCampaigns: {
41
+ brevoEmailCampaigns: {
42
42
  __typename?: 'PaginatedEmailCampaigns';
43
43
  totalCount: number;
44
44
  nodes: Array<{
45
- __typename?: 'EmailCampaign';
45
+ __typename?: 'BrevoEmailCampaign';
46
46
  id: string;
47
47
  updatedAt: any;
48
48
  createdAt: any;
@@ -52,8 +52,8 @@ export type GQLEmailCampaignsGridQuery = {
52
52
  scheduledAt: any | null;
53
53
  brevoId: number | null;
54
54
  content: any;
55
- targetGroups: Array<{
56
- __typename?: 'TargetGroup';
55
+ brevoTargetGroups: Array<{
56
+ __typename?: 'BrevoTargetGroup';
57
57
  id: string;
58
58
  title: string;
59
59
  }>;
@@ -61,11 +61,11 @@ export type GQLEmailCampaignsGridQuery = {
61
61
  };
62
62
  };
63
63
  export type GQLDeleteEmailCampaignMutationVariables = Types.Exact<{
64
- id: Types.Scalars['ID'];
64
+ id: Types.Scalars['ID']['input'];
65
65
  }>;
66
66
  export type GQLDeleteEmailCampaignMutation = {
67
67
  __typename?: 'Mutation';
68
- deleteEmailCampaign: boolean;
68
+ deleteBrevoEmailCampaign: boolean;
69
69
  };
70
70
  export type GQLCreateEmailCampaignMutationVariables = Types.Exact<{
71
71
  scope: Types.GQLEmailCampaignContentScopeInput;
@@ -73,8 +73,8 @@ export type GQLCreateEmailCampaignMutationVariables = Types.Exact<{
73
73
  }>;
74
74
  export type GQLCreateEmailCampaignMutation = {
75
75
  __typename?: 'Mutation';
76
- createEmailCampaign: {
77
- __typename?: 'EmailCampaign';
76
+ createBrevoEmailCampaign: {
77
+ __typename?: 'BrevoEmailCampaign';
78
78
  id: string;
79
79
  };
80
80
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EmailCampaignsGrid.generated.d.ts","sourceRoot":"","sources":["../../src/emailCampaigns/EmailCampaignsGrid.generated.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EmailCampaignsGrid.generated.d.ts","sourceRoot":"","sources":["../../src/emailCampaigns/EmailCampaignsGrid.generated.ts"],"names":[],"mappings":"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"}